1. 19 8月, 2023 1 次提交
    • T
      ipq807x: add support for Netgear RAX120v2 · 4d79a65d
      Thomas Kupper 提交于
      Netgear Nighthawk RAX120v2 AX WIFI router with 5 1G and 1 5G ports.
      
      The majority of the code is based on @jewwest's PR #11830.
      
      Specifications:
          * CPU: Qualcomm IPQ8074 Quad core Cortex-A53 2.2GHz
          * RAM: 1024MB of DDR3 (Nanya NT5CC256M16EP-EK × 2)
          * Flash: SPI-NAND 512 MiB (Winbond W29N04GZBIBA)
          * Ethernet: 4x 10/100/1000 Mbps LAN,
                      1x 10/100/1000 Mbps WAN (Qualcomm QCA8075),
                      1x 10/100/1000/2500/5000 Mbps LAN/WAN (Aquantia AQR111B0 PHY)
          * Wi-Fi:
              * 2.4 GHz: Qualcomm QCN5024 4x4
              * 2x 5 GHz: Qualcomm QCN5054 4x4
          * USB: 2x USB 3.0
          * LEDs: Power, 2.4GHz & 5GHz Radio, WPS, WAN, USB1 & USB2, 5G LAN
          * Keys: LEDs On/Off, Power, Reset, RFKILL, WPS
          * UART: Marked J9003 VCC TX RX GND, beginning from "1". 3.3v, 115200n8
          * Power: 19 VDC, 3.1 A
      
      Installation:
          * Flashing OpenWrt is done in two steps:
              a) Flash *-squashfs-web-ui-factory.img from stock UI (thanks to @wangyu-).
                 This writes an initramfs based OpenWrt image onto the RAX120v2
              b) From OpenWrt flash the *-squashfs-sysupgrade.bin using LuCI or the commandline
      
          * U-Boot allows booting an initramfs image via TFTP:
          - Set ip of your PC to 192.168.1.100
              - At the serial console interrupt boot at "Hit any key to stop autoboot:"
              - In u-boot run `tftpsrv`
              - On your PC send the OpenWrt initramfs image:
      
                tftp 192.168.1.1 -m binary -c put openwrt-ipq807x-generic-netgear_rax120v2-initramfs-uImage.itb
      
      Make 5G Aquantia phy work:
          For the 5G port labeled 'lan5' to work a firmware is needed. This can be loaded in
          u-boot by writing the firmware to the correct mtd partition.
      
          The firmware file found in the Netgear stock firmware under /lib/firmware/ named
          'AQR-G3_v4.3.C-AQR_DNI_DR-EQ35AX8-R-prov1_ID23888_VER1311.cld' is needed and has to
          be converted to a MBN file.
      
          The `mkheader.py` script used here can be found in the Netgear V1.2.8.40 GPL source,
          under 'git_home/u-boot.git/tools/mkheader.py'
      
          Convert the CLD file to MBN using:
          $ python2 mkheader.py 0x44000000 0x13 <*.cld file> aqr_4.3.C.mbn
      
          This MBN file can then be flashed to the MTD partition to be used by u-boot.
      
          The necessary files can also be found in
              https://github.com/boretom/openwrt-fork/tree/rax120v2/aquantia-firmware
      
          * Write MBN file to MTD partition to be loaded automatically by u-boot:
      
            U-boot automatically tries to load the firmware from nand at address 0x7e00000 which
            corresponds to `/dev/mtd25` in OpenWrt.
      
              - find ETHPHYFW partition while running OpenWrt (expected: /dev/mtd25)
      
                $ fgrep -i 'ethphyfw' /proc/mtd
                mtd25: 00080000 00020000 "ethphyfw
      
              - copy mbn file to /tmp/ folder of the router
      
                $ scp aqr-v4.3.C.mbn 192.168.1.1:/tmp/
      
              - write mbn file to ethphyfw partition
      
                $ mtd write /tmp/aqr_v4.3.C.mbn /dev/mtd25
      
      Revert to stock firmware:
          * Flash the stock firmware to the bootloader using TFTP/NMRP.
      
      References to RAX120v2 GPL source:
          https://www.downloads.netgear.com/files/GPL/RAX120-V1.2.8.40_gpl_src.zipReviewed-by: NRobert Marko <robimarko@gmail.com>
      Signed-off-by: NThomas Kupper <thomas.kupper@gmail.com>
      4d79a65d
  2. 16 6月, 2023 2 次提交
    • R
      qualcommax: move ipq807x support to subtarget · 83314c13
      Robert Marko 提交于
      Now that qualcommax exists as a target and dependencies have been updated
      let move ipq807x support to subtarget of qualcommax.
      
      This is mostly copy/paste with the exception of having to update SSDK and
      NSS-DP to use CONFIG_TARGET_SUBTARGET.
      
      This is a preparation for later addition of IPQ60xx and IPQ50xx support.
      Signed-off-by: NRobert Marko <robimarko@gmail.com>
      83314c13
    • R
      ipq807x: rename target to qualcommax · f02f6aaa
      Robert Marko 提交于
      Currently, ipq807x only covers Qualcomm IPQ807x SoC-s.
      However, Qualcomm also has IPQ60xx and IPQ50xx SoC-s under the AX WiSoC-s
      and they share a lot of stuff with IPQ807x, especially IPQ60xx so to avoid
      duplicating kernel patches and everything lets make a common target with
      per SoC subtargets.
      
      Start doing that by renaming ipq807x to qualcommax so that dependencies
      on ipq807x target can be updated.
      Signed-off-by: NRobert Marko <robimarko@gmail.com>
      f02f6aaa
  3. 11 6月, 2023 1 次提交
    • P
      ipq807x: add initial support for prpl Foundation Haze board · 2e910039
      Petr Štetiar 提交于
      Haze is prpl Foundation's reference board (WNC LVRP).
      
      Board info:
      
       - IPQ8072A SoC
       - 2 GiB RAM
       - 4 GiB eMMC
       - 8MiB SPI NOR (MX25U6435F)
      
       - 3x 1GigE ports (QCA8075)
       - 1x 10GigE port (AQR113C)
       - 1x SFP cage
      
       - WiFi 6GHz 160MHz (QCN9074)
       - WiFi 5GHz 80+80MHz (QCN5054)
       - WiFi 2.4G (QCN5024)
      
       - ARM Standard 20-pin 2.54mm/0.1" JTAG (1V8 !!!)
       - Bluetooth v5.0 + EDR with integrated Class 1 PA (CYW20704)
       - 1x M.2 B-key socket with PCIe 3.0
       - 1x USB 3.0 port
       - UART marked J6 is 4-pin 2.54mm/0.1" connector 3V3(arrow),RX,TX,GND (115200 8N1)
       - Reset and WPS buttons
      
      Flashing instructions:
      
       1. From U-Boot boot OpenWrt using initramfs image:
      
          IPQ807x# tftpboot openwrt-ipq807x-generic-prpl_haze-initramfs-uImage.itb && bootm
      
       2. In OpenWrt running from initramfs execute sysupgrade:
      
          root@OpenWrt:/# sysupgrade -n /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin
      
      Work in progress/known issues:
      
       * SFP feature not implemented/tested
       * M.2 feature not implemented/tested
       * Bluetooth feature not implemented/tested
       * 6GHz wireless should be working, but not tested
       * MAC address assigments for LAN interfaces
      Signed-off-by: NPetr Štetiar <ynezz@true.cz>
      2e910039
  4. 05 6月, 2023 2 次提交
    • P
      Revert "ipq807x: add initial support for prpl Foundation Haze board" · a3ee2bf9
      Petr Štetiar 提交于
      This reverts commit 48603a27 as this
      was commited by accident, its still work in progress.
      Signed-off-by: NPetr Štetiar <ynezz@true.cz>
      a3ee2bf9
    • P
      ipq807x: add initial support for prpl Foundation Haze board · 48603a27
      Petr Štetiar 提交于
      Haze is prpl Foundation's reference board (WNC LVRP).
      
      Board info:
      
       - IPQ8072A SoC
       - 2 GiB RAM
       - 4 GiB eMMC
       - 8MiB SPI NOR (MX25U6435F)
      
       - 3x 1GigE ports (QCA8075)
       - 1x 10GigE port (AQR113C)
       - 1x SFP cage
      
       - WiFi 6GHz 160MHz (QCN9074)
       - WiFi 5GHz 80+80MHz (QCN5054)
       - WiFi 2.4G (QCN5024)
      
       - ARM Standard 20-pin 2.54mm/0.1" JTAG (1V8 !!!)
       - Bluetooth v5.0 + EDR with integrated Class 1 PA (CYW20704)
       - 1x M.2 B-key socket with PCIe 3.0
       - 1x USB 3.0 port
       - UART 4-pin 3V3(arrow),RX,TX,GND (115200 8N1)
       - Reset and WPS buttons
      
      Flashing instructions:
      
       1. From U-Boot boot OpenWrt using initramfs image:
      
          IPQ807x# tftpboot openwrt-ipq807x-generic-prpl_haze-initramfs-uImage.itb && bootm
      
       2. In OpenWrt running from initramfs execute sysupgrade:
      
          root@OpenWrt:/# sysupgrade -n /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin
      
      Work in progress/known issues:
      
       * SFP feature not implemented/tested
       * M.2 feature not implemented/tested
       * Bluetooth feature not implemented/tested
       * 6GHz wireless should be working, but not tested
       * MAC address assigments for LAN interfaces
      Signed-off-by: NPetr Štetiar <ynezz@true.cz>
      48603a27
  5. 26 5月, 2023 1 次提交
    • A
      ipq807x: add support for Compex WPQ873 · 07c45c08
      Antti Nykänen 提交于
      The Compex WPQ873 is a development board with two M.2 B-key
       slots for cellular modems.
      
      Device info:
       - IPQ8072A SoC
       - 512MiB RAM
       - 256MiB NAND flash
       - 8MiB SPI NOR
       - 3x 1GigE ports
       - 1x 2.5GigE port
       - 2.4GHz/5GHz AX WLAN
       - 1x USB 3.0 port
       - 1x M.2 B-key socket with PCIe 3.0
       - 1x M.2 B-key socket with PCIe 2.0 and USB 3.0
       - 4x SIM card slots
       - Bluetooth LE 5.0 (QCA4024)
      
      Prerequisites
      1) TFTP server
      2) 3.3V USB to TTL cable for UART console
         2.54mm pitch 4-pin header for UART is readily provided on board, no modifications are necessary to access it
         TTL connector pinout: 2=TX, 3=RX, 4=GND
         Arrow marks pin 1 which is 3.3V
         Serial port settings: 115200 8N1 no flow control
      
      The device will most likely ship with a QSDK-based firmware.
      
      1. Power on device and interrupt u-boot to obtain u-boot CLI
      
      2. set serverip to IP address of the TFTP server, for example:
      
              `setenv serverip 192.168.1.10`
      
      3. Download image from TFTP server:
      
              `tftpboot 0x44000000 openwrt-ipq807x-generic-compex_wpq873-squashfs-factory.ubi`
      
      4. Flash ubi image to both partitions and reset:
      
              `sf probe
               imxtract 0x44000000 ubi
               nand device 0
               nand erase 0x0 0x3400000
               nand erase 0x3c00000 0x3400000
               nand write $fileaddr 0x0 $filesize
               nand write $fileaddr 0x3c00000 $filesize
               reset`
      
      Afterwards, you can use sysupgrade to flash new OpenWRT images.
      Signed-off-by: NAntti Nykänen <antti.nykanen@nokia.com>
      07c45c08
  6. 21 3月, 2023 1 次提交
    • A
      ipq807x: add support for Netgear WAX218 · 7801161c
      Alexandru Gagniuc 提交于
      Netgear WAX218 is a 802.11ax AP claiming AX3600 support. It is wall
      or ceiling mountable. It can be powered via PoE, or a 12 V adapter.
      
      The board has footprints for 2.54mm UART headers. They're difficult to
      solder because the GND is connected to a large copper plane. Only try
      soldering if you are very skilled. Otherwise, use pogo pins.
      
      Specifications:
      ---------------
          * CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz
          * RAM: 366 MB of RAM available to OS, not sure of total amount
          * Storage: Macronix MX30UF2G18AC 256MB NAND
          * Ethernet:
                  * 2.5G RJ45 port (QCA8081) with PoE input
          * WLAN:
                  * 2.4GHz/5GHz with 8 antennas
          * LEDs:
                  * Power (Amber)
                  * LAN (Blue)
                  * 2G WLAN (Blue)
                  * 5G WLAN (Blue)
          * Buttons:
                  * 1x Factory reset
          * Power: 12V DC Jack
          * UART: Two 4-pin unpopulated headers near the LEDs
                  * "J2 UART" is the CPU UART, 3.3 V level
      
      Installation:
      =============
      
      Web UI method
      -------------
      
      Flashing OpenWRT using the vendor's Web UI is problematic on this
      device. The u-boot mechanism for communicating the active rootfs is
      antiquated and unreliable. Instead of setting the kernel commandline,
      it relies on patching the DTS partitions of the nand node. The way
      partitions are patched is incompatible with newer kernels.
      
      Newer kernels use the SMEM partition table, which puts "rootfs" on
      mtd12. The vendor's Web UI will flash to either mtd12 or mtd14. One
      reliable way to boot from mtd14 and avoid boot loops is to use an
      initramfs image.
      
       1. In the factory web UI, navigate to System Manager -> Firmware.
       2. In the "Local Firmware Upgrade" section, click Browse
       3. Navigate and select the 'web-ui-factory.fit' image
       4. Click "Upload"
       5. On the following page, click on "Proceed"
      
      The flash proceeds at this point and the system will reboot
      automatically to OpenWRT.
      
       6. Flash the 'nand-sysupgrade.bin' using Luci or the commandline
      
      SSH method
      ----------
      
      Enable SSH using the CLI or Web UI. The root account is locked out to
      ssh, and the admin account defaults to Netgear's CLI application.
      So we need to get creative:
      
      First, make sure the device boots from the second firmware partition:
      
          ssh -okexalgorithms=diffie-hellman-group14-sha1 admin@<ipaddr> \
              /usr/sbin/fw_setenv active_fw 1
      
      Then reboot the device, and run the update:
      
          scp -O -o kexalgorithms=diffie-hellman-group14-sha1 \
              -o hostkeyalgorithms=ssh-rsa \
              netgear_wax218-squashfs-nand-factory.ubi \
              admin@<ipaddr>:/tmp/openwrt.ubi
      
          ssh -okexalgorithms=diffie-hellman-group14-sha1 admin@<ipaddr> \
              /usr/sbin/ubiformat /dev/mtd12 -f /tmp/openwrt.ubi
      
          ssh -okexalgorithms=diffie-hellman-group14-sha1 admin@<ipaddr> \
              /usr/sbin/fw_setenv active_fw 0
      
      Now reboot the device, and it should boot into a ready-to-use OpenWRT.
      Signed-off-by: NAlexandru Gagniuc <mr.nuke.me@gmail.com>
      Reviewed-by: NRobert Marko <robimarko@gmail.com>
      Tested-by: NFrancisco G Luna <frangonlun@gmail.com>
      7801161c
  7. 19 1月, 2023 1 次提交
    • A
      ipq807x: Add ZyXEL NBG7815 · 5dee5965
      André Valentin 提交于
      ZyXEL NBG7815 is a premium 802.11ax "tri"-band router/AP.
      Specifications:
      * CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz
      * RAM: 1 GB 2x Nanya NT5CC256M16ER-EK
      * Storage:
              * 8MB serial flash Winbond W25Q64DW
              * 4GB eMMC flash Kingston EMMC04G-M627
      * Ethernet:
              * 4x1G RJ45 ports (QCA8074A) with 1x status LED per port
              * 1x2.5G RJ45 port (QCA8081) with 1x status LED
              * 1x10G RJ45 port (AQR113C) with 1x status LED
      * Switch: Qualcomm Atheros QCA8075
      * WLAN:
              * 2.4GHz: Qualcomm QCN5024 4x4@40MHz 802.11b/g/n/ax 1147 Mbps PHY rate
              * 2x 5GHz: Qualcomm QCN5054 4x4 802.11a/b/g/n/ac/ax 2402 PHY rate
      * Bluetooth CSR8811 using HSUART, currently unsupported
      * USB: 1x USB3.0 Type-A port
      * LED-s currently not supported:
              * White
              * Dark Blu
              * Amber
              * Purple
              * Purple and dark blue
              * Red
      * Buttons:
              * 1x Soft reset
      * Power: 12V DC Jack
      
      Installation instructions:
      * Disconnect WAN
      * Reset device to factory defaults by pushing reset button 15 sec,
        LEDs should lit orange color.
      * After 5-10 minutes, when the LEDs turn constant dark blue,
        put your LAN cable and connect at address 192.168.123.1 by telnet on port 23
      * Login with
        NBG7815 login: root
        password: nbg7815@2019
      * cd /tmp/ApplicationData
      * wget -O openwrt-ipq807x-generic-zyxel_nbg7815-squashfs-sysupgrade.bin http://...
      * wget https://github.com/itorK/nbg7815_tools/blob/main/flash_to_openwrt.sh
      * run flash_to_openwrt.sh
      If you can't use wget, you can transfer the files via nc.
      See https://openwrt.org/inbox/toh/zyxel/nbg7815_armor_g5 for installation details.
      
      Bluetooth usage:
      * you need at least package bluez-utils, recommended bluez-daemon
      * run following commands to enable and start
        hciattach  /dev/ttyMSM1 bcsp
        hciconfig hci0 up
      
      Many thanks to itorK for his work on this device:
      https://github.com/itorK/openwrt/tree/nbg7815Reviewed-by: NRobert Marko <robimarko@gmail.com>
      Signed-off-by: NAndré Valentin <avalentin@marcant.net>
      5dee5965
  8. 16 1月, 2023 7 次提交
    • D
      ipq807x: add Dynalink DL-WRX36 · 26c095cb
      Dirk Buchwalder 提交于
      Dynalink DL-WRX36 is a AX WIFI router with 4 1G and 1 2.5G ports.
      
      Specifications:
      
          •     CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz
          •     RAM: 1024MB of DDR3
          •     Storage: 256MB Nand
          •     Ethernet: 4x 1G RJ45 ports (QCA8075) + 1 2.5G Port (QCA8081)
          •     WLAN:
                2.4GHz: Qualcomm QCN5024 2x2 802.11b/g/n/ax 1174 Mbps PHY rate
                5GHz: Qualcomm QCN5054 4x4 802.11a/b/g/n/ac/ax 2402 PHY rate
          •     1x USB 3.0
      
          •     1 gpio-controlled dual color led (blue/red)
      
                  • Buttons: 1x soft reset / 1x WPS
                  • Power: 12V DC jack
      
              A poulated serial header is onboard (J1004)
              the connector size is a 4-pin 2.0 mm JST PH.
              RX/TX is working, u-boot bootwait is active, secure boot is enabled.
      
              Notes:
      	- Serial is completely deactivated in the stock firmware image.
      	- This commit adds only single partition support, that means
      	  sysupgrade is upgrading the current rootfs partition.
      	- Installation can be done by serial connection or
      	  SSH access on OEM firmware
      
      	Installation Instructions:
      
      	Most part of the installation is performed from an initramfs image
      	running OpenWrt, and there are two options to boot it.
      
      	Boot initramfs option 1: Using serial connection (3.3V)
      	1. Stop auto boot to get to U-boot shell
      	2. Transfer initramfs image to device
      	   (openwrt-ipq807x-generic-dynalink_dl-wrx36-initramfs-uImage.itb)
      	   Tested using TFTP and a FAT-formatted USB flash drive.
      	3. Boot the initramfs image
      	   # bootm
      
      	Boot initramfs option 2: From SSH access on OEM firmware
      	1. Copy the initramfs image to a FAT-formatted flash drive
      	   (tested on single-partition drive) and connect it to device USB port.
      	2. Change boot command so it loads the initramfs image on next boot
      	   Fallback to OEM firmware is provided.
      	   # fw_setenv bootcmd 'usb start && fatload usb 0:1 0x44000000 openwrt-ipq807x-generic-dynalink_dl-wrx36-initramfs-uImage.itb && bootm 0x44000000; bootipq'
      	3. Reboot the device to boot the initramfs
      	   # reboot
      
      	Install OpenWrt from initramfs image:
      	1. Use SCP (or other way) to transfer OpenWrt factory image
      	2. Connect to device using SSH (on a LAN port)
      	3. Check MTD partition table.
      	   rootfs and rootfs_1 should be mtd18 and mtd20
      	   depending on current OEM slot.
      	   # cat /proc/mtd
      	4. Do a ubiformat to both rootfs partitions:
      	   # ubiformat /dev/mtd18 -y -f /path_to/factory_image
      	   # ubiformat /dev/mtd20 -y -f /path_to/factory_image
      	5. Set U-boot env variable: mtdids
      	   # fw_setenv mtdids 'nand0=nand0'
      	6. Get offset of mtd18 to determine current OEM slot
      	   - If current OEM slot is 1, offset is 16777216  (0x1000000)
      	   - If current OEM slot is 2, offset is 127926272 (0x7a00000)
      	   # cat /sys/class/mtd/mtd18/offset
      	7. Set U-boot env variable: mtdparts
      	   If current OEM slot is 1, run:
      	   # fw_setenv mtdparts 'mtdparts=nand0:0x6100000@0x1000000(fs),0x6100000@0x7a00000(fs_1)'
      	   If current OEM slot is 2, run:
      	   # fw_setenv mtdparts 'mtdparts=nand0:0x6100000@0x7a00000(fs),0x6100000@0x1000000(fs_1)'
      	8. Set U-boot env variable: bootcmd
      	   # fw_setenv bootcmd 'setenv bootargs console=ttyMSM0,115200n8 ubi.mtd=rootfs rootfstype=squashfs rootwait; ubi part fs; ubi read 0x44000000 kernel; bootm 0x44000000#config@rt5010w-d350-rev0'
      	9. Reboot the device
      	   # reboot
      
              Note: this PR adds only single partition support, that means sysupgrade is
                    upgrading the current rootfs partition
      Signed-off-by: NDirk Buchwalder <buchwalder@posteo.de>
      26c095cb
    • M
      ipq807x: add Edgecore EAP102 · 6e03304c
      Matthew Hagan 提交于
      The Edgecore EAP102 is a wall/ceiling mountable AP. The AP can be
      powered by either PoE or AC adapter.
      
      Device info:
       - IPQ8071-A SoC
       - 1GiB RAM
       - 256MiB NAND flash
       - 32MiB SPI NOR
       - 2 Ethernet ports
       - 1 Console port
       - 2GHz/5GHz AX WLAN
       - 2 USB 2.0 ports
      
      Install instructions:
      
      Prerequistes - TFTP server, preferrably within 192.168.1.0/24
      	       Console cable plugged in (115200 8N1 no flow control)
      
      1. Power on device and interrupt u-boot to obtain u-boot CLI
      
      2. set serverip to IP address of the TFTP server:
      
      	`setenv serverip 192.168.1.250`
      
      3. Download image from TFTP server:
      
      	`tftpboot 0x44000000 openwrt-ipq807x-generic-edgecore_eap102-squashfs-nand-factory.ubi`
      
      4. Flash ubi image to both partitions and reset:
      
      	`sf probe
      	 imxtract 0x44000000 ubi
      	 nand device 0
      	 nand erase 0x0 0x3400000
      	 nand erase 0x3c00000 0x3400000
      	 nand write $fileaddr 0x0 $filesize
      	 nand write $fileaddr 0x3c00000 $filesize
      	 reset`
      Signed-off-by: NMatthew Hagan <mnhagan88@gmail.com>
      6e03304c
    • R
      ipq807x: Add Xiaomi AX9000 · 2ddb2057
      Robert Marko 提交于
      Xiaomi AX9000 is a premium 802.11ax "tri"-band router/AP.
      Specifications:
      * CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz
      * RAM: 1024MB of DDR3
      * Storage: 256MB of parallel NAND
      * Ethernet:
      	* 4x1G RJ45 ports (QCA8075) with 1x status LED per port
      	* 1x2.5G RJ45 port (QCA8081) with 1x status LED
      * WLAN:
      	* PCI based Qualcomm QCA9889 1x1 802.11ac Wawe 2 for IoT
      	* 2.4GHz: Qualcomm QCN5024 4x4@40MHz 802.11b/g/n/ax 1147 Mbps PHY rate
      	* 5.8GHz: Qualcomm QCN5054 4x4@80MHz or 2x2@160MHz 802.11a/b/g/n/ac/ax 2402Mbps PHY rate
      	* 5GHz: PCI based Qualcomm QCN9024 4x4@160MHz 802.11a/b/g/n/ac/ax 4804Mbps PHY rate
      * USB: 1x USB3.0 Type-A port
      * LED-s:
      	* System (Blue and Yellow)
      	* Network (Blue and Yellow)
      	* RGB light bar on top in X shape
      * Buttons:
      	* 1x Power switch
      	* 1x Soft reset
      	* 1x Mesh button
      * Power: 12V DC Jack
      
      Installation instructions:
      
      Obtaining SSH access is mandatory
      https://openwrt.org/inbox/toh/xiaomi/ax9000#obtain_ssh_access
      
      Installation is done by the ubiformat method, through SSH:
      1. Open an SSH shell to the router
      2. Copy the file openwrt-ipq807x-generic-xiaomi_ax9000-initramfs-factory.ubi to the /tmp directory
      3. Check which rootfs partition is your router booted in (0 = rootfs | 1 = rootfs_1):
      nvram get flag_boot_rootfs
      
      4. Find the rootfs and rootfs_1 mtd indexes respectively:
      cat /proc/mtd
      Please confirm if mtd21 and mtd22 are the correct indexes from above!
      
      5. Use the command ubiformat to flash the opposite mtd with UBI image:
      
      If nvram get flag_boot_rootfs returned 0:
      ubiformat /dev/mtd22 -y -f /tmp/openwrt-ipq807x-generic-xiaomi_ax9000-initramfs-factory.ubi && nvram set flag_boot_rootfs=1 && nvram set flag_last_success=1 && nvram commit
      
      otherwise:
      ubiformat /dev/mtd21 -y -f /tmp/openwrt-ipq807x-generic-xiaomi_ax9000-initramfs-factory.ubi && nvram set flag_boot_rootfs=0 && nvram set flag_last_success=0 && nvram commit
      
      6. Reboot the device by:
      reboot
      
      Previous commands flashed an ubinized OpenWrt initramfs that will serve as the intermediate step
      since OpenWrt uses unified rootfs in order to fully utilize NAND and provide enough space for packages.
      Continue in order to pernamently flash OpenWrt:
      
      7. SSH into OpenWrt from one of the LAN ports
      8. Copy the file openwrt-ipq807x-generic-xiaomi_ax9000-squashfs-sysupgrade.bin to the /tmp directory
      9. Sysupgrade the device:
      sysupgrade -n /tmp/openwrt-ipq807x-generic-xiaomi_ax9000-squashfs-sysupgrade.bin
      
      Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired.
      Signed-off-by: NRobert Marko <robimarko@gmail.com>
      2ddb2057
    • D
      ipq807x: add QNAP 301w · bd176832
      Dirk Buchwalder 提交于
      QNAP 301w is a AX WIFI router with 4 1G and 2 10G ports.
      
      Specifications:
      
          •     CPU: Qualcomm IPQ8072A Quad core Cortex-A53 2.2GHz
          •     RAM: 1024MB of DDR3
          •     Storage: 4GB eMMC (contains kernel and rootfs) / 8MB NOR
                (contains art and u-boot-env)
          •     Ethernet: 4x 1G RJ45 ports + 2 10G ports (Aquantia AQR113C)
          •     WLAN:
                2.4GHz: Qualcomm QCN5024 4x4 (40 MHz) 802.11b/g/n/ax 1174 Mbps PHY rate
                5GHz: Qualcomm QCN5054 4x4 (80 MHz) or 2x2 (160 MHz) 802.11a/b/g/n/ac/ax 2402 PHY rate
      
          •     LEDs:
                7 x GPIO-controlled dual color LEDs + 2 GPIO-controlled single color LEDs
      
                  • Buttons: 1x soft reset / 1x WPS
                  • Power: 12V DC jack
      
              A poulated serial header is onboard.
              RX/TX is working, bootwait is active, secure boot is not enabled.
      
              SSH can be activated in the stock firmware, hold WPS button til the second beep
      	(yes the router has a buzzer)
              SSH is available on port 22200, login with user admin and
      	password "mac address of the router".
      
              Installation Instructions:
      
                  • obtain serial access (https://openwrt.org/inbox/toh/qnap/301w#serial)
                  • stop auto boot
                  • setenv serverip 192.168.10.1
                  • setenv ipaddr 192.168.10.10
                  • tftpboot the initramfs image
                    (openwrt-ipq807x-generic-qnap_301w-initramfs-fit-uImage.itb)
                  • bootm
      
                  • make sure that current_entry is set to "0":
                    "fw_printenv -n current_entry" should be print "0". If not,
      	       do "fw_setenv current_entry 0"
                  • copy openwrt-ipq807x-generic-qnap_301w-squashfs-sysupgrade.bin
      	          to the device to /tmp folder
                  • sysupgrade -n /tmp/openwrt-ipq807x-generic-qnap_301w-squashfs-sysupgrade.bin
                    this flashes openwrt to the first kernel and rootfs partition (mmcblk0p1 / mmcblk0p4)
                  • reboot
      
              Note: this leaves the second kernel / rootfs parition untouched. So if you want
                    to go back to stock, stop u-boot autoboot, "setenv current_entry 1" ,
      	       "saveenv", "bootipq".
                    Stock firmware should start from the second partition.
      	      Then do a firmwareupgrade in the stock gui, that should overwrite the openwrt
      	      in the first partitions
      
              Make 10G Aquantia phy's work:
                    The aquantia phy's need a firmware to work. This can either be loaded
      	      in linux with a userspace tool or in u-boot.
      
                    I was not successfull to load the firmware in linux (aq-fw-download) but luckily there is
      	      aq_load_fw available in u-boot. But first the right firmware needs to write
      	      to the 0:ETHPHYFW mtd partition (it is empty on my device)
      
                    Grab the ethphy firmware image from:
      	      https://github.com/kirdesde/nbg7815_gpl/blob/master/target/linux/ipq/ipq807x_64/prebuilt_images/AQR_ethphyfw.mbn
      	      and scp that to openwrt.
      
                    Check the 0:ETHPHYFW partition number:
                    cat /proc/mtd|grep "0:ETHPHYFW", should be mtd10.
      
                    Backup the 0:ETHPHYFW partition:
                    dd if=/dev/mtd10 of=/tmp/ethphyfw.backup, scp ethphyfw.backup to a save place.
      
                    Write the new firmware image to the 0:ETHPHYFW partition:
                    "mtd erase /dev/mtd10", "mtd -n write AQR_ethphyfw.mbn /dev/mtd10".
      
                    Reboot to u-boot.
      
                    Check if aq_load_fw is working:
      
                    "aq_load_fw 0", that checks the firmware and if successfull,
      	      loads iram and dram to one of the aquantia phy's.
      
                    If that worked, add the aq_load_fw to the bootcmd:
                    setenv bootcmd "aq_load_fw 0 && aq_load_fw 8 && bootipq"
      
                    "saveenv"
      
                    "reset"
      
                    Board reboots and the firmware load to both phy's should start and
      	      then openwrt boots.
      
                    Check if the 10G ports work.
      
                    Note: lan port labeled "10G-2" is configured as WAN port as per default.
      	      All other port are in the br-lan. This can be changed in the network config.
      Signed-off-by: NDirk Buchwalder <buchwalder@posteo.de>
      bd176832
    • D
      ipq807x: add Edimax CAX1800 · a36fc589
      Dirk Buchwalder 提交于
      Edimax CAX1800 is a 802.11 ax dual-band AP
      with PoE. AP can be ceiling or wall mount.
      
      Specifications:
      
          •     CPU: Qualcomm IPQ8070A Quad core Cortex-A53 1.4GHz
          •     RAM: 512MB of DDR3
          •     Storage: 128MB NAND (contains rootfs) / 8MB NOR (contains art and uboot-env)
          •     Ethernet: 1x 1G RJ45 port (QCA8072) PoE
          •     WLAN:
                2.4GHz: Qualcomm QCN5024 2x2 802.11b/g/n/ax 574 Mbps PHY rate
                5GHz: Qualcomm QCN5054 2x2 802.11a/b/g/n/ac/ax 1201 PHY rate
      
          •     LEDs:
                3 x GPIO-controlled System-LEDs
                (form one virtual RGB System-LED)
                  black_small_square  Buttons: 1x soft reset
                  black_small_square  Power: 12V DC jack or PoE (802.3af )
      
              An unpopulated serial header is onboard.
              RX/TX is working, bootwait is active, secure boot is not enabled.
      
              SSH can be activated in the stock firmware, but it drops only
              to a limited shell .
      
              Installation Instructions:
      
                  black_small_square obtain serial access
                  black_small_square stop auto boot
      
                  black_small_square tftpboot the initramfs image (serverip is set to 192.168.99.8 in uboot)
                  black_small_square bootm
      
                  black_small_square copy openwrt-ipq807x-generic-edimax_cax1800-squashfs-nand-factory.ubi
      	      to the device
                  black_small_square write the image to the NAND:
                  black_small_square cat /proc/mtd and look for rootfs partition (should be mtd0)
                  black_small_square ubiformat /dev/mtd0 -f -y  openwrt-ipq807x-generic-edimax_cax1800-squashfs-
                    nand-factory.ubi
                  black_small_square reboot
      
      	Note: Device is not using dual partitioning (NAND contains other partitions
              with different manufacture data etc.)
      	Draytek VigorAP 960C and Lancom LW-600 both look similar, but I haven't checked them.
      Signed-off-by: NDirk Buchwalder <buchwalder@posteo.de>
      a36fc589
    • Z
      ipq807x: add Redmi AX6 · 8253cb2d
      Zhijun You 提交于
      Redmi AX6 is a budget 802.11ax dual-band router/AP
      
      Specifications:
      * CPU: Qualcomm IPQ8071A Quad core Cortex-A53 1.4GHz
      * RAM: 512MB of DDR3
      * Storage: 128MB NAND
      * Ethernet: 4x1G RJ45 ports (QCA8075)
      * WLAN:
      	* 2.4GHz: Qualcomm QCN5024 2x2 802.11b/g/n/ax 574 Mbps PHY rate
      	* 5GHz: Qualcomm QCN5054 4x4@80MHz or 2x2@160MHz 802.11a/b/g/n/ac/ax 2402 PHY rate
      * LEDs:
      	* System (Blue/Yellow)
      	* Network (Blue/Yellow)
      *Buttons: 1x soft reset
      *Power: 12V DC jack
      
      Installation instructions:
      
      Obtaining SSH access is mandatory
      https://openwrt.org/inbox/toh/xiaomi/xiaomi_redmi_ax6_ax3000#ssh_access
      
      Installation is done by the ubiformat method, through SSH:
      1. Open an SSH shell to the router
      2. Copy the file openwrt-ipq807x-generic-redmi_ax6-initramfs-factory.ubi to the /tmp directory
      3. Check which rootfs partition is your router booted in (0 = rootfs | 1 = rootfs_1):
      nvram get flag_boot_rootfs
      
      4. Find the rootfs and rootfs_1 mtd indexes respectively:
      cat /proc/mtd
      Please confirm if mtd12 and mtd13 are the correct indexes from above!
      
      5. Use the command ubiformat to flash the opposite mtd with UBI image:
      
      If nvram get flag_boot_rootfs returned 0:
      ubiformat /dev/mtd13 -y -f /tmp/openwrt-ipq807x-generic-redmi_ax6-initramfs-factory.ubi && nvram set flag_boot_rootfs=1 && nvram set flag_last_success=1 && nvram commit
      
      otherwise:
      ubiformat /dev/mtd12 -y -f /tmp/openwrt-ipq807x-generic-redmi_ax6-initramfs-factory.ubi && nvram set flag_boot_rootfs=0 && nvram set flag_last_success=0 && nvram commit
      
      6. Reboot the device by:
      reboot
      
      Previous commands flashed an ubinized OpenWrt initramfs that will serve as the intermediate step
      since OpenWrt uses unified rootfs in order to fully utilize NAND and provide enough space for packages.
      Continue in order to pernamently flash OpenWrt:
      
      7. SSH into OpenWrt from one of the LAN ports
      8. Copy the file openwrt-ipq807x-generic-redmi_ax6-squashfs-sysupgrade.bin to the /tmp directory
      9. Sysupgrade the device:
      sysupgrade -n /tmp/openwrt-ipq807x-generic-redmi_ax6-squashfs-sysupgrade.bin
      
      Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired.
      Signed-off-by: NZhijun You <hujy652@gmail.com>
      8253cb2d
    • R
      ipq807x: add Xiaomi AX3600 · 8364f081
      Robert Marko 提交于
      Xiaomi AX3600 is a budget 802.11ax dual-band router/AP.
      Specifications:
      * CPU: Qualcomm IPQ8071A Quad core Cortex-A53 1.4GHz
      * RAM: 512MB of DDR3
      * Storage: 256MB of parallel NAND
      * Ethernet: 4x1G RJ45 ports (QCA8075) with 1x status LED per port
      * WLAN:
      	* PCI based Qualcomm QCA9889 1x1 802.11ac Wawe 2 for IoT
      	* 2.4GHz: Qualcomm QCN5024 2x2 802.11b/g/n/ax 574 Mbps PHY rate
      	* 5GHz: Qualcomm QCN5054 4x4@80MHz or 2x2@160MHz 802.11a/b/g/n/ac/ax 2402 PHY rate
      * LED-s:
      	* System (Blue and Yellow)
      	* IoT (Blue)
      	* Network (Blue and Yellow)
      * Buttons: 1x Soft reset
      * Power: 12V DC Jack
      
      Installation instructions:
      
      Obtaining SSH access is mandatory
      https://openwrt.org/inbox/toh/xiaomi/xiaomi_ax3600#obtain_ssh_access
      
      Installation is done by the ubiformat method, through SSH:
      1. Open an SSH shell to the router
      2. Copy the file openwrt-ipq807x-generic-xiaomi_ax3600-initramfs-factory.ubi to the /tmp directory
      3. Check which rootfs partition is your router booted in (0 = rootfs | 1 = rootfs_1):
      nvram get flag_boot_rootfs
      
      4. Find the rootfs and rootfs_1 mtd indexes respectively:
      cat /proc/mtd
      Please confirm if mtd12 and mtd13 are the correct indexes from above!
      
      5. Use the command ubiformat to flash the opposite mtd with UBI image:
      
      If nvram get flag_boot_rootfs returned 0:
      ubiformat /dev/mtd13 -y -f /tmp/openwrt-ipq807x-generic-xiaomi_ax3600-initramfs-factory.ubi -s 2048 -O 2048 && nvram set flag_boot_rootfs=1 && nvram set flag_last_success=1 && nvram commit
      
      otherwise:
      ubiformat /dev/mtd12 -y -f /tmp/openwrt-ipq807x-generic-xiaomi_ax3600-initramfs-factory.ubi -s 2048 -O 2048 && nvram set flag_boot_rootfs=0 && nvram set flag_last_success=0 && nvram commit
      
      6. Reboot the device by:
      reboot
      
      Previous commands flashed an ubinized OpenWrt initramfs that will serve as the intermediate step
      since OpenWrt uses unified rootfs in order to fully utilize NAND and provide enough space for packages.
      Continue in order to pernamently flash OpenWrt:
      
      7. SSH into OpenWrt from one of the LAN ports
      8. Copy the file openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-sysupgrade.bin to the /tmp directory
      9. Sysupgrade the device:
      sysupgrade -n /tmp/openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-sysupgrade.bin
      
      Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired.
      Signed-off-by: NChristian Marangi <ansuelsmth@gmail.com>
      Signed-off-by: NRobert Marko <robimarko@gmail.com>
      8364f081