aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot
Commit message (Collapse)AuthorAgeFilesLines
* uboot-mediatek: additions from MTK SDKDaniel Golle2022-08-2845-276/+10562
| | | | | | | | | | | | | | | * updated SNAND/SNFI driver brings support for MT7981 * add support for MediaTek NAND Memory bad Block Management (NMBM) (not used for any boards atm, but could be useful in future) * wire up NMBM support for MT7622, MT7629, MT7981 and MT7986 * replace some local patches with updated version from SDK * bring some legacy precompiler symbols which haven't been converted into Kconfig symbols in U-Boot 2022.07, remove when bumbping to U-Boot 2022.10: 100-28-include-configs-mt7986-h-from-SDK.patch Source: https://github.com/mtk-openwrt/u-boot Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: add support for MT798x platformsDaniel Golle2022-08-2836-6/+12173
| | | | | | Import pending patches to support the upcoming Filogic platforms. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: add support for compressed BL3/FIP imageDaniel Golle2022-08-282-13/+7
| | | | | | | MediaTek's ARM Trusted Firmware v2.7+ allows the images inside a FIP structure to be compressed. Make use of that for boards with NOR flash. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: fix factory reset on UBIDaniel Golle2022-08-282-2/+2
| | | | | | | Truncating a UBI volume using `ubi write 0x0 volname 0x0` results in segfault on newer U-Boot. Write 1MB of 0s instead. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* arm-trusted-firmware-mediatek: update to v2.7+ from MediaTekDaniel Golle2022-08-284-50/+192
| | | | | | | | | | | | | | | | | | | | The updated sources bring support for the MT798x Filogic SoC family. Add builds for MT7986 with most supported storage types, each for DDR3 and DDR4 configurations. A better solution for skipping bad blocks on SPI-NAND connected via the SNFI interface has been implemented upstream, so drop local patch. Add pending patches [1] and [2] to fix boot on existing MT7622 boards. Tested on BananaPi BPi-R64 (SDMMC, eMMC, SPI-NAND), Linksys E8450 and Ubiquiti UniFi 6 LR as well as upcoming Bananapi BPi-R3 board for which support will be added in future patches. [1]: https://github.com/mtk-openwrt/arm-trusted-firmware/pulls/#3 [2]: https://github.com/mtk-openwrt/arm-trusted-firmware/pulls/#4 Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* trusted-firmware-a.mk: pass DTC path similar to u-boot.mkDaniel Golle2022-08-284-0/+4
| | | | | | | | | Instead of relying on dtc being provided by the build host use the dtc from $(LINUX_DIR) similar to how it's done also in u-boot.mk. For this to work kernel.mk now needs to be included before trusted-firmware-a.mk, add this include to all affected packages. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-envtools: mt7622: use 4k sectors for UniFi 6 LR (ubootmod)Daniel Golle2022-08-281-1/+1
| | | | | | | | Use 4k sectors when accessing the U-Boot environment on the 64MiB SPI-NOR flash chip found in the UniFi 6 LR. The speeds up environment write access as only 4kB instead of 64kB have to be written. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: fix Ubiquiti UniFi 6 LR U-Boot modDaniel Golle2022-08-281-20/+8
| | | | | | | Image names as well as the calculation of the padded image size did not work as intended. Fix that. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* realtek: d-link: add support for dgs-1210-10mpDaniel Groth2022-08-201-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | General hardware info: ------------------------------------------------------------------------------- D-Link DGS-1210-10MP is a switch with 8 ethernet ports and 2 SFP ports, all ports Gbit capable. It is based on a RTL8380 SoC @ 500MHz, DRAM 128MB and 32MB flash. All ethernet ports are 802.3af/at PoE capable with a total PoE power budget of 130W. File info: ------------------------------------------------------------------------------- The dgs-1210-10mp is very similar to dgs-1210-10p so I used that as a start. rtl838x.mk: - Removed lua-rs232 package since it was a leftover from the old rtl83xx-poe package. - Updated the soc to 8380. - Specified device variant: F. - Installed the new realtek-poe package. rtl8380_d-link_dgs-1210-10mp.dts: - Moved dgs-1210 family common parts and non PoE related ports on rtl8231 to the new device tree dtsi files. Serial connection: ------------------------------------------------------------------------------- The UART for the SoC (115200 8N1) is available close to the front panel next to the LED/key card connector via unpopulated standard 0.1" pin header marked j4. Pin1 is marked with arrow and square. Pin 1: Vcc 3,3V Pin 2: Tx Pin 3: Rx Pin 4: Gnd Installation with TFTP from u-boot ------------------------------------------------------------------------------- I originally used the install procedure: 'OpenWrt installation using the TFTP method and serial console access' found in the device wiki for the dgs-1210-16. < https://openwrt.org/toh/d-link/dgs-1210-16_g1#openwrt_installation_using _the_tftp_method_and_serial_console_access > About the realtek-poe package ------------------------------------------------------------------------------- The realtek-poe package is installed but there isn't any automatic PoE config setting at this time so for now the PoE config must be edited manually. Original OEM hardware/firmware data at first installation ------------------------------------------------------------------------------- It has been installed, developed, and tested on a device with these OEM hardware and firmware versions. - U-boot: 2011.12.(2.1.5.67086)-Candidate1 (Jun 22 2020 - 15:03:58) - Boot version: 1.01.001 - Firmware version: 6.20.007 - Hardware version: F1 Things to be done when support are developed ------------------------------------------------------------------------------- - realtek-poe has been included in OpenWrt but the automatic config handling has not been solved yet so in the future there will probably be some minor updates for this device to handle the poe config. - LED link_act and poe are per function supposed to be connected to the PoE system. But some software development is also needed to make this LED work and shift the LED array between act and poe indication and to shift the mode lights with mode key. - LED poe_max should probably be used as straight forward error output from the realtek-poe package error handling. But no code has been written for this. - SFP is currently not hot pluggable. Development is under progress to get working I2C communication with SFP and have them hot pluggable. When any device in the dgs-1210 family gets this working, I expect it should be possible to implement the same solution in this device. Signed-off-by: Daniel Groth <flygarn12@gmail.com> [Capitalisation of abbreviations, DEVICE_VARIANT and update filenames, device compatibles on single line] Signed-off-by: Sander Vanheule <sander@svanheule.net>
* ramips: add support for Beeline SmartBox TURBOMikhail Zhilkin2022-08-131-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Beeline SmartBox TURBO is a wireless WiFi 5 router manufactured by Sercomm company. Device specification -------------------- SoC Type: MediaTek MT7621AT RAM: 256 MiB Flash: 256 MiB, Micron MT29F2G08ABAGA3W Wireless 2.4 GHz (MT7603EN): b/g/n, 2x2 Wireless 5 GHz (MT7615E): a/n/ac, 4x4 Ethernet: 5xGbE (WAN, LAN1, LAN2, LAN3, LAN4) USB ports: 1xUSB3.0 Button: 2 buttons (Reset & WPS) LEDs: 1 RGB LED Power: 12 VDC, 1.5 A Connector type: barrel Bootloader: U-Boot Installation ----------------- 1. Login to the router web interface (admin:admin) 2. Navigate to Settings -> WAN -> Add static IP interface (e.g. 10.0.0.1/255.255.255.0) 3. Navigate to Settings -> Remote cotrol -> Add SSH, port 22, 10.0.0.0/255.255.255.0 and interface created before 4. Change IP of your client to 10.0.0.2/255.255.255.0 and connect the ethernet cable to the WAN port of the router 5. Connect to the router using SSH shell (SuperUser:SNxxxxxxxxxx, where SNxxxxxxxxxx is the serial number from the backplate label) 6. Run in SSH shell: sh 7. Make a mtd backup (optional, see related section) 8. Change bootflag to Sercomm1 and reboot: printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3 reboot 9. Login to the router web interface (admin:admin) 10. Remove dots from the OpenWrt factory image filename 11. Update firmware via web using OpenWrt factory image Revert to stock --------------- 1. Change bootflag to Sercomm1 in OpenWrt CLI and then reboot: printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3 2. Optional: Update with any stock (Beeline) firmware if you want to overwrite OpenWrt in Slot 0 completely. mtd backup ---------- 1. Set up a tftp server (e.g. tftpd64 for windows) 2. Connect to a router using SSH shell and run the following commands: cd /tmp for i in 0 1 2 3 4 5 6 7 8 9 10; do nanddump -f mtd$i /dev/mtd$i; \ tftp -l mtd$i -p 10.0.0.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done tftp -l mtd.md5 -p 10.0.0.2 MAC Addresses ------------- +-----+-----------+---------+ | use | address | example | +-----+-----------+---------+ | LAN | label | *:54 | | WAN | label + 1 | *:55 | | 2g | label + 4 | *:58 | | 5g | label + 5 | *:59 | +-----+-----------+---------+ The label MAC address was found in Factory 0x21000 Co-developed-by: Maximilian Weinmann <x1@disroot.org> Signed-off-by: Maximilian Weinmann <x1@disroot.org> Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* realtek: add support for TP-Link SG2008PAlexandru Gagniuc2022-08-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for the TP-Link SG2008P switch. This is an RTL8380 based switch with 802.3af one the first four ports. Specifications: --------------- * SoC: Realtek RTL8380M * Flash: 32 MiB SPI flash (Vendor varies) * RAM: 256 MiB (Vendor varies) * Ethernet: 8x 10/100/1000 Mbps with PoE on 4 ports * Buttons: 1x "Reset" button on front panel * Power: 53.5V DC barrel jack * UART: 1x serial header, unpopulated * PoE: 1x TI TPS23861 I2C PoE controller Works: ------ - (8) RJ-45 ethernet ports - Switch functions - System LED Not yet enabled: ---------------- - Power-over-Ethernet (driver works, but doesn't enable "auto" mode) - PoE, Link/Act, PoE max and System LEDs Install via web interface: ------------------------- Not supported at this time. Install via serial console/tftp: -------------------------------- The footprints R27 (0201) and R28 (0402) are not populated. To enable serial console, 50 ohm resistors should be soldered -- any value from 0 ohm to 50 ohm will work. R27 can be replaced by a solder bridge. The u-boot firmware drops to a TP-Link specific "BOOTUTIL" shell at 38400 baud. There is no known way to exit out of this shell, and no way to do anything useful. Ideally, one would trick the bootloader into flashing the sysupgrade image first. However, if the image exceeds 6MiB in size, it will not work. The sysupgrade image can also be flashed. To install OpenWRT: Prepare a tftp server with: 1. server address: 192.168.0.146 2. the image as: "uImage.img" Power on device, and stop boot by pressing any key. Once the shell is active: 1. Ground out the CLK (pin 16) of the ROM (U7) 2. Select option "3. Start" 3. Bootloader notes that "The kernel has been damaged!" 4. Release CLK as sson as bootloader thinks image is corrupted. 5. Bootloader enters automatic recovery -- details printed on console 6. Watch as the bootloader flashes and boots OpenWRT. Blind install via tftp: ----------------------- This method works when it's not feasible to install a serial header. Prepare a tftp server with: 1. server address: 192.168.0.146 2. the image as: "uImage.img" 3. Watch network traffic (tcpdump or wireshark works) 4. Power on the device. 5. Wait 1-2 seconds then ground out the CLK (pin 16) of the ROM (U7) 6. When 192.168.0.30 makes tftp requests, release pin 16 7. Wait 2-3 minutes for device to auto-flash and boot OpenWRT Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
* arm-trusted-firmware-mediatek: skip bad blocks on SPI-NAND (SNFI)Daniel Golle2022-08-121-0/+40
| | | | | | | | | Add patch to skip bad blocks when reading from SPI-NAND. This is needed in case erase block(s) early in the flash inside the FIP area are bad and hence need to be skipped in order to be able to boot on such damaged chips. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: backport pinctrl fix to avoid error messageDaniel Golle2022-08-114-8/+49
| | | | | | | Import a3ba6adb70 arm: dts: mt7622: remove default pinctrl of uart0 and apply also to locally added boards. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: mt7621: use silent stage1 by defaultDaniel Golle2022-08-111-1/+15
| | | | | | | Use faster and silent MT7621 stage1 blob by default unless CONFIG_DEBUG is selected. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ramips: add support for ZyXEL LTE3301-PlusAndré Valentin2022-08-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ZyXEL LTE3301-PLUS is an 4G indoor CPE with 2 external LTE antennas. Specifications: - SoC: MediaTek MT7621AT - RAM: 256 MB - Flash: 128 MB MB NAND (MX30LF1G18AC) - WiFi: MediaTek MT7615E - Switch: 4 LAN ports (Gigabit) - LTE: Quectel EG506 connected by USB3 to SoC - SIM: 1 micro-SIM slot - USB: USB3 port - Buttons: Reset, WPS - LEDs: Multicolour power, internet, LTE, signal, Wifi, USB - Power: 12V, 1.5A The device is built as an indoor ethernet to LTE bridge or router with Wifi. UART Serial: 57600N1 Located on populated 5 pin header J5: [o] GND [ ] key - no pin [o] RX [o] TX [o] 3.3V Vcc MAC assignment: lan: 98:0d:67:ee:85:54 (base, on the device back) wlan: 98:0d:67:ee:85:55 Installation from web GUI: - Log in as "admin" on http://192.168.1.1/ - Upload OpenWrt initramfs-recovery.bin image on the Maintenance -> Firmware page - Wait for OpenWrt to boot and ssh to root@192.168.1.1 - format ubi device: ubiformat /dev/mtd6 - attach ubi device: ubiattach -m6 - create rootfs volume: ubimkvol /dev/ubi0 -n0 -N rootfs -s 1MiB - rootfs_data volume: ubimkvol /dev/ubi0 -n1 -N rootfs_data -s 1MiB - run sysupgrade with sysupgrade image For more details about flashing see commit 2449a632084b ("ramips: mt7621: Add support for ZyXEL NR7101"). Please note that this commit is needed: firmware-utils: add marcant changes for ZyXEL NBG6716 and LTE3301-PLUS Signed-off-by: André Valentin <avalentin@marcant.net>
* ath79: add support for Sophos AP15Manuel Niekamp2022-08-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Sophos AP15 seems to be very close to Sophos AP55/AP100. Based on: commit 6f1efb289837 ("ath79: add support for Sophos AP100/AP55 family") author Andrew Powers-Holmes <andrew@omnom.net> Fri, 3 Sep 2021 15:53:57 +0200 (23:53 +1000) committer Hauke Mehrtens <hauke@hauke-m.de> Sat, 16 Apr 2022 16:59:29 +0200 (16:59 +0200) Unique to AP15: - Green and yellow LED - 2T2R 2.4GHz 802.11b/g/n via SoC WMAC - No buttons - No piezo beeper - No 5.8GHz Flashing instructions: - Derived from UART method described in referenced commit, methods described there should work too. - Set up a TFTP server; IP address has to be 192.168.99.8/24 - Copy the firmware (initramfs-kernel) to your TFTP server directory renaming it to e.g. boot.bin - Open AP's enclosure and locate UART header (there is a video online) - Terminal connection parameters are 115200 8/N/1 - Connect TFTP server and AP via ethernet - Power up AP and cancel autoboot when prompted - Prompt shows 'ath> ' - Commands used to boot: ath> tftpboot 0x81000000 boot.bin ath> bootm 0x81000000 - Device should boot OpenWRT - IP address after boot is 192.168.1.1/24 - Connect to device via browser - Permanently flash using the web ui (flashing sysupgrade image) - (BTW: the AP55 images seem to work too, only LEDs are not working) Testing done: - To be honest: Currently not so much testing done. - Flashed onto two devices - Devices are booting - MAC addresses are correct - LEDs are working - Scanning for WLANs is working Big thanks to all the people working on this great project! (Sorry about my english, it is not my native language) Signed-off-by: Manuel Niekamp <m.niekamp@richter-leiterplatten.de>
* ramips: fix fw_setsysWenli Looi2022-08-051-1/+1
| | | | | | | | | This change was included in the original pull request but later omitted for some reason: https://github.com/openwrt/openwrt/pull/4936 Signed-off-by: Wenli Looi <wlooi@ucalgary.ca>
* ramips: support fw_printenv for Netgear WAX202Wenli Looi2022-08-051-1/+2
| | | | | | | | Config partition contains uboot env for the first 0x20000 bytes. The rest of the partition contains other data including the device MAC address and the password printed on the label. Signed-off-by: Wenli Looi <wlooi@ucalgary.ca>
* ramips: add support for H3C TX1800 Plus / TX1801 Plus / TX1806Shiji Yang2022-07-311-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | H3C TX180x series WiFi6 routers are customized by different carrier. While these three devices look different, they use the same motherboard inside. Another minor difference comes from the model name definition in the u-boot environment variable. Specifications: SOC: MT7621 + MT7915 ROM: 128 MiB RAM: 256 MiB LED: status *2 Button: reset *1 + wps/mesh *1 Ethernet: lan *3 + wan *1 (10/100/1000Mbps) TTL Baudrate: 115200 TFTP server IP: 192.168.124.99 MAC Address: use address(sample 1) address(sample 2) source label 88:xx:xx:98:xx:12 88:xx:xx:a2:xx:a5 u-boot-env@ethaddr lan 88:xx:xx:98:xx:13 88:xx:xx:a2:xx:a6 $label +1 wan 88:xx:xx:98:xx:12 88:xx:xx:a2:xx:a5 $label WiFi4_2G 8a:xx:xx:58:xx:14 8a:xx:xx:52:xx:a7 (Compatibility mode) WiFi5_5G 8a:xx:xx:b8:xx:14 8a:xx:xx:b2:xx:a7 (Compatibility mode) WiFi6_2G 8a:xx:xx:18:xx:14 8a:xx:xx:12:xx:a7 WiFi6_5G 8a:xx:xx:78:xx:14 8a:xx:xx:72:xx:a7 Compatibility mode is used to guarantee the connection of old devices that only support WiFi4 or WiFi5. TFTP + TTL Installation: Although a TTL connection is required for installation, we do not need to tear down it. We can find the TTL port from the cooling hole at the bottom. It is located below LAN3 and the pins are defined as follows: |LAN1|LAN2|LAN3|----|WAN| -------------------- |GND|TX|RX|VCC| 1. Set tftp server IP to 192.168.124.99 and put initramfs firmware in server's root directory, rename it to a simple name "initramfs.bin". 2. Plug in the power supply and wait for power on, connect the TTL cable and open a TTL session, enter "reboot", then enter "Y" to confirm. Finally push "0" to interruput boot while booting. 3. Execute command to install a initramfs system: # tftp 0x80010000 192.168.124.99:initramfs.bin # bootm 0x80010000 4. Backup nand flash by OpenWrt LuCI or dd instruction. We need those partitions if we want to back to stock firmwre due to official website does not provide download link. # dd if=/dev/mtd1 of=/tmp/u-boot-env.bin # dd if=/dev/mtd4 of=/tmp/firmware.bin 5. Edit u-boot env to ensure use default bootargs and first image slot: # fw_setenv bootargs # fw_setenv bootflag 0 6. Upgrade sysupgrade firmware. 7. About restore stock firmware: flash the "firmware" and "u-boot-env" partitions that we backed up in step 4. # mtd write /tmp/u-boot-env.bin u-boot-env # mtd write /tmp/firmware.bin firmware Additional Info: The H3C stock firmware has a 160-byte firmware header that appears to use a non-standard CRC32 verification algorithm. For this part of the data, the u-boot does not check it so we can just directly replace it with a placeholder. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* arm-trusted-firmware-mvebu: update cm3 gcc to 11.2Andre Heider2022-07-311-4/+4
| | | | | | https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads Signed-off-by: Andre Heider <a.heider@gmail.com>
* arm-trusted-firmware-mvebu: update to v2.7Andre Heider2022-07-317-436/+23
| | | | | | | Remove the backported patches and add another to allow building with the OpenWrt build system. Signed-off-by: Andre Heider <a.heider@gmail.com>
* arm-trusted-firmware-mvebu: bump mox-boot-builder to v2022.06.11Andre Heider2022-07-312-15/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the gold patch, since upstream doesn't hardcode it anymore. 406454d wtmi: Don't print another newline on standalone build ec97868 Bump mox-imager commit e4c4b9d wtmi: Call main from C code in startup 4c1d3ff wtmi: Move startup assmebly to C file as inline assmebly ee570ea wtmi: Indent Makefiles 18a7c0b wtmi: Use -f{function,data}-sections and --gc-sections 47ad100 wtmi: Use bfd linker instead of gold 5e34aa1 wtmi: Keep .data* and .bss* sections in linker scripts 7a4e3d2 wtmi: compressed, reload_helper: Discard .ARM* section d943726 wtmi: compressed: Keep main function in linker script d4f0fc6 wtmi: Keep main function in linker script 092148c wtmi: Fix -Warray-bounds warning 469e1b6 wtmi: Add do_div() implementation from Linux 90f46a0 Bump mox-imager commit 8bc6254 wtmi: Always use gold and link with --rosegment and --gc-sections flags 0b68a33 wtmi: Implement Marvell's OTP write commands 53d2a1c Bump mox-imager commit b4c34b4 Rename arm-trusted-firmware to trusted-firmware-a 5f79ace Sync mox-imager submodule URL a1cdd32 Sync TF-A submodule URL 58ef1af Sync u-boot submodule URL 90d28e1 wtmi: Check argument validity in Marvell's CMD_OTP_READ_1B command more 3a48cf1 Bump mox-imager commit 807a3e1 wtmi: Implement Marvell's OTP read commands 77b1232 wtmi: Enable OTP read/write mailbox commands 9724d41 wtmi: Add is_secure_boot() 03de0c1 Bump mox-imager commit 2133601 wtmi: Fix efuse_write_row_with_ecc_lock() for masked ECC rows 545a89f wtmi: Don't allow masked rows in efuse_write_row_with_ecc_lock() 94ebc98 wtmi: Don't program already programmed bits in efuse_raw_write() 2369750 wtmi: Remove inline specifier from is_row_masked() 53e2636 wtmi: Use ARRAY_SIZE() cc3e23b wtmi: Remove duplicate checks 89d24be Makefile: ignore clean target errors 9ee8b8d Bump mox-imager commit 489262b Bump mox-imager commit 79d2f32 deploy: Print board type in deploy output 78f15b0 deploy: Print board version without board type bits in deploy output e69fdfa deploy: Always determine 512 MiB RAM when deploying RIPE Atlas Probe d1f7d07 deploy: Write eMMC Boot Mode into OTP when deploying RIPE Atlas Probe d43a089 Bump mox-imager commit 49ac21d deploy: Use get_ram_size() from ddr.c 1e7705d Print DDR type and size when initializing 6f85e72 Move get_ram_size() to ddr.c edb1079 wtmi: Rename Atlas_RIPE to RIPE_Atlas e6a3aee wtmi: Inform about board type in CMD_BOARD_INFO 50aeae5 wtmi: Read only bits 53:48 of row eFuse 42 as board version b882398 wtmi: Add README.md (document OTP content) c068431 wtmi: Add ARRAY_SIZE() macro 4af2317 wtmi: Use 50 MHz as SPI clock rate 226fc5c wtmi: Add fast spi_write() function 518c914 wtmi: clock: Check for zero loops, not argument, in ndelay() / udelay() 89a21c5 wtmi: Fix comment 7b3e11a wtmi: Add clk command to print xtal and TBG clock rates 5127638 wtmi: Use the signed keyword when defining signed types fb31ed2 wtmi: Fix DDR training failure check 1b1b938 wtmi: clock: Check for zero in ndelay() / udelay() c0ee09a wtmi: Print correct DDR version in debug message edfb875 Bump mox-imager commit 85cb5e3 Bump mox-imager commit c4e9334 wtmi: debug: interpret char 127 as backspace a778fd9 Bump mox-imager commit Signed-off-by: Andre Heider <a.heider@gmail.com>
* arm-trusted-firmware-mvebu: bump mv-ddr-marvell to current versionAndre Heider2022-07-311-3/+3
| | | | | | | | | | 6ff988f mv_ddr: a3700: Use the right size for memset to not overflow 0f3e893 mv_ddr: a38x: fix BYTE_HOMOGENEOUS_SPLIT_OUT decision 4bae770 mv_ddr: a38x: fix SPLIT_OUT_MIX state decision cdefd8b mv_ddr: a38x: Fix Synchronous vs Asynchronous mode determination 8c42ad9 mv_ddr_4_training: cast uint64_t to unsigned long long Signed-off-by: Andre Heider <a.heider@gmail.com>
* arm-trusted-firmware-mvebu: bump a3700-utils to current versionAndre Heider2022-07-311-3/+3
| | | | | | | | | | | | | | | | | 1d97715 wtmi: Discard ELF symbols from firmware binary 2d2a21c wtmi: Allow access to the 43th OTP row e733e9f Fix boot from SATA build 4392eaf wtmi: Fix sending status code of cmd execution 14b3c61 Wtpdownloader: Remove out-of-dated x86-64 ELF binary WtpDownload_linux e345b95 Wtpdownloader: Fix setting tty c_cflag options 0c502d5 Wtpdownloader: Call HandlePendingMessages() after Port->WtpCmd is freed d91761a Wtpdownloader: Fix memory leaks bc11d18 Wtpdownloader: Check for number of read bytes prior touching read buffer 58db335 Wtpdownloader: Add missing check in SendContinuousForceConsoleMode() if byte was really read a4029c0 Wtpdownloader: Fix 32/64-bit host detection 3679034 Wtpdownloader: Print missing newline at the end of output Signed-off-by: Andre Heider <a.heider@gmail.com>
* uboot-mvebu: update to v2022.07Andre Heider2022-07-312-33/+2
| | | | | | | Remove one merged patch. Signed-off-by: Andre Heider <a.heider@gmail.com> Tested-by: Josef Schlehofer <pepe.schlehofer@gmail.com> [Turris Omnia]
* uboot-mediatek: reorder patchesDaniel Golle2022-07-302-0/+0
| | | | | | | Rename/reorder patches to avoid duplicate usage of 300-* prefix. No functional changes. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-bcm4908: include SoC in output filesRafał Miłecki2022-07-251-2/+4
| | | | | | | | This fixes problem of overwriting BCM4908 U-Boot and DTB files by BCM4912 ones. That bug didn't allow booting BCM4908 devices. Fixes: f4c2dab544ec2 ("uboot-bcm4908: add BCM4912 build") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* layerscape: update remaining PKG_HASH / PKG_MIRROR_HASHChristian Lamparter2022-07-221-1/+1
| | | | | | | | | The change of the PKG_VERSION caused the hash of the package to change. This is because the PKG_VERSION is present in the internal directory structure of the archive. Fixes: e879cccaa215 ("uboot-layerscape: update PKG_HASH") Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ramips: Add support command fw_setsys for Xiaomi routersOleg S2022-07-191-4/+10
| | | | | | | | | | | | The system parameters are contained in the Bdata partition. To use the fw_setsys command, you need to create a file fw_sys.config. This file is created after calling the functions ubootenv_add_uci_sys_config and ubootenv_add_app_config. Signed-off-by: Oleg S <remittor@gmail.com> [ wrapped commit description to 72 char ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* uboot-layerscape: update PKG_HASHChristian Lamparter2022-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change of the PKG_VERSION caused the hash of the package to change. This is because the PKG_VERSION is present in the internal directory structure of the uboot-layerscape-21.08.tar.xz archive. i.e: # tar tf uboot-layerscape-21.08.tar.xz: uboot-layerscape-21.08/ uboot-layerscape-21.08/.azure-pipelines.yml uboot-layerscape-21.08/.checkpatch.conf uboot-layerscape-21.08/.gitattributes uboot-layerscape-21.08/.github/ [...] vs. # tar tf uboot-layerscape-LSDK-21.08.tar.xz uboot-layerscape-LSDK-21.08/ uboot-layerscape-LSDK-21.08/.azure-pipelines.yml uboot-layerscape-LSDK-21.08/.checkpatch.conf uboot-layerscape-LSDK-21.08/.gitattributes uboot-layerscape-LSDK-21.08/.github/ [...] the (file) content of both archives are otherwise the same. The PKG_HASH was taken from the builder log: | Hash of the local file uboot-layerscape-21.08.tar.xz does not match |(file: 54909a98bdcc26c7f9b35b35fcae09b977ecbf044be7bffa6dad9306c47cccf6, |requested: 874e871755ef84ebbf3[...]) - deleting download. without this update, the uboot-layerscape-21.08 package would always try to download (from git), repacked the archive and reupload to sources.openwrt.org (~14 MiB saved). Fixes: 038d5bdab117 ("layerscape: use semantic versions for LSDK") Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* uboot-mediatek: unbreak build with binmanDaniel Golle2022-07-1332-325/+71
| | | | | | | | | swig has been installed on the buildbots a while a ago and Petr Štetiar got a fix for the pylibfdt error. Use that and re-enable the builds for mt7620 and mt7621. Refresh patches while at it. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: add support for UBI EOF markerDaniel Golle2022-07-131-0/+51
| | | | | | | Let U-Boot handle free space in UBI partitions by recognizing the EOF marker OpenWrt is using as well for that purpose. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-at91: fix build on buildbotsClaudiu Beznea2022-07-131-1/+2
| | | | | | | | | | | | | | | Buidbots are throwing the following compile error: In file included from tools/aisimage.c:9: include/image.h:1133:12: fatal error: openssl/evp.h: No such file or directory ^~~~~~~~~~~~~~~ compilation terminated. Fix it by passing `UBOOT_MAKE_FLAGS` variable to make. Suggested-by: Petr Štetiar <ynezz@true.cz> Fixes: 6d5611af2813 ("uboot-at91: update to linux4sam-2022.04") Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* uboot-mediatek: mark mt7620 build as @BROKENDaniel Golle2022-07-121-0/+2
| | | | | | Turns out also mt7620 build has a more hidden dependency on binman. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: mark MT7621 variants as @BROKENDaniel Golle2022-07-121-0/+2
| | | | | | | | | | Building U-Boot for the MT7621 SoC requires binman, a Python-based host tool to generate images. For now, binman cannot work inside the OpenWrt build system because it requires swig, so mark the MT7621 boards as borken to fix the ramips/mt7621 build until someone with knowledge about Python and swig fixes the underlaying issue. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-imx: pico-pi-imx7d: fix wrong make flags overridingPetr Štetiar2022-07-121-1/+1
| | | | | | | | | | | | | | | | | | | | | Buidbots are currently choking on the following compile error: In file included from tools/aisimage.c:9: include/image.h:1133:12: fatal error: openssl/evp.h: No such file or directory # include <openssl/evp.h> ^~~~~~~~~~~~~~~ compilation terminated. This is caused by a complete overriding of make flags which are provided correctly in `UBOOT_MAKE_FLAGS` variable, but currently overriden instead of extended. This then leads to the usage of build host include dirs, which are not available. Fix it by extending `UBOOT_MAKE_FLAGS` variable like it was done in commit 481339a04266 ("uboot-imx: fix wrong make flags overriding"). Fixes: 7094e6550336 ("uboot-imx: add support for TechNexion PICO-PI-IMX7D") Signed-off-by: Petr Štetiar <ynezz@true.cz>
* uboot-ramips: add support for MT7621, merge into uboot-mediatekDaniel Golle2022-07-1129-110/+7440
| | | | | | | | | | | | * Merge uboot-ramips into uboot-mediatek. * Port support for the RAVPower RP WD009 to U-Boot 2022.07. * Add support for MT7621 and add builds for the reference boards. * Add builds for MT7620 and MT7628 reference boards. This should help to make development of U-Boot-level board support for all MediaTek targets much easier. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: update to 2022.07 releaseDaniel Golle2022-07-1119-162/+207
| | | | | | | | | | | Add patch to fix host-build of the mkimage tool without CONFIG_TOOLS_LIBCRYPTO. Update and refresh all patches. Tested on BananaPi R64 (MT7622) successfully booting from SD card, eMMC and SPI-NAND. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-envtools: imx: cortexa7: add TechNexion PICO-PI-IMX7DLech Perczak2022-07-111-0/+19
| | | | | | Add configuration for upstream U-Boot environment for booting from eMMC. Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* uboot-imx: add support for TechNexion PICO-PI-IMX7DLech Perczak2022-07-111-0/+9
| | | | | | | | | | Add mainline U-Boot flavour for TechNexion PICO-PI-IMX7D board, using DM and upstream default configuration, storing payload in sector 138 of eMMC. Signed-off-by: Lech Perczak <lech.perczak@gmail.com> [pepe2k@gmail.com: fixed BUILD_DEVICES value] Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: support NVMEM based accessRafał Miłecki2022-07-113-0/+427
| | | | | | | This will allow using fw_printenv without /etc/fw_env.config. Once there is Linux NVMEM driver available for U-Boot env data. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* uboot-at91: update to linux4sam-2022.04Claudiu Beznea2022-07-112-16/+6
| | | | | | | | | Update uboot-at91 to linux4sam-2022.04. As linux4sam-2022.04 is based on U-Boot v2022.01 which contains commit 93b196532254 ("Makefile: Only build dtc if needed") removed also the DTC variable passed to MAKE to force the compilation of DTC. Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* at91bootstrap: update at91bootstrap v4 targets to v4.0.3Claudiu Beznea2022-07-111-3/+3
| | | | | | Update AT91Bootstrap v4 capable targets to v4.0.3. Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* ramips: add support for Beeline SmartBox GIGAMikhail Zhilkin2022-07-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Beeline SmartBox GIGA is a wireless WiFi 5 router manufactured by Sercomm company. Device specification -------------------- SoC Type: MediaTek MT7621AT RAM: 256 MiB, Nanya NT5CC128M16JR-EK Flash: 128 MiB, Macronix MX30LF1G18AC Wireless 2.4 GHz (MT7603EN): b/g/n, 2x2 Wireless 5 GHz (MT7613BE): a/n/ac, 2x2 Ethernet: 3 ports - 2xGbE (WAN, LAN1), 1xFE (LAN2) USB ports: 1xUSB3.0 Button: 1 button (Reset/WPS) PCB ID: DBE00B-1.6MM LEDs: 1 RGB LED Power: 12 VDC, 1.5 A Connector type: barrel Bootloader: U-Boot Installation ----------------- 1. Downgrade stock (Beeline) firmware to v.1.0.02; 2. Give factory OpenWrt image a shorter name, e.g. 1001.img; 3. Upload and update the firmware via the original web interface. Remark: You might need make the 3rd step twice if your running firmware is booted from the Slot 1 (Sercomm0 bootflag). The stock firmware reverses the bootflag (Sercomm0 / Sercomm1) on each firmware update. Revert to stock --------------- 1. Change the bootflag to Sercomm1 in OpenWrt CLI and then reboot: printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3 2. Optional: Update with any stock (Beeline) firmware if you want to overwrite OpenWrt in Slot 0 completely. MAC Addresses ------------- +-----+-----------+---------+ | use | address | example | +-----+-----------+---------+ | LAN | label | *:16 | | WAN | label + 1 | *:17 | | 2g | label + 4 | *:1a | | 5g | label + 5 | *:1b | +-----+-----------+---------+ The label MAC address was found in Factory 0x21000 Notes ----- 1. The following scripts are required for the build: sercomm-crypto.py - already exists in OpenWrt sercomm-partition-tag.py - already exists in OpenWrt sercomm-payload.py - already exists in OpenWrt sercomm-pid.py - new, the part of this pull request sercomm-kernel-header.py - new, the part of this pull request 2. This device (same as other Sercomm S2,S3-based devices) requires special LZMA and LOADADDR settings for successful boot: LZMA_TEXT_START=0x82800000 KERNEL_LOADADDR=0x81001000 LOADADDR=0x80001000 3. This device (same as several other Sercomm-based devices - Beeline, Netgear, Etisalat, Rostelecom) has partition map (mtd1) containing real partition offsets, which may differ from device to device depending on the number and location of bad blocks on NAND. "fixed-partitions" is used if the partition map is not found or corrupted. This behavour (it's the same as on stock firmware) is provided by MTD_SERCOMM_PARTS module. Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* mvebu: add Methode euroDPU supportRobert Marko2022-06-291-1/+2
| | | | | | | | | | | | | | | | Add support for Methode euroDPU which is based on uDPU but does not have a second SFP cage, instead of which a Maxlinear G.hn IC is used. PHY mode is set to 1000Base-X despite Maxlinear IC being capable of 2500Base-X since until 5.15 support for mvebu is available trying to use 2500Base-X will cause buffer overruns for which the fix is not easily backportable. Installation instructions: 1. Boot the FIT initramfs image (openwrt-mvebu-cortexa53-methode_edpu-initramfs.itb) 2. sysupgrade using the openwrt-mvebu-cortexa53-methode_edpu-firmware.tgz Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* mvebu: update and refactor uDPU DTSRobert Marko2022-06-291-0/+5
| | | | | | | | | | | | | | | | | | uDPU DTS has pending upstream fixups, so backport those as well as split the DTS into a DTSI and DTS in preparation for euroDPU support which uses uDPU as the base. Ethernet aliases have not yet been sent upstream but will be soon in order for U-boot to set the correct MAC on both ethernet interfaces instead of just one. Since U-boot environment now has its own partition, update the envtools config script to search for it instead. Patch hardcoding PHY mode is also not applicable anymore, so drop it and set in the uDPU DTS directly. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* kexec-tools: add kdump scripts utilChen Minqiang2022-06-251-0/+34
| | | | | | This add back kdump scripts to save crashlog or vmcore to disk Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
* ath79: add support for Netgear PGZNG1Chris Blake2022-06-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the Netgear PGZNG1, also known as the ADT Pulse Gateway. Hardware: CPU: Atheros AR9344 Memory: 256MB Storage: 256MB NAND Hynix H27U2G8F2CTR-BC USB: 1x USB 2.0 Ethernet: 2x 100Mb/s WiFi: Atheros AR9340 2.4GHz 2T2R Leds: 8 LEDs Button: 1x Reset Button UART: Header marked JPE1. Pinout is VCC, TX, RX, GND. The marked pin, closest to the JPE1 marking, is VCC. Note VCC isn't required to be connected for UART to work. Enable Stock Firmware Shell Access: 1. Interrupt u-boot and run the following commands setenv console_mode 1 saveenv reset This will enable a UART shell in the firmware. You can then login using the root password of `icontrol`. If that doesn't work, the device is running a firmware based on OpenWRT where you can drop into failsafe to mount the FS and then modify /etc/passwd. Installation Instructions: 1. Interupt u-boot and run the following commands setenv active_image 0 setenv stock_bootcmd nboot 0x81000000 0 \${kernel_offset} setenv openwrt_bootcmd nboot 0x82000000 0 \${kernel_offset} setenv bootcmd run openwrt_bootcmd saveenv 2. boot initramfs image via TFTP u-boot tftpboot 0x82000000 openwrt-ath79-nand-netgear_pgzng1-initramfs-kernel.bin; bootm 0x82000000 3. Once booted, use LuCI sysupgrade to flash openwrt-ath79-nand-netgear_pgzng1-squashfs-sysupgrade.bin MAC Table: WAN (eth0): xx:xa - caldata 0x0 LAN (eth1): xx:xb - caldata 0x6 WLAN (phy0): xx:xc - burned into ath9k caldata Not Working: Z-Wave RS422 Signed-off-by: Chris Blake <chrisrblake93@gmail.com> (added more hw-info, fixed file permissions) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* uboot-rockchip: drop CONFIG_IDENT_STRINGJosef Schlehofer2022-06-191-1/+0
| | | | | | | | | | This row is no longer necessary as it was replaced by LOCALVERSION in uboot.mk, which explicitly sets OpenWrt version to all U-boot packages accross OpenWrt. [1] [1] https://github.com/openwrt/openwrt/commit/d6aa9d9e071d9f23ed26f5142991bc66aefe20f5 Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
* apm821xx: MBL: make mtd chip workChristian Lamparter2022-06-191-0/+4
| | | | | | | | | | | | | | | | The MBL has a 512KiB Microchip SST39VF040 chip for uboot and not much else. Thanks to Ewald who figured out that the "jedec-probe" vs. "jedec-flash" was the wrong binding. With this information and the jedec-probe support enabled => the chip works. | physmap-flash 4fff80000.nor_flash: physmap platform flash device: [mem 0x4fff80000-0x4ffffffff] | Found: SST 39LF040 | 4fff80000.nor_flash: Found 1 x8 devices at 0x0 in 8-bit bank Suggested-by: Ewald Comhaire <e.comhaire@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>