openwrt/target/linux
George Moussalem 9a7192c08e qualcommax: ipq50xx: Add support for Linksys MR5500
Add support for Linksys MR5500 (Hydra 6 Pro).

Speficiations:
* SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz)
* Memory: Kingston D2516ECMDXGJD (512 MiB)
* Serial Port: 3v3 TTL 115200n8
* Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax)
         QCN9024 (4x4:4 5 Ghz 802.11an/ac/ax)
* Ethernet: IPQ5018 integrated virtual switch connected to an external
            QCA8337 switch (4 Ports 10/100/1000 GBASE-T)
* Flash: Gigadevice GD5F2GQ5REYIH (256 MiB)
* LEDs: 1x multi-color PWM LED
        1x blue led for USB (GPIO 19 Active High)
* Buttons: 1x WPS (GPIO 27 Active Low)
           1x Reset (GPIO 28 Acive Low)
           5x ethernet port LEDs (amber for activity & green for link up)
* Peripherals: 1x USB2 (powered by GPIO 17 Active Low)
               support for USB3 will be added in a separate PR
* FCC ID: 2AYRA-03734

Flash instructions:
1. On OEM firmware, login to the device (typically at http://192.168.1.1) and click 'CA'
in the bottom right corner -> Connectivity -> Manual Upgrade. Alternatively, browse to
http://<router IP>/fwupdate.html.
Upgrade firmware using openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin image.
Optionally install on second partition, after first boot check actual partition:
fw_printenv -n boot_part
and install firmware on second partition using command in case of 2:
mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin kernel
and in case of 1:
mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin alt_kernel
2. Installation using serial connection from OEM firmware (default login: root, password: admin):
fw_printenv -n boot_part
In case of 2:
flash_erase /dev/mtd12 0 0
nandwrite -p /dev/mtd12 openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin
or in case of 1:
flash_erase /dev/mtd14 0 0
nandwrite -p /dev/mtd14 openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin
After first boot install firmware on second partition:
mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin kernel
or:
mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_mr5500-squashfs-factory.bin alt_kernel
3. Back to the OEM firmware.
Download firmware from OEM website:
MR5500: https://support.linksys.com/kb/article/207-en/
From serial or SSH:
fw_printenv boot_part
in case of 1:
mtd -r -e alt_kernel -n write FW_MR5500_1.1.2.209598_prod.img alt_kernel
else in case of 2:
mtd -r -e kernel -n write FW_MR5500_1.1.2.209598_prod.img kernel
4. Boot from USB
This allows you loading an OpenWrt image into RAM and is meant for recovery scenarios only.
Enable loading image from USB in u-boot. From serial or SSH:
fw_setenv bootusb 'usb start && usbboot &loadaddr && bootm $loadaddr'
fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'
Copy OpenWrt initramfs image to USB:
dd bs=1M if=openwrt-qualcommax-ipq50xx-linksys_mr5500-initramfs-uImage.itb of=/dev/sda

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17958
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-03-02 11:42:48 +01:00
..
airoha kernel: bump 6.6 to 6.6.79 2025-02-23 12:17:38 +01:00
apm821xx apm821xx: NETGEAR WNDR4700: Fix compat version 2025-01-27 23:36:32 +01:00
archs38 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
armsr armsr: add Hyper-V on Arm64 support 2025-01-24 22:19:34 +01:00
at91 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
ath79 kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
bcm27xx kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
bcm47xx kernel: bump 6.6 to 6.6.78 2025-02-20 19:27:57 +01:00
bcm53xx linux: use packages kmod-hci-uart and kmod-btusb instead of kmod-bluetooth 2025-02-24 00:08:42 +01:00
bcm4908 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
bmips bmips: shg2500: add missing led controller cells 2025-01-28 08:30:10 +01:00
d1 d1: Use correct module for devices with wifi 2025-01-13 23:38:19 +01:00
gemini gemini: Convert to use module for Realtek switch 2025-02-14 00:34:16 +01:00
generic kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
imx imx: cortexa53: fix sysupgrade image device support for venice 2025-02-16 16:46:51 +01:00
ipq40xx kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
ipq806x ipq806x: make use of ASCII env NVMEM driver for Linksys EAX devices 2025-02-03 01:54:26 +01:00
ixp4xx ixp4xx: Break out mv88e6060 DSA switch to package 2025-01-02 02:30:24 +01:00
kirkwood kirkwood: Make the Marvell DSA switch a module 2024-12-16 22:03:05 +01:00
lantiq lantiq: xrx200: fb7430 set correct label-mac 2025-01-21 00:15:41 +01:00
layerscape kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
loongarch64 loongarch64: remove redundant CONFIG_LIST_HARDENED 2024-12-30 13:53:40 +01:00
malta kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
mediatek mediatek: filogic: migrate ASUS TUF AX6000 to upstream PHY LED control 2025-03-01 03:05:18 +00:00
mpc85xx kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
mvebu mvebu: fix kmod for switch on wrt32x / venom 2025-02-01 00:01:14 +01:00
mxs mxs: adapt default package list for Duckbill devices 2025-02-05 22:00:09 +01:00
octeon octeon/generic: ubnt,erlite: define profile 2025-02-16 16:06:10 +01:00
omap kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
pistachio kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
qoriq qoriq: Switch to use a module for mv88e6xxx 2025-01-26 22:07:44 +01:00
qualcommax qualcommax: ipq50xx: Add support for Linksys MR5500 2025-03-02 11:42:48 +01:00
qualcommbe kernel: bump 6.6 to 6.6.78 2025-02-20 19:27:57 +01:00
ramips kernel: bump 6.6 to 6.6.80 2025-03-02 11:39:59 +01:00
realtek realtek: Drop redundant LED labels 2025-02-28 16:30:29 +01:00
rockchip kernel: bump 6.6 to 6.6.76 2025-02-13 00:03:54 +01:00
sifiveu kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
siflower siflower: move soruce-only flag to sf19a2890 subtarget 2025-02-05 11:12:42 +08:00
starfive kernel: bump 6.6 to 6.6.79 2025-02-23 12:17:38 +01:00
stm32 stm32: enable CONFIG_SMSC_PHY 2025-01-27 14:32:43 +01:00
sunxi sunxi: enable usbgadget feature 2025-02-22 18:43:23 +01:00
tegra kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
uml uml: fix glibc-static check with GCC14 2024-06-22 22:06:06 +02:00
x86 x86: Add kmod-drm-i915 as default package 2025-01-30 13:08:17 +01:00
zynq kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00