aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/uboot-envtools
Commit message (Collapse)AuthorAgeFilesLines
* ath79: add support for Netgear WNDR3700v4Paul Blazejowski2019-11-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNDR3700v4. Router was previously supported by ar71xx target only. Note: device requires 'ar934x-nand' driver in kernel. Specification ============= * Description: Netgear WNDR3700v4 * Loader: U-boot * SOC: Atheros AR9344 (560 MHz) * RAM: 128 MiB * Flash: 128 MiB (NAND) - U-boot binary: 256 KiB - U-boot environment: 256 KiB - ART: 256 KiB - POT: 512 KiB - Language: 2 MiB - Config: 512 KiB - Traffic Meter: 3 MiB - Firmware: 25 MiB - ART Backup: 256 KiB - Reserved: 96 MiB * Ethernet: 5 x 10/100/1000 (4 x LAN, 1 x WAN) (AR8327) * Wireless: - 2.4 GHz b/g/n (internal) - 5 GHz a/n (AR9580) * USB: yes, 1 x USB 2.0 * Buttons: - Reset - WiFi (rfkill) - WPS * LEDs: - Power (amber/green) - WAN (amber/green) - WLAN 2G (green) - WLAN 5G (blue) - 4 x LAN (amber/green) - USB (green) - WPS (amber/green) * UART: 4-pin connector JP1, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 2.5A * MAC addresses: LAN=WLAN2G on case label, WAN +1, WLAN5G +2 Installation ============ * TFTP recovery * TFTP via U-boot prompt * sysupgrade * Web interface Note about partitioning: firmware partition offset (0x6c0000) is hardcoded into vendor's u-boot, so this partition cannot be moved and resized to include Netgear-specific flash areas (pot, language, config, traffic_meter) not used by OpenWrt. Test build configuration ======================== CONFIG_TARGET_ath79=y CONFIG_TARGET_ath79_nand=y CONFIG_TARGET_ath79_nand_DEVICE_netgear_wndr3700-v4=y CONFIG_ALL_KMODS=y CONFIG_DEVEL=y CONFIG_CCACHE=y CONFIG_COLLECT_KERNEL_DEBUG=y CONFIG_IMAGEOPT=y Signed-off-by: Paul Blazejowski <paulb@blazebox.homeip.net>
* ath79: GL-AR750S: provide NAND support; increase kernel to 4 MBJeff Kletsky2019-11-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GL.iNet GL-AR750S has been supported by the ar71xx and ath79 platforms with access to its 16 MB NOR flash, but not its 128 MB SPI NAND flash. This commit provides support for the NAND through the upstream SPI-NAND framework. At this time, the OEM U-Boot appears to only support loading the kernel from NOR. This configuration is preserved as this time, with the glinet,gl-ar750s-nand name reserved for a potential, future, NAND-only boot. The family of GL-AR750S devices on the ath79 platform now includes: * glinet,gl-ar750m-nor-nand "nand" target * glinet,gl-ar750m-nor "nand" target (NAND-aware) NB: This commit increases the kernel size from 2 MB to 4 MB "Force-less" sysupgrade is presently supported from the current versions of following NOR-based firmwre images to the version of glinet,gl-ar750s-nor firmware produced by this commit: * glinet,gl-ar750s -- OpenWrt 19.07 ar71xx * glinet,gl-ar750s -- OpenWrt 19.07 ath79 Users who have sucessfully upgraded to glinet,gl-ar750m-nor may then flash glinet,gl-ar750m-nor-nand with sysupgrade to transtion to the NAND-based variant. Other upgrades to these images, including directly to the NAND-based glinet,gl-ar750s-nor-nand firmware, can be accomplished through U-Boot. NB: See "ath79: restrict GL-AR750S kernel build-size to 2 MB" which enables flashing of NAND factory.img with the current GL-iNet U-Boot, "U-Boot 1.1.4-gcf378d80-dirty (Aug 16 2018 - 07:51:15)" The GL-AR750S OEM U-Boot allows upload and flashing of either NOR firmware (sysupgrade.bin) or NAND firmware (factory.img) through its HTTP-based GUI. Serial connectivity is not required. The glinet,gl-ar750s-nor and glinet,gl-ar750s-nor-nand images generated after this commit flash each other directly. This commit changes the control of the USB VBUS to gpio-hog from regulator-fixed introduced by commit 0f6b944c92. This reduces the compressed kernel size by ~14 kB, with no apparent loss of functionality. No other ath79-nand boards are using regulator-fixed at this time. Note: mtd_get_mac_binary art 0x5006 does not return the proper MAC and the GL.iNet source indicates that only the 0x0 offset is valid The ar71xx targets are unmodified. Cc: Alexander Wördekemper <alexwoerde@web.de> Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* ath79: add GL.iNet GL-AR300M16 as NOR-only boardJeff Kletsky2019-11-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GL.iNet GL-AR300M series of devices includes variants without NAND and only the 16 MB NOR flash. These include the GL-AR300M16 and the GL-AR300M-Lite (already with its own board name). This board-name addition provides disambiguation from the NAND-bearing GL-AR300M devices, both for OpenWrt code and for end users. Kernel and firmware support for NAND and UBI will add ~320 kB to the overall firmware size at this time. This NOR-only option continues to provide more compact firmware for both the GL-AR300M16 as well as those who wish to use it as an alternate or primary, NOR-resident firmware on the GL-AR300M. The ar71xx targets are unmodified. Installation ------------ Install through OEM U-Boot (HTTP-based) or `sysupgrade --force` when booted from NOR and running OEM or OpenWrt, NOR-based firmware. As one of the intentions is disambiguation from NAND-bearing units, users who have flashed this firmware onto a device with NAND would need to use U-Boot or `sysupgrade --force` to flash firmware that again supports NAND. There are no additional SUPPORTED_DEVICES as it is not possible to determine if a device does or does not have NAND based on either the OEM's or OpenWrt's board names prior to this patch. Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* uboot-envtools: ramips: add support for ALFA Network Quad-E4GPiotr Dymacz2019-11-141-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: ramips: add support for ALFA Network R36M-E4GPiotr Dymacz2019-11-131-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: Add TARGET_LDFLAGS to fix PIE and RELROHauke Mehrtens2019-11-092-11/+9
| | | | | | | | | Forward the OpenWrt TARGET_LDFLAGS to the linker of the fw_printenv tool. In addition also use the more standard make invocation script. With this change the fw_printenv tool is built with PIE and Full RELRO support when activated globally in OpenWrt. Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
* ar71xx: update uboot-envtools for Netgear WNR routersMichal Cieslakiewicz2019-11-081-1/+10
| | | | | | | Boards added: WNR1000v2, WNR2000v3, WNR2200, WNR612v2, WNDR4300. Boards changed: WNDR3700 (u-boot env size is 2 sectors not 1). Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: update uboot-envtools for Netgear WNR routersMichal Cieslakiewicz2019-11-081-0/+6
| | | | | | Boards added: WNR1000v2, WNR2000v3, WNR612v2, WNDR3700. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: add support for Netgear WNDR4300Michal Cieslakiewicz2019-11-021-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNDR4300. Router was previously supported by ar71xx target only. Note: device requires 'ar934x-nand' driver in kernel. Specification ============= * Description: Netgear WNDR4300 * Loader: U-boot * SOC: Atheros AR9344 (560 MHz) * RAM: 128 MiB * Flash: 128 MiB (NAND) - U-boot binary: 256 KiB - U-boot environment: 256 KiB - ART: 256 KiB - POT: 512 KiB - Language: 2 MiB - Config: 512 KiB - Traffic Meter: 3 MiB - Firmware: 25 MiB - ART Backup: 256 KiB - Reserved: 96 MiB * Ethernet: 5 x 10/100/1000 (4 x LAN, 1 x WAN) (AR8327) * Wireless: - 2.4 GHz b/g/n (internal) - 5 GHz a/n (AR9580) * USB: yes, 1 x USB 2.0 * Buttons: - Reset - WiFi (rfkill) - WPS * LEDs: - Power (amber/green) - WAN (amber/green) - WLAN 2G (green) - WLAN 5G (blue) - 4 x LAN (amber/green) - USB (green) - WPS (amber/green) * UART: 4-pin connector JP1, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 2.5A * MAC addresses: LAN=WLAN2G on case label, WAN +1, WLAN5G +2 Installation ============ * TFTP recovery * TFTP via U-boot prompt * sysupgrade * Web interface Note about partitioning: firmware partition offset (0x6c0000) is hardcoded into vendor's u-boot, so this partition cannot be moved and resized to include Netgear-specific flash areas (pot, language, config, traffic_meter) not used by OpenWrt. Test build configuration ======================== CONFIG_TARGET_ath79=y CONFIG_TARGET_ath79_nand=y CONFIG_TARGET_ath79_nand_DEVICE_netgear_wndr4300=y CONFIG_ALL_KMODS=y CONFIG_DEVEL=y CONFIG_CCACHE=y CONFIG_COLLECT_KERNEL_DEBUG=y CONFIG_IMAGEOPT=y Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: add support for Netgear WNR2200Michal Cieslakiewicz2019-11-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNR2200. Router was previously supported by ar71xx target only (8 MiB variant). Netgear WNR2200 has two flash versions - 8MiB sold in EU, US etc. and 16 MiB for Russia and China markets. Apart from flash size both variants share the same hardware specification. Specification ============= * Description: Netgear WNR2200 * Loader: U-boot * SOC: Atheros AR7241 (360 MHz) * RAM: 64 MiB * Flash: 8 MiB or 16 MiB (SPI NOR) - U-boot binary: 256 KiB - U-boot environment: 64 KiB - Firmware: 7808 KiB or 16000 KiB - ART: 64 KiB * Ethernet: 4 x 10/100 LAN + 1 x 10/100 WAN * Wireless: 2.4 GHz b/g/n (Atheros AR9287) * USB: yes, 1 x USB 2.0 * Buttons: - Reset - WiFi (rfkill) - WPS * LEDs: - Power (amber/green) - WAN (amber/green) - WLAN (blue) - 4 x LAN (amber/green) - WPS (green) * UART: 4-pin connector JP1, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 1.5A * MAC addresses: LAN on case label, WAN +1, WLAN +2 Installation ============ * TFTP recovery * TFTP via U-boot prompt * sysupgrade * Web interface Test build configuration ======================== CONFIG_TARGET_ath79=y CONFIG_TARGET_ath79_generic=y CONFIG_TARGET_ath79_generic_DEVICE_netgear_wnr2200-8m=y CONFIG_ALL_KMODS=y CONFIG_DEVEL=y CONFIG_CCACHE=y CONFIG_COLLECT_KERNEL_DEBUG=y CONFIG_IMAGEOPT=y CONFIG_KERNEL_DEBUG_INFO=y CONFIG_KERNEL_DEBUG_KERNEL=y Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: uboot-envtools: Add GL-AR300M-LiteJeff Kletsky2019-10-241-0/+1
| | | | | | Add the GL.iNet GL-AR300M-Lite to the list of supported boards. Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* uboot-envtools: remove erasesize from MMC configTim Harvey2019-10-211-2/+2
| | | | | | | Erasesize doesn't belong in the u-boot env config for block devices as it is known to be 512 byte aligned. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
* uboot-envtools: Update to U-Boot version 2019.07Hauke Mehrtens2019-09-042-7/+7
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mvebu: uDPU: add sysupgrade supportVladimir Vid2019-08-241-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds sysupgrade, uboot-env and networking support for Methode uDPU device. Device features 4 partitions: ----------------------------------------- | boot | recovery | rootfs | misc | | (ext4) | (ext4) | (fsf2) | (f2fs) | _________________________________________ Idea was to use f2fs only but the u-boot currently lacks support so first 2 partition are ext4 to be u-boot readable, and this was a reason why custom build and sysupgrade sections were required. On the sysupgrade, boot and rootfs partitions are updated, firmare image and user configuration is saved on the misc partition and if the upgrade was successfull, recovery partition will be updated on after the reboot from preinit script. If the sysupgrade fails for any reason, device will fallback to recovery initramfs image. Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
* uboot-envtools: ath79: add support for ALFA Network AP121FPiotr Dymacz2019-07-311-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: ath79: fix indent and alphabetical orderPiotr Dymacz2019-07-311-3/+3
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ath79: add support for Qihoo C301Chuanhong Guo2019-07-161-0/+3
| | | | | | | | | | | | | | | | Specifications: - SoC: AR9344 - RAM: 128MB - Flash: 2 * 16MB (MX25L12845) - Ethernet: 2 * FE LAN & 1 * FE WAN - WiFi: 2.4G: AR9344 5G: QCA9882 Flash instruction: 1. Hold reset and power up the router 2. Set your IP to 192.168.1.x 3. Open 192.168.1.1 and upload the generated *factory* firmware Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* uboot-envtools: Apply ramips device renamesAdrian Schmutzler2019-07-101-9/+9
| | | | Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mvebu: fix regression for non-generic ESPRESSObin versionsVladimir Vid2019-06-181-0/+3
| | | | | | | | | | | | | When targets for multiple ESPRESSObin devices were added, not all files were updated which means any ESPRESSObin version beside generic won't have proper networking, sysupgrade and uboot-env. This patch fixes the issue. * fixup network detection * fixup uboot-env * fixup platform.sh for sysupgrade Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
* ath79: add support for EnGenius ECB1750sven friedmann2019-05-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specification: - Qualcomm Atheros SoC QCA9558 - 720/600/200 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 1x 10/100/1000 Mbps Ethernet - 3T3R 2.4 GHz (QCA9558 WMAC) - 3T3R 5.8 Ghz (QCA9880-BR4A, Senao PCE4553AH) https://fccid.io/A8J-ECB1750 Tested and working: - lan, wireless, leds, sysupgrade (tftp) Flash instructions: 1.) tftp recovery - use a 1GbE switch or direct attached 1GbE link - setup client ip address 192.168.1.10 and start tftpd - save "openwrt-ath79-generic-engenius_ecb1750-initramfs-kernel.bin" as "ap.bin" in tfpd root directory - plugin powercord and hold reset button 10secs.. "ap.bin" will be downloaded and executed - afterwards login via ssh and do a sysuprade 2.) oem webinterface factory install (not tested) Use normal webinterface upgrade page und select "openwrt-ath79-generic-engenius_ecb1750-squashfs-factory.bin". 3.) oem webinterface command injection OEM Firmware already running OpenWrt (Attitude Adjustment 12.09). Use OEM webinterface and command injection. See wiki for details. https://openwrt.org/toh/engenius/engenius_ecb1750_1 Signed-off-by: sven friedmann <sf.openwrt@okay.ms> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [use interrupt-driven "gpio-keys" binding]
* ipq40xx: Add support for Linksys EA8300 (Dallas)Jeff Kletsky2019-05-181-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Linksys EA8300 is based on QCA4019 and QCA9888 and provides three, independent radios. NAND provides two, alternate kernel/firmware images with fail-over provided by the OEM U-Boot. Installation: "Factory" images may be installed directly through the OEM GUI. Hardware Highlights: * IPQ4019 at 717 MHz (4 CPUs) * 256 MB NAND (Winbond W29N02GV, 8-bit parallel) * 256 MB RAM * Three, fully-functional radios; `iw phy` reports (FCC/US, -CT): * 2.4 GHz radio at 30 dBm * 5 GHz radio on ch. 36-64 at 23 dBm * 5 GHz radio on ch. 100-144 at 23 dBm (DFS), 149-165 at 30 dBm #{ managed } <= 16, #{ AP, mesh point } <= 16, #{ IBSS } <= 1 * All two-stream, MCS 0-9 * 4x GigE LAN, 1x GigE Internet Ethernet jacks with port lights * USB3, single port on rear with LED * WPS and reset buttons * Four status lights on top * Serial pads internal (unpopulated) "Linksys Dallas WiFi AP router based on Qualcomm AP DK07.1-c1" Implementation Notes: The OEM flash layout is preserved at this time with 3 MB kernel and ~69 MB UBIFS for each firmware version. The sysdiag (1 MB) and syscfg (56 MB) partitions are untouched, available as read-only. Serial Connectivity: Serial connectivity is *not* required to flash. Serial may be accessed by opening the device and connecting a 3.3-V adapter using 115200, 8n1. U-Boot access is good, including the ability to load images over TFTP and either run or flash them. Looking at the top of the board, from the front of the unit, J3 can be found on the right edge of the board, near the rear | J3 | |-| | |O| | (3.3V seen, open-circuit) |O| | TXD |O| | RXD |O| | |O| | GND |-| | | Unimplemented: * serial1 "ttyQHS0" (serial0 works as console) * Bluetooth; Qualcomm CSR8811 (potentially conected to serial1) Other Notes: https://wikidevi.com/wiki/Linksys_EA8300 states FCC docs also cover the Linksys EA8250. According to the RF Test Report BT BR+EDR, "All models are identical except for the EA8300 supports 256QAM and the EA8250 disable 256QAM." Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* mvebu: use device-tree board detectionTomasz Maciej Nowak2019-05-111-13/+13
| | | | | | | | Convert whole target to Device Tree based board detection instead of identifying devices by dts file name. With this we can drop mvebu.sh translation script and rely on common method for model detection. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* uboot-envtools: fix fw_env.config for ox820/stg-212Daniel Golle2019-04-111-1/+3
| | | | Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: add support for Netgear EX6400 and EX7300Daniel Gimpelevich2019-04-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is sold as a dual-band 802.11ac range extender. It has a sliding switch for Extender mode or Access Point mode, a WPS button, a recessed Reset button, a hard-power button, and a multitude of LED's, some multiplexed via an NXP 74AHC164D chip. The internal serial header pinout is Vcc, Tx, Rx, GND, with GND closest to the corner of the board. You may connect at 115200 bps, 8 data bits, no parity, 1 stop bit. Specification: - System-On-Chip: QCA9558 - CPU/Speed: 720 MHz - Flash-Chip: Winbond 25Q128FVSG - Flash size: 16 MiB - RAM: 128 MiB - Wireless No1: QCA9558 on-chip 2.4GHz 802.11bgn, 3x3 - Wireless No2: QCA99x0 chip 5GHz 802.11an+ac, 4x4 - PHY: Atheros AR8035-A Installation: If you can get to the stock firmware's firmware upgrade option, just feed it the factory.img and boot as usual. As an alternative, TFTP the factory.img to the bootloader. Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> [whitespace fix in DTS and reorder of make variables] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* uboot-envtools: imx6: Add support for Toradex Apalis board familyPetr Štetiar2019-04-081-0/+4
| | | | | | | This patch is needed in order to be able to use fw_{set,print}env commands. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ramips: Xiaomi MIR3G: detect board name from DTSOzgur Can Leonard2019-03-211-1/+1
| | | | | | | | | | | | | | | | - Former "mir3g" board name becomes "xiaomi,mir3g". - Reorder some entries to maintain alphabetical order. - Change DTS so status LEDs (yellow/red/blue) mimic Xiaomi stock firmware: (Section Indicator) <http://files.xiaomi-mi.co.uk/files/router_pro/router%20PRO%20EN.pdf> <http://files.xiaomi-mi.co.uk/files/Mi_WiFi_router_3/MiWiFi_router3_EN.pdf> |Yellow: Update (LED flickering), the launch of the system (steady light); |Blue: during normal operation (steady light); |Red: Safe mode (display flicker), system failure (steady light); Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com> [Added link to similar Router 3 model] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ramips: add support for Xiaomi Mi Router 3 ProOzgur Can Leonard2019-03-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware: CPU: MediaTek MT7621AT (2x880MHz) RAM: 512MB DDR3 FLASH: 256MB NAND WiFi: 2.4GHz 4x4 MT7615 b/g/n (Needs driver, See Issues!) WiFI: 5GHz 4x4 MT7615 a/n/ac (Needs driver, See Issues!) USB: 1x 3.0 ETH: 1x WAN 10/100/1000 3x LAN 10/100/1000 LED: Power/Status BTN: RESET UART: 115200 8n1 Partition layout and boot: Stock Xiaomi firmware has the MTD split into (among others) - kernel0 (@0x200000) - kernel1 (@0x600000) - rootfs0 - rootfs1 - overlay (ubi) Xiaomi uboot expects to find kernels at 0x200000 & 0x600000 referred to as system 1 & system 2 respectively. a kernel is considered suitable for handing control over if its linux magic number exists & uImage CRC are correct. If either of those conditions fail, a matching sys'n'_fail flag is set in uboot env & a restart performed in the hope that the alternate kernel is okay. If neither kernel checksums ok and both are marked failed, system 2 is booted anyway. Note uboot's tftp flash install writes the transferred image to both kernel partitions. Installation: Similar to the Xiaomi MIR3G, we keep stock Xiaomi firmware in kernel0 for ease of recovery, and install OpenWRT into kernel1 and after. The installation file for OpenWRT is a *squashfs-factory.bin file that contains the kernel and a ubi partition. This is flashed as follows: nvram set flag_try_sys1_failed=1 nvram set flag_try_sys2_failed=0 nvram commit dd if=factory.bin bs=1M count=4 | mtd write - kernel1 dd if=factory.bin bs=1M skip=4 | mtd write - rootfs0 reboot Reverting to stock: The part of stock firmware we've kept in kernel0 allows us to run stock recovery, which will re-flash stock firmware from a *.bin file on a USB. For this we do the following: fw_setenv flag_try_sys1_failed 0 fw_setenv flag_try_sys2_failed 1 reboot After reboot the LED status light will blink red, at which point pressing the 'reset' button will cause stock firmware to be installed from USB. Issues: OpenWRT currently does not have support for the MT7615 wifi chips. There is ongoing work to add mt7615 support to the open source mt76 driver. Until that support is in place, there are closed-source kernel modules that can be used. See: https://forum.openwrt.org/t/support-for-xiaomi-wifi-r3p-pro/20290/170 Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [02_network remaps, Added link to notes]
* ath79: add support for LibreRouter v1Santiago Piccinini2019-03-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- SOC: QCA9558 RAM: 128M DDR2 Flash: 16MiB SPI-NOR ETH: QCA8337N: 2x 10/100/1000 PoE and PoE pass-through WiFi2: QCA9558 (bgn) 2T2R WiFi5: 2x mPCIE with AR9582 (an) 2T2R BTN: 1x Reset GPIO: multiple GPIO on header, PoE passthrough enable UART: 3.3V 115200 8N1 header on the board WDG: ATTiny13 watchdog JTAG: header on the board USB: 1x connector and 1x header on the board PoE: 10-32V input in ETH port 1, passthrough in port 2 mPCIE: 2x populated with radios (but replaceable) OpenWrt is preinstalled from factory. To install use <your-image>-sysupgade.bin using the web interface or with sysupgrade -n. Flash from bootloader (in case failsafe does not work) 1. Connect the LibreRouter with a serial adapter (TTL voltage) to the UART header in the board. 2. Connect an ETH cable and configure static ip addres 192.168.1.10/24 3. Turn on the device and stop the bootloader sending any key through the serial interface. 4. Use a TFTP server to serve <your image>-sysupgrade.bin file. 5. Execute the following commands at the bootloader prompt: ath> tftp 82000000 <your image>-sysupgrade.bin ath> erase 0x9f050000 +$filesize ath> cp.b 0x82000000 0x9f050000 $filesize ath> bootm 0x9f050000 More docs * Bootloader https://github.com/librerouterorg/u-boot * Board details (schematics, gerbers): https://github.com/librerouterorg/board Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
* uboot-envtools: ramips: add support for ALFA Network Tube-E4GPiotr Dymacz2019-03-111-1/+2
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: ath79: add support for YunCore A770Piotr Dymacz2019-03-091-1/+2
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: oxnas: sync with current oxnas/ox820 DTSDaniel Golle2019-03-011-5/+4
| | | | | | | | | Use tested values on shuttle,kd20 and assumed values for mitrastar,stg-212 and cloudengines,pogoplug*. akitio users have yet to report back stock flash layout to support vendor bootloader environment there as well. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-envtools: add support for ALFA Network AP120C-ACPiotr Dymacz2019-02-261-3/+4
| | | | | | While at it, fix alphabetical order. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for Linksys EA6350v3Oever González2019-01-261-0/+3
| | | | | | | | | | | | | This commit adds support for the Linksys EA6350v3 device in the ipq40xx target. This is needed for uboot-envtools to access the environment. Without this patch, the Linksys EA6350v3 will not be able to access the uboot environment. As a side effect, the feature auto_recovery will make the device unstable by switching between the latest and the current firmware. Signed-off-by: Ryan Pannell <ryan@osukl.com> Signed-off-by: Oever González <notengobattery@gmail.com>
* mpc85xx: add support for OCEDO PandaDavid Bauer2019-01-261-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CPU: FSL P1020 (2x 800MHz E500 PPC) RAM: 1GB DDR3 FLASH: 256MiB NAND WiFi: 2x Atheros AR9382 2x2:2 abgn ETH: 2x BCM54616S - 1x BCM53128 8-port switch LED: 5x LEDs (Power, WiFi1, WiFi2, N/D, SYS) BTN: 1x RESET Installation ------------ 1. Download initrams kernel image, dtb binary and sysupgrade image. 2. Place initramfs kernel into tftp root directory. Rename to "panda-uimage-factory". 3. Place dtb binary into tftp root directory. Rename to "panda.fdt". 4. Start tftp server on 192.168.100.8/24. 5. Power up the device with the reset button pressed. It will download the initrams and dtb via tftp and boot into OpenWRT in RAM. 6. SSH into the device and remove the factory partitions. > ubirmvol /dev/ubi0 --name=kernel1 > ubirmvol /dev/ubi0 --name=rootfs1 > ubirmvol /dev/ubi0 --name=devicetree1 You will have around 60 MiB of free space with that. You can also delete "kernel2", "devicetree2", "rootfs2" and "storage" respectively in case you do not want to go back to the vendor firmware. 7. Modify the U-Boot bootcmd to allow for booting OpenWRT > fw_setenv bootcmd_owrt "ubi part ubi && ubi read 0x1000000 kernel && bootm 0x1000000" > fw_setenv bootargs_owrt "setenv bootargs console=ttyS0,115200 ubi.mtd=3,2048" > fw_setenv bootcmd "run bootargs_owrt; run bootcmd_owrt" 8. Transfer the sysupgrade image via scp into the /tmp directory. 9. Upgrade the device > sysupgrade -n /tmp/<imagename> Signed-off-by: David Bauer <mail@david-bauer.net>
* uboot-envtools: Add domywifi dw33d supportshanpo2019-01-021-0/+1
| | | | Signed-off-by: shanpo <jwdsccd@gmail.com>
* uboot-envtools: ipq40xx: Configuration for GL.iNet GL-B1300Ibrahim Tachijian2019-01-021-0/+1
| | | | | | This commit adds the nescessary settings to allow reading the uboot environment variables on the GL.iNet GL-B1300 board. Signed-off-by: Ibrahim Tachijian <barhom@netsat.se>
* ath79: fix boardname of GL.iNet GL-AR300MPaul Wassi2018-12-311-1/+2
| | | | | | | | | | This device is called GL-AR300M, therefore rename the board(s) to 'gl-ar300m-nor' and 'gl-ar300m-nand' Signed-off-by: Paul Wassi <p.wassi@gmx.at> [change boardname in uboot envtools as well, don't use wildcards for boardname] Signed-off-by: Mathias Kresin <dev@kresin.me>
* uboot-envtools: fix configuration for I2SE DuckbillsMichael Heimpold2018-12-182-2/+2
| | | | | | | | After changing board names to DT compat string, we also need to adjust the script which generates uboot-env configuration files. Fixes: e880a30549b ("mxs: use generic sysinfo board detection") Signed-off-by: Michael Heimpold <mhei@heimpold.de>
* uboot-envtools: ath79: add support for the Buffalo BHR-4GRV2Stefan Lippers-Hollmann2018-12-181-0/+1
| | | | | | | | | | | According to https://github.com/openwrt/openwrt/pull/1527, support for the Buffalo BHR-4GRV2 in ath79 requires repartitioning from an initramfs image, make this easier by supporting uboot-envtools support out of the box. Build tested, but not runtime tested. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* uboot-envtools: ath79: add support for the Buffalo WZR-HP-AG300HStefan Lippers-Hollmann2018-12-181-0/+3
| | | | | | | | | Port support for the Buffalo WZR-HP-AG300H from the ar71xx target to ath79 as well. Build- and runtime tested on the Buffalo WZR-HP-AG300H. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* ramips: drop support for ALLNET ALL0239-3G and Sitecom WL-341 v3Mathias Kresin2018-12-121-1/+0
| | | | | | | | | | | | Beside one exception, no one took care of these two remaining boards still using the legacy image build code during the last two years. Since OpenWrt 14.07 the ALLNET ALL0239-3G image building is broken. The Sitecom WL-341 v3 image build code looks pretty hackish and broken. It's questionable if the legacy image works as all. Signed-off-by: Mathias Kresin <dev@kresin.me>
* apm821xx: add support for the Netgear WNDAP620 and WNDAP660Christian Lamparter2018-11-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the Netgear WNDAP620 and WNDAP660, they are similar devices, but due to the LAN LED configuration, the switch setup and WIFI configuration each gets a different device target. Hardware Highlights WNDAP620: CPU: AMCC PowerPC APM82181 at 1000 MHz DRAM: 128 MB, 2 x 64 MiB DDR2 Hynix H5PS5162GF CPU: AMCC PowerPC APM82181 at 1000 MHz FLASH: 32 MiB, NAND SLC, Hynix HY27US08561A Ethernet: RealTek RTL8363SB 2x2-Port Switch PHY - Only 1 GBit Port (POE) Wifi: Atheros AR9380 minipcie - Dual-Band - 3x3:3 Serial: console port with RJ45 Interface (9600-N-8-1) LEDS: Power, LAN-Activity, dual color LAN-Linkspeed, 2.4GHz, 5GHz LEDs Button: Soft Reset Button Antennae: 3 internal dual-band antennae + 3 x RSMA for external antennaes Hardware Highlights WNDAP660: CPU: AMCC PowerPC APM82181 at 1000 MHz + 2 Heatsinks DRAM: 256 MB, 2 x 128 MiB DDR2 FLASH: 32 MiB, NAND SLC, Hynix HY27US08561A Ethernet: RealTek RTL8363SB 2x2-Port Switch PHY (POE) Wifi1: Atheros AR9380 minipcie - Dual-Band - 3x3:3 Wifi2: Atheros AR9380 minipcie - Dual-Band - 3x3:3 Serial: console port with RJ45 Interface (9600-N-8-1) LEDS: Power, LAN-Activity, 2x dual color LAN-Linkspeed, 2.4GHz, 5GHz LEDs Button: Soft Reset Button Antennae: 6 internal dual-band antennae + 3 x RSMA for external antennaes Flashing requirements: - needs a tftp server at 192.168.1.10/serverip. - special 8P8C(aka RJ45)<->D-SUB9 Console Cable ("Cisco Console Cable"). Note: Both WNDAP6x0 have a MAX3232 transceivers, hence no need for any separate CMOS/TTL level shifters. External Antenna: The antennae mux is controlled by GPIO 11 and GPIO14. Valid Configurations: = Config# = | = GPIO 11 = | = GPIO 14 = | ===== Description ===== 1. | 1 / High | 0 / Low | Use the internal antennae (default) 2. | 0 / Low | 1 / High | Use the external antennae The external antennaes are only meant for the 2.4 GHz band. One-way Flashing instructions via u-boot: 0. connect the serial cable to the RJ45 Console Port Note: This requires a poper RS232 and not a TTL/USB adaptor. 1. power up the AP and interrupt the u-boot process at 'Hit any key to stop autoboot' 2. setup serverip and ipaddr env settings Enter the following commands into the u-boot shell # setenv ipaddr 192.168.1.1 # setenv serverip 192.168.1.10 3. download the factory.img image to the AP Enter the following commands into the u-boot shell # tftp ${kernel_addr_r} openwrt-apm821xx-nand-netgear_wndap660-squashfs-factory.img 4. verfiy image integrity Enter the following commands into the u-boot shell # crc32 $fileaddr $filesize If the calculated crc32 checksum does not match, go back to step 3. 5. flash the image Enter the following commands into the u-boot shell # nand erase 0x110000 0x1bd0000 # nand write ${kernel_addr_r} 0x110000 ${filesize} 6. setup uboot environment Enter the following commands into the u-boot shell # setenv bootargs # setenv fileaddr # setenv filesize # setenv addroot 'setenv bootargs ${bootargs} root=/dev/ubiblock0_0' # setenv owrt_boot 'nboot ${kernel_addr_r} nand0 0x110000; run addroot; run addtty; bootm ${kernel_addr_r}' # setenv bootcmd 'run owrt_boot' # saveenv 7. boot # run bootcmd Booting initramfs instructions via u-boot: Follow steps 0 - 2 from above. 3. boot initramfs Enter the following commands into the u-boot shell # tftp ${kernel_addr_r} openwrt-apm821xx-nand-netgear_wndap660-initramfs-kernel.bin # run addtty # bootm ${kernel_addr_r} Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: MX60(W): enable u-boot environmentChristian Lamparter2018-11-261-0/+3
| | | | | | | | | This patch adds u-boot environment access to the MX60(W) target. "The environment size is one NAND block (128KiB on Buckminster). We allocate four NAND blocks to deal with bad blocks which may exist in the saved environment" Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: MR24: add to uboot-envtoolsChristian Lamparter2018-11-261-0/+4
| | | | | | | | This patch adds the complicated u-boot environment access settings for to the MR24 target. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* apm821xx: add uboot-envtools supportChristian Lamparter2018-11-261-0/+18
| | | | | | | | | All apm821xx devices use u-boot and most of them have an accessible u-boot environment. This patch adds the necessary template file, but does not add the uboot-envtools package to any of the targets. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* uboot-envtools: adds r7800 uboot env supportAnsuel Smith2018-10-072-1/+4
| | | | | | This fix and adds support for r7800 uboot env Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ath79: add support for OCEDO KoalaDavid Bauer2018-08-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the OCEDO Koala SOC: Qualcomm QCA9558 (Scorpion) RAM: 128MB FLASH: 16MiB WLAN1: QCA9558 2.4 GHz 802.11bgn 3x3 WLAN2: QCA9880 5 GHz 802.11nac 3x3 INPUT: RESET button LED: Power, LAN, WiFi 2.4, WiFi 5, SYS Serial: Header Next to Black metal shield Pinout is 3.3V - GND - TX - RX (Arrow Pad is 3.3V) The Serial setting is 115200-8-N-1. Tested and working: - Ethernet - 2.4 GHz WiFi - 5 GHz WiFi - TFTP boot from ramdisk image - Installation via ramdisk image - OpenWRT sysupgrade - Buttons - LEDs Installation seems to be possible only through booting an OpenWRT ramdisk image. Hold down the reset button while powering on the device. It will load a ramdisk image named 'koala-uImage-initramfs-lzma.bin' from 192.168.100.8. Note: depending on the present software, the device might also try to pull a file called 'koala-uimage-factory'. Only the name differs, it is still used as a ramdisk image. Wait for the ramdisk image to boot. OpenWRT can be written to the flash via sysupgrade or mtd. Due to the flip-flop bootloader which we not (yet) support, you need to set the partition the bootloader is selecting. It is possible from the initramfs image with > fw_setenv bootcmd run bootcmd_1 Afterwards you can reboot the device. Signed-off-by: David Bauer <mail@david-bauer.net>
* uboot-envtools: add ath79 targetDavid Bauer2018-08-081-0/+26
| | | | | | | | This adds uci entries for all ath79 devices for which this already was the case on ar71xx. Additionally we add the OCEDO Koala as there was no support in OpenWRT yet. Signed-off-by: David Bauer <mail@david-bauer.net>
* kirkwood: add support for Iomega Storcenter ix2-200Ademar Arvati Filho2018-07-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Iomega Storcenter ix2-200 is a dual SATA NAS powered by a Marvell Kirkwood SoC clocked at 1GHz. It has 256MB of RAM and 32MB of flash memory, 3x USB 2.0 and 1x 1Gbit/s NIC Specification: - SoC: Marvell Kirkwood 88F6281 - CPU/Speed: 1000Mhz - Flash-Chip: Hynix NAND - Flash size: 32 MiB,erase size:16 KiB,page size:512,OOB size:16 - RAM: 256MB - LAN: 1x 1000 Mbps Ethernet - WiFi: none - 3x USB 2.0 - UART: for serial console Installation instructions - easy steps: 1. download factory.bin and copy into tftp server 2. access uboot environment with serial cable and run ``` setenv mainlineLinux yes setenv arcNumber 1682 setenv console 'console=ttyS0,115200n8' setenv mtdparts 'mtdparts=orion_nand:0x100000@0x000000(u-boot)ro,0x20000@0xA0000(u-boot environment)ro,0x300000@0x100000(kernel),0x1C00000@0x400000(ubi)' setenv bootargs_root 'root=' setenv bootcmd 'setenv bootargs ${console} ${mtdparts} ${bootargs_root}; nand read.e 0x800000 0x100000 0x300000; bootm 0x00800000' saveenv setenv serverip 192.168.1.1 setenv ipaddr 192.168.1.13 tftpboot 0x00800000 factory.bin nand erase 0x100000 $(filesize) nand write 0x00800000 0x100000 $(filesize) run bootcmd ``` 3. access openwrt by dhcp ip address assigned by your router (p.ex: 192.168.1.13) Installation steps nand bad blocks proof: 1. download initramfs-uImage and copy into usb ext2 partition ``` mkfs.ext2 -L ext2 /dev/sdh1 mount -t ext2 /dev/sdh1 /mnt cp initramfs-uImage /mnt/initramfs.bin umount /mnt ``` 2. access uboot environment with serial cable and run ``` setenv mainlineLinux yes setenv arcNumber 1682 setenv console 'console=ttyS0,115200n8' setenv mtdparts 'mtdparts=orion_nand:0x100000@0x000000(u-boot)ro,0x20000@0xA0000(u-boot environment)ro,0x300000@0x100000(kernel),0x1C00000@0x400000(ubi)' setenv bootargs_root 'root=' setenv bootcmd 'setenv bootargs ${console} ${mtdparts} ${bootargs_root}; nand read.e 0x800000 0x100000 0x300000; bootm 0x00800000' saveenv usb reset; ext2load usb 0:1 0x00800000 /initramfs.bin; bootm 0x00800000 ``` 3. log into openwrt and sysupgrade to install into flash ``` sysupgrade -n /tmp/sysupgrade.bin ``` 4. access openwrt by dhcp ip address assigned by your router (p.ex: 192.168.1.13) Signed-off-by: Ademar Arvati Filho <arvati@hotmail.com>
* uboot-envtools: add configuration for Traverse LS1043 boards.Mathew McBride2018-07-301-0/+25
| | | | Signed-off-by: Mathew McBride <matt@traverse.com.au>