openwrt/package/firmware
Roland Reinl 00bb18b851
Some checks are pending
Build Kernel / Build all affected Kernels (push) Waiting to run
Build all core packages / Build all core packages for selected target (push) Waiting to run
ipq40xx: Add support for Linksys MR6350
This pull request is based on
- the discussions in https://forum.openwrt.org/t/adding-openwrt-support-for-linksys-mr6350
- https://github.com/openwrt/openwrt/pull/11405 which added support for similar devices.

Device Specs:
- IPQ4019
- Quad Core CPU
- 256 MB RAM
- 256 MB FLASH
- 4 LAN ports, 1 WAN port
- 2.4GHz (802.11n) and 5GHz (802.11c) wifi
- 3 LEDs (Red, blue, green) which are routed to one indicator at the top of the case
- 2 buttons (Reset, WPS)

Disassembling the device:
- There are 4 screws at the bottom of the device which must be removed
- Two are under the fron rubber feets
- Two are under the labels in the back (corner next to the rear rubber feets)

Serial interface:
- The serial interface is already populated on the device with a 6-pin header
- Pin 1 is next to the heatsink
- Pinout: 1: 3.3V, 2: TX, 3: RX, 4: unknown, 5: GND, 6: GND
- Settings: 115200, 8N1

Migrating to OpenWrt requires multiple steps:
- Load and boot the initramfs image
- Adapt U-Boot settings to support bigger kernels
- Flash the sysupgrade image

Load and boot initramfs:
- Connect serial interface
- Set up a TFTP server on IP 192.168.1.254
- Copy openwrt-ipq40xx-generic-linksys_mr6350-initramfs-zImage.itb to TFTP server
- Rename file to C0A80101.img
- Boot up the device and stop in U-Boot
- Run the following U-Boot commands after a link has been established:
  tftp
  bootm
- Initramfs image is started now.

Adapt U-Boot settings to support bigger kernels:
- Run "fw_printenv" in the initramfs image  after booting
- There should be an entry kernsize=300000 which indicates the maximum size for the kernel is 3MB
- Execute "fw_setenv kernsize 500000" to increase the max kernel size to 5MB
- Check that the change are applied with "fw_printenv"

Flash the sysupgrade image:
- Default sysupgrade routine either with a initramfs image containing LuCI or via command line.

Revert back to OEM firmware:
- Only tested with FW_MR6350_1.1.3.210129_prod.img
- Flash the OEM firmware via sysupgrade
- Forced update is required

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17977
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-15 11:28:22 +01:00
..
ath10k-ct-firmware ath10k-ct-firmware: update wave2 chip firmware to latest beta version 2025-08-24 00:21:26 +02:00
ath11k-firmware ath11k-firmware: fix legacy FW tarball hash 2025-05-08 13:19:34 +02:00
broadcom-sprom treewide: update PKG_MIRROR_HASH to zst 2024-04-06 11:24:18 +02:00
cypress-firmware cypress-firmware: fix version for APK 2024-10-29 00:07:51 +01:00
cypress-nvram cypress-nvram: consolidate NVRAM packages 2022-11-16 20:14:13 +01:00
intel-microcode intel-microcode: update to 20250812 2025-09-17 23:04:09 +02:00
ipq-wifi ipq40xx: Add support for Linksys MR6350 2025-11-15 11:28:22 +01:00
ixp4xx-microcode firmware: Resurrect the ixp4xx microcode package 2023-10-25 11:28:15 +02:00
lantiq lantiq-gphy-firmware: add package 2025-03-15 13:52:40 +01:00
layerscape ppfe-firmware: Bump to lf-6.12.20-2.0.0 2025-08-17 19:00:58 +02:00
linux-firmware linux-firmware: package mt7987-2p5g-phy-firmware 2025-11-14 02:25:15 +00:00
murata-firmware murata-firmware: add new package 2024-11-23 15:53:21 +01:00
murata-nvram murata-nvram: add symlink for STM32MP157C-DK2 2025-04-19 18:41:16 +02:00
omnia-mcu-firmware packages: drop DEVICE specific dependency for omnia 2024-11-05 09:59:49 +01:00
prism54-firmware prism54-firmware: set DL_DIR to package specific subdirectory 2022-09-22 16:48:37 -04:00
wireless-regdb wireless-regdb: Update to version 2025.10.07 2025-11-08 21:15:51 +01:00