aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot/uboot-envtools
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* ipq40xx: add support for the ZyXEL NBG6617Christian Lamparter2018-06-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for ZyXEL NBG6617 Hardware highlights: SOC: IPQ4018 / QCA Dakota CPU: Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7 DRAM: 256 MiB DDR3L-1600/1866 Nanya NT5CC128M16IP-DI @ 537 MHz NOR: 32 MiB Macronix MX25L25635F ETH: Qualcomm Atheros QCA8075 Gigabit Switch (4 x LAN, 1 x WAN) USB: 1 x 3.0 (via Synopsys DesignWare DWC3 controller in the SoC) WLAN1: Qualcomm Atheros QCA4018 2.4GHz 802.11bgn 2:2x2 WLAN2: Qualcomm Atheros QCA4018 5GHz 802.11a/n/ac 2:2x2 INPUT: RESET Button, WIFI/Rfkill Togglebutton, WPS Button LEDS: Power, WAN, LAN 1-4, WLAN 2.4GHz, WLAN 5GHz, USB, WPS Serial: WARNING: The serial port needs a TTL/RS-232 3.3v level converter! The Serial setting is 115200-8-N-1. The 1x4 .1" header comes pre-soldered. Pinout: 1. 3v3 (Label printed on the PCB), 2. RX, 3. GND, 4. TX first install / debricking / restore stock: 0. Have a PC running a tftp-server @ 192.168.1.99/24 1. connect the PC to any LAN-Ports 2. put the openwrt...-factory.bin (or V1.00(ABCT.X).bin for stock) file into the tftp-server root directory and rename it to just "ras.bin". 3. power-cycle the router and hold down the the WPS button (for 30sek) 4. Wait (for a long time - the serial console provides some progress reports. The u-boot says it best: "Please be patient". 5. Once the power LED starts to flashes slowly and the USB + WPS LEDs flashes fast at the same time. You have to reboot the device and it should then come right up. Installation via Web-UI: 0. Connect a PC to the powered-on router. It will assign your PC a IP-address via DHCP 1. Access the Web-UI at 192.168.1.1 (Default Passwort: 1234) 2. Go to the "Expert Mode" 3. Under "Maintenance", select "Firmware-Upgrade" 4. Upload the OpenWRT factory image 5. Wait for the Device to finish. It will reboot into OpenWRT without any additional actions needed. To open the ZyXEL NBG6617: 0. remove the four rubber feet glued on the backside 1. remove the four philips screws and pry open the top cover (by applying force between the plastic top housing from the backside/lan-port side) Access the real u-boot shell: ZyXEL uses a proprietary loader/shell on top of u-boot: "ZyXEL zloader v2.02" When the device is starting up, the user can enter the the loader shell by simply pressing a key within the 3 seconds once the following string appears on the serial console: | Hit any key to stop autoboot: 3 The user is then dropped to a locked shell. |NBG6617> HELP |ATEN x[,y] set BootExtension Debug Flag (y=password) |ATSE x show the seed of password generator |ATSH dump manufacturer related data in ROM |ATRT [x,y,z,u] RAM read/write test (x=level, y=start addr, z=end addr, u=iterations) |ATGO boot up whole system |ATUR x upgrade RAS image (filename) |NBG6617> In order to escape/unlock a password challenge has to be passed. Note: the value is dynamic! you have to calculate your own! First use ATSE $MODELNAME (MODELNAME is the hostname in u-boot env) to get the challange value/seed. |NBG6617> ATSE NBG6617 |012345678901 This seed/value can be converted to the password with the help of this bash script (Thanks to http://www.adslayuda.com/Zyxel650-9.html authors): - tool.sh - ror32() { echo $(( ($1 >> $2) | (($1 << (32 - $2) & (2**32-1)) ) )) } v="0x$1" a="0x${v:2:6}" b=$(( $a + 0x10F0A563)) c=$(( 0x${v:12:14} & 7 )) p=$(( $(ror32 $b $c) ^ $a )) printf "ATEN 1,%X\n" $p - end of tool.sh - |# bash ./tool.sh 012345678901 | |ATEN 1,879C711 copy and paste the result into the shell to unlock zloader. |NBG6617> ATEN 1,0046B0017430 If the entered code was correct the shell will change to use the ATGU command to enter the real u-boot shell. |NBG6617> ATGU |NBG6617# Co-authored-by: David Bauer <mail@david-bauer.net> Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: David Bauer <mail@david-bauer.net>
* ar71xx: add support for OCEDO KoalaDavid Bauer2018-06-071-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>
* mvebu: add support for WRT32X (venom)Michael Gray2018-05-141-1/+2
| | | | | | | | | | | | | | | | | | Linksys WRT32X (Venom) is identical in hardware to the WRT3200ACM with a different flash layout and boots zImage rather than uImage. Specification: - Marvell Armada 385 88F6820 (2x 1.8GHz) - 256MB of Flash - 512MB of RAM - 2.4GHz (bgn) and 5GHz (an+ac wave 2) - 4x 1Gbps LAN + 1x 1Gbps WAN - 1x USB 3.0 and 1x USB 2.0/eSATA (combo port) Flash instruction: Apply factory image via web-gui. Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
* uboot-envtools: Change download to git.Rosen Penev2018-05-021-6/+7
| | | | | | | | Currently, the build system uses an openwrt mirror which does not currently work and FTP can be unreliable under several circumstances. This change implicitly allows using all the mirrors to download. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* uboot-envtools: add support for ESPRESSObin and MACCHIATObinDamir Samardzic2018-04-251-0/+4
| | | | | | | | Added for convenience. These boards can be used as dev boards running various operating systems from different media, and this simplifies work with U-Boot environment. Signed-off-by: Damir Samardzic <damir.samardzic@sartura.hr>
* ipq40xx: add support for OpenMesh A62Sven Eckelmann2018-04-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * QCA IPQ4019 * 256 MB of RAM * 32 MB of SPI NOR flash (s25fl256s1) - 2x 15 MB available; but one of the 15 MB regions is the recovery image * 2T2R 2.4 GHz - QCA4019 hw1.0 (SoC) - requires special BDF in QCA4019/hw1.0/board-2.bin with bus=ahb,bmi-chip-id=0,bmi-board-id=20,variant=OM-A62 * 2T2R 5 GHz (channel 36-64) - QCA9888 hw2.0 (PCI) - requires special BDF in QCA9888/hw2.0/board-2.bin bus=pci,bmi-chip-id=0,bmi-board-id=16,variant=OM-A62 * 2T2R 5 GHz (channel 100-165) - QCA4019 hw1.0 (SoC) - requires special BDF in QCA4019/hw1.0/board-2.bin with bus=ahb,bmi-chip-id=0,bmi-board-id=21,variant=OM-A62 * multi-color LED (controlled via red/green/blue GPIOs) * 1x button (reset; kmod-input-gpio-keys compatible) * external watchdog - triggered GPIO * 1x USB (xHCI) * TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX) * 2x gigabit ethernet - phy@mdio3: + Label: Ethernet 1 + gmac0 (ethaddr) in original firmware + 802.3at POE+ - phy@mdio4: + Label: Ethernet 2 + gmac1 (eth1addr) in original firmware + 18-24V passive POE (mode B) * powered only via POE The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be used to transfer the factory image to the u-boot when the device boots up. The initramfs image can be started using setenv bootargs 'loglevel=8 earlycon=msm_serial_dm,0x78af000 console=ttyMSM0,115200 mtdparts=spi0.0:256k(0:SBL1),128k(0:MIBIB),384k(0:QSEE),64k(0:CDT),64k(0:DDRPARAMS),64k(0:APPSBLENV),512k(0:APPSBL),64k(0:ART),64k(0:custom),64k(0:KEYS),15552k(inactive),15552k(inactive2)' tftpboot 0x84000000 openwrt-ipq40xx-openmesh_a62-initramfs-fit-uImage.itb set fdt_high 0x85000000 bootm 0x84000000 Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
* uboot-envtools: remove makefile duplication for supported targetsFelix Fietkau2018-04-201-47/+4
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* uboot-envtools: update to 2018.03Luis Araneda2018-04-186-234/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several changes has been made: + AES support has been removed by upstream commit c6831c7 (2017-11-14) [remove patch "200-fw_env_no_aes.patch"] + Support for UBI volumes has beed added by upstream commit 34255b9 (2017-11-15) [remove patch "300-support-env-in-ubivol-chardev.patch"] + A command line argument has beed added ("-c") to manually indicate the location of the environment configuration file Also, patch "400-u-boot-2015.10-stdint.patch" is no longer necessary, and the config option to enable UBI support has been removed. Size comparisons: fw_printenv size: Target Before After ar71xx 15,189 bytes 18,133 bytes (+2,944 bytes) ipq40xx 20,873 bytes 20,987 bytes (+114 bytes) mvebu 20,881 bytes 20,991 bytes (+110 bytes) ramips 15,128 bytes 18,072 bytes (+2,944 bytes) OPKG package size: Target Before After ar71xx 11,309 bytes 12,875 bytes (+1,566 bytes) ipq40xx 11,772 bytes 13,299 bytes (+1,527 bytes) mvebu 11,609 bytes 13,114 bytes (+1,505 bytes) ramips 10,975 bytes 12,503 bytes (+1,528 bytes) Compile tested: ipq40xx (musl, glibc, gcc5-musl), ar71xx, mvebu, ramips Run tested: ipq40xx (ASUS RT-AC58U) Signed-off-by: Luis Araneda <luaraneda@gmail.com>
* ramips: add U-Boot env support for ALFA Network AC1200RMPiotr Dymacz2018-04-061-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: fix ALFA Network AWUSFREE1 supportPiotr Dymacz2018-04-061-7/+9
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ipq40xx: add targetJohn Crispin2018-03-143-4/+47
| | | | | | Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: John Crispin <john@phrozen.org>
* mvebu: add support for Turris OmniaRyan Mounce2018-03-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds support for the Turris Omnia and builds an eMMC sysupgrade image in the same format as the SolidRun ClearFog. An initramfs image in the simple yet Omnia-specific 'medkit' image format is also built in order to ease the initial flashing process. Notable hardware support omissions are support for switching between SFP cage and copper PHY, and RGB LED control. Due to a current limitation of DSA, only 1/2 CPU switch uplinks are used. Specifications: - Marvell Armada 385 1.6GHz dual-core ARMv7 CPU - 1GB DDR3 RAM - 8GB eMMC Flash - 5x Gigabit LAN via Marvell 88E6176 Switch (2x RGMII CPU ports) - 1x switchable RJ45 (88E1514 PHY) / SFP SGMII WAN - 2x USB 3.0 - 12x dimmable RGB LEDs controlled by independent MCU - 3x Mini PCIe slots - Optional Compex WLE200N2 Mini PCIe AR9287 2x2 802.11b/g/n (2.4GHz) - Optional Compex WLE900VX Mini PCIe QCA9880 3x3 802.11ac (2.4 / 5GHz) - Optional Quectel EC20 Mini PCIe LTE modem Flash instructions: If the U-Boot environment has been modified previously (likely manually via serial console), first use serial to reset the default environment. => env default -a => saveenv Method 1 - USB 'medkit' image w/o serial - Copy openwrt-mvebu-turris-omnia-sysupgrade.img.gz and omnia-medkit-openwrt-mvebu-turris-omnia-initramfs.tar.gz to the root of a USB flash drive formatted with FAT32 / ext2/3/4 / btrfs / XFS. Note that the medkit MUST be named omnia-medkit*.tar.gz - Disconnect other USB devices from the Omnia and connect the flash drive to either USB port. - Power on the Omnia and hold down the rear reset button until 4 LEDs are illuminated, then release. - Wait approximately 2 minutes for the Turris Omnia to flash itself with the temporary image, during which LEDs will change multiple times. - Connect a computer to a LAN port of the Turris Omnia with a DHCP client - (if necessary) ssh-keygen -R 192.168.1.1 - ssh root@192.168.1.1 $ mount /dev/sda1 /mnt $ sysupgrade /mnt/openwrt-mvebu-turris-omnia-sysupgrade.img.gz - Wait another minute for the final OpenWrt image to be flashed. The Turris Omnia will reboot itself and you can remove the flash drive. Method 2 - TFTP w/ serial - Extract omnia-medkit-openwrt-mvebu-turris-omnia-initramfs.tar.gz and copy dtb + zImage to your TFTP server (rename if desired) - Connect Turris Omnia WAN port to DHCP-enabled network with TFTP server - Connect serial console and interrupt U-Boot => dhcp => setenv serverip <tftp_server_ip_here> => tftpboot 0x01000000 zImage => tftpboot 0x02000000 dtb => bootz 0x01000000 - 0x02000000 - OpenWrt will now boot from ramdisk - Download openwrt-mvebu-turris-omnia-sysupgrade.img.gz to /tmp/ $ sysupgrade /tmp/openwrt-mvebu-turris-omnia-sysupgrade.img.gz - Wait another minute for the final OpenWrt image to be flashed. The Turris Omnia will reboot itself. Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* uboot-envtools: add support for ALFA Network AWUSFREE1Piotr Dymacz2018-02-221-6/+7
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for YunCore T830Piotr Dymacz2018-02-221-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for Samsung WAM250Piotr Dymacz2018-02-221-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for WHQX E1700AC/E600G/E600GAC v2Piotr Dymacz2018-02-221-0/+3
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: Add eTactica EG-200 supportKarl Palsson2018-02-131-0/+1
| | | | | | | | | | | | | | EG-200 is a DIN rail mountable device with one ethernet port, wifi, an RS-485 port, and an internal USB attached uSD card reader. Two leds, "modbus" and "etactica" are managed by userspace applications in factory firmware. Flash instruction: Original firmware is based on OpenWrt. Use sysupgrade image directly in vendor GUI. Signed-off-by: Karl Palsson <karlp@etactica.com>
* uboot-envtools: add support for GL.iNet GL-AR750Piotr Dymacz2018-01-151-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for ALFA Network R36APiotr Dymacz2018-01-151-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for ALFA Network N5QPiotr Dymacz2018-01-141-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add support for ALFA Network AP91-5GPiotr Dymacz2018-01-141-0/+1
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* uboot-envtools: add OpenMesh A42 supportSven Eckelmann2018-01-131-0/+3
| | | | Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>