Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
toh:linksys:mr8300 [2024/07/22 07:34] – [Flash Layout] badulesiatoh:linksys:mr8300 [2024/12/04 11:26] – [Installation of 23.05/24.10 or snapshot] typo badulesia
Line 60: Line 60:
 } --> } -->
  
-The MR8300 is a dual partition device. Each time you install/upgrade the system (from OEM or OpenWrt), it overwrites the //other// partition, not the active oneYou may want to keep the OEM firmware in one partition, as a secure fallback. But you may also consider installing OpenWrt on both partitions, it works flawlessly. Since 22.03.3, OpenWrt has the ability to flash an OEM firmware image, that would restore the router to its original state.+OEM stock URL: [[https://store.linksys.com/support-article?articleNum=47131]]
  
 +The MR8300 is a dual partition device. Each time you install/upgrade the system (from OEM or OpenWrt), it overwrites the //other// partition, not the active one. You may want to keep the OEM firmware in one partition, as a secure fallback. But you may also consider installing OpenWrt on both partitions, it works flawlessly. Since 22.03.3, OpenWrt has the ability to flash an OEM firmware image, that would restore the router to its original state.
 +[[http://example.com|External Link]]
 <WRAP center alert> <WRAP center alert>
-**Installation of 23.05 (or later, main snapshot) requires a two steps installation.** First you'll need to install 22.03 for changing a boot variable. Than you can install 23.05 (or later). **Don't try to install or upgrade to 23.05 directly, it will soft-brick your device!**+**Installation of 23.05/24.10 (also main snapshot) requires a two steps installation.** First you'll need to install 22.03 for changing a boot variable. Than you can install 23.05/24.10 (or main). **Don't try to install or upgrade to 23.05/24.10 directly, it will soft-brick your device!** Procedure is easy and described below.
 </WRAP> </WRAP>
  
-:!: **KNOWN ISSUES**  (all solved). +:!: **KNOWN ISSUES SOLVED**  
-  * The USB port seems to be incorrectly managed due to a faulty hardware design. This issue is solved since 21.02.7, 22.03.5, 23.05.0 and main snapshot, and should be of no concern anymoreYou can read about in this thread [[https://forum.openwrt.org/t/linksys-mr8300-openwrt-22-03-0-rc4-usb-port-powered-storage-devices-not-working/131391]]. +  * **USB port** seems to be incorrectly managed due to a faulty hardware design. Solved since 21.02.7, 22.03.5 and later. [[https://forum.openwrt.org/t/linksys-mr8300-openwrt-22-03-0-rc4-usb-port-powered-storage-devices-not-working/131391]]. 
-  * **DO NOT install or upgrade to 21.02.6 or 22.03.4**. Early march 2023, a kernel change introduced a regression causing mtd detection to fail: hence the device stops after a couple of secondsIt took several weeks to fix the issue. Unfortunatelyin the meantime were released 21.02.6 and 22.03.4 stables. Shorly after were released 21.02.7 and 22.03.5 to address the issue. Any further releases are also safe to install. Forum threads about the issue [[https://forum.openwrt.org/t/openwrt-snapshot-r22302-on-mr8300/154878]] and [[https://forum.openwrt.org/t/mr8300-doesnt-boot-22-03-4-as-expected/157126/2]]. Commit to kernel [[https://github.com/openwrt/openwrt/commit/aad34818b50029e07ed9221ae46f9770d6e29785]].+  * **21.02.6 and 22.03.4** faulty mtd detection. **DO NOT** install these versionsthey won't boot. Forum threads about the issue [[https://forum.openwrt.org/t/openwrt-snapshot-r22302-on-mr8300/154878]] and [[https://forum.openwrt.org/t/mr8300-doesnt-boot-22-03-4-as-expected/157126/2]]. Commit to kernel [[https://github.com/openwrt/openwrt/commit/aad34818b50029e07ed9221ae46f9770d6e29785]].
  
 +:!: **KNOWN ISSUES with 24.10** 
 +  * **LAN to LAN performance**. While running 24.10 and main, LAN to LAN transfer suffer from low performance and high CPU usage. This may possibly affect other ipq40xx devices. [[https://forum.openwrt.org/t/lan-issue-with-ipq40xx-24-10-and-main/215252]]
  
 ==== Flash Layout ==== ==== Flash Layout ====
Line 76: Line 80:
 Result of ''cat /proc/mtd'' Result of ''cat /proc/mtd''
  
 +<code>
 dev:    size   erasesize  name dev:    size   erasesize  name
- 
- 
 mtd0: 00100000 00020000 "sbl1" mtd0: 00100000 00020000 "sbl1"
- 
 mtd1: 00100000 00020000 "mibib" mtd1: 00100000 00020000 "mibib"
- 
 mtd2: 00100000 00020000 "qsee" mtd2: 00100000 00020000 "qsee"
- 
 mtd3: 00080000 00020000 "cdt" mtd3: 00080000 00020000 "cdt"
- 
 mtd4: 00080000 00020000 "appsblenv" mtd4: 00080000 00020000 "appsblenv"
- 
 mtd5: 00080000 00020000 "ART" mtd5: 00080000 00020000 "ART"
- 
 mtd6: 00200000 00020000 "appsbl" mtd6: 00200000 00020000 "appsbl"
- 
 mtd7: 00080000 00020000 "u_env" mtd7: 00080000 00020000 "u_env"
- 
 mtd8: 00040000 00020000 "s_env" mtd8: 00040000 00020000 "s_env"
- 
 mtd9: 00040000 00020000 "devinfo" mtd9: 00040000 00020000 "devinfo"
- 
 mtd10: 05800000 00020000 "kernel" mtd10: 05800000 00020000 "kernel"
- 
 mtd11: 05300000 00020000 "rootfs" mtd11: 05300000 00020000 "rootfs"
- 
 mtd12: 05800000 00020000 "alt_kernel" mtd12: 05800000 00020000 "alt_kernel"
- 
 mtd13: 05300000 00020000 "alt_rootfs" mtd13: 05300000 00020000 "alt_rootfs"
- 
 mtd14: 00100000 00020000 "sysdiag" mtd14: 00100000 00020000 "sysdiag"
- 
 mtd15: 04680000 00020000 "syscfg" mtd15: 04680000 00020000 "syscfg"
 +</code>
  
 Result of ''dmesg'' Result of ''dmesg''
 +<code>
 0x000000000000-0x000000100000 : "sbl1" 0x000000000000-0x000000100000 : "sbl1"
- 
 0x000000100000-0x000000200000 : "mibib" 0x000000100000-0x000000200000 : "mibib"
- 
 0x000000200000-0x000000300000 : "qsee" 0x000000200000-0x000000300000 : "qsee"
- 
 0x000000300000-0x000000380000 : "cdt" 0x000000300000-0x000000380000 : "cdt"
- 
 0x000000380000-0x000000400000 : "appsblenv" 0x000000380000-0x000000400000 : "appsblenv"
- 
 0x000000400000-0x000000480000 : "ART" 0x000000400000-0x000000480000 : "ART"
- 
 0x000000480000-0x000000680000 : "appsbl" 0x000000480000-0x000000680000 : "appsbl"
- 
 0x000000680000-0x000000700000 : "u_env" 0x000000680000-0x000000700000 : "u_env"
- 
 0x000000700000-0x000000740000 : "s_env" 0x000000700000-0x000000740000 : "s_env"
- 
 0x000000740000-0x000000780000 : "devinfo" 0x000000740000-0x000000780000 : "devinfo"
- 
 0x000000780000-0x000005f80000 : "kernel" 0x000000780000-0x000005f80000 : "kernel"
- 
 0x000000c80000-0x000005f80000 : "rootfs" 0x000000c80000-0x000005f80000 : "rootfs"
- 
 0x000005f80000-0x00000b780000 : "alt_kernel" 0x000005f80000-0x00000b780000 : "alt_kernel"
- 
 0x000006480000-0x00000b780000 : "alt_rootfs" 0x000006480000-0x00000b780000 : "alt_rootfs"
- 
 0x00000b780000-0x00000b880000 : "sysdiag" 0x00000b780000-0x00000b880000 : "sysdiag"
- 
 0x00000b880000-0x00000ff00000 : "syscfg" 0x00000b880000-0x00000ff00000 : "syscfg"
 +</code>
 ==== Installation from OEM GUI ==== ==== Installation from OEM GUI ====
  
Line 154: Line 127:
 //Installation of OpenWrt// //Installation of OpenWrt//
  
-**The very first OpenWrt you need to flash is latest stable 22.03**. Download the ''factory.bin'' image [[https://downloads.openwrt.org/releases/22.03.6/targets/ipq40xx/generic/openwrt-22.03.6-ipq40xx-generic-linksys_mr8300-squashfs-factory.bin]]. If you want to install a later version, you'll need to perform a change in the boot variables (see below), so you can't install it in the first way.+**The very first OpenWrt you need to flash is latest stable 22.03**. You can't install a more recent version (23.05 or later) directly, you need to perform a change in the boot variables before (see below), and so you need 22.03 for this. Download the latest ''factory.bin'' image [[https://downloads.openwrt.org/releases/22.03.7/targets/ipq40xx/generic/openwrt-22.03.7-ipq40xx-generic-linksys_mr8300-squashfs-factory.bin]]. 
 Use either one of these methods for flashing, they are equivalent: Use either one of these methods for flashing, they are equivalent:
  
Line 171: Line 144:
 It is advised to install ''[[packages:pkgdata:luci-app-advanced-reboot|luci-app-advanced-reboot]]'' to easily switch from one partition to another. It is advised to install ''[[packages:pkgdata:luci-app-advanced-reboot|luci-app-advanced-reboot]]'' to easily switch from one partition to another.
  
-You will now have the Linksys OEM into the first partition as a fallback, and OpenWrt into the second partition as active. Setup OpenWrt as you like, and backup the settings. If you want to get rid of Linksys OEM, than just flash again the same OpenWrt factory image from the fresh installed OpenWrt. Since OpenWrt 22.03.3, you can easily restore back Linksys OEM by just flashing the firmware image.+You will now have the Linksys OEM into the first partition as a fallback, and OpenWrt into the second partition as active. Setup OpenWrt as you like, and backup the settings. If you want to get rid of Linksys OEM, than just flash again the same OpenWrt factory image from the fresh installed OpenWrt (keeping the settings). Since OpenWrt 22.03.3, you can easily restore back Linksys OEM by just flashing the firmware image.
  
 ==== Installation of 22.03 ==== ==== Installation of 22.03 ====
  
-Installation can be done from OEM GUI as described previously. Install at least 22.03.3 (**NOT** 22.03.4) for its ability to flash everything (Linksys OEM, OpenWrt factory of sysupgrade). +Installation can be done from OEM GUI as described previously. Install at least 22.03.3 (**NOT** 22.03.4) for its ability to flash everything (Linksys OEM, OpenWrt factory of sysupgrade). Latest 22.03.7 is recommanded. [[https://downloads.openwrt.org/releases/22.03.7/targets/ipq40xx/generic/openwrt-22.03.7-ipq40xx-generic-linksys_mr8300-squashfs-factory.bin]] 
-==== Installation of 23.05 or snapshot ====+==== Installation of 23.05/24.10 or snapshot ====
  
 <WRAP important> <WRAP important>
 **WARNING FOR INSTALLATION** **WARNING FOR INSTALLATION**
  
-Installation of 23.05 or snapshot requires two steps.+Installation of 23.05/24.10 or snapshot requires two steps.
   - a previous working OpenWrt 22.03 to run several commands to change a bootloader variable. This is only needed once in the lifetime of the device.   - a previous working OpenWrt 22.03 to run several commands to change a bootloader variable. This is only needed once in the lifetime of the device.
-  - flashing 23.05 or snapshot. +  - flashing 23.05/24.10 or snapshot. 
-**Don't try to flash directly 23.05 or snapshot, it won't work.**+**Don't try to flash directly 23.05/24.10, it won't work.**
 </WRAP> </WRAP>
  
  
-**Preliminary**. Despite its fair amount of flash memory (256MB), the MR8300 has a tiny kernel partition limited to 3MB. This is sufficient to boot Linksys OEM and OpenWrt 22.03 (based on kernel 5.10). Meanwhile this is **not enough** to boot kernel 5.15 (23.05) or 6.(snapshot). There is a workaround for this situation, and it involves **changing a bootloader variable**. This is only needed **once in the lifetime** of the device, and can be done easily via SSH. Once the bootloader has been tweaked, the device can boot everything: Linksys OEM, OpenWrt 22.03, 23.05 and snapshot.+**Preliminary**. Despite its fair amount of flash memory (256MB), the MR8300 has a tiny kernel partition limited to 3MB. This is sufficient to boot Linksys OEM and OpenWrt 22.03 (based on kernel 5.10). Meanwhile this is **not enough** to boot kernel 5.15 (23.05) or 6.(24.10). There is a workaround for this situation, and it involves **changing a bootloader variable**. This is only needed **once in the lifetime** of the device, and can be done easily via SSH. Once the bootloader has been tweaked, the device can boot everything: Linksys OEM, OpenWrt 22.03, 23.05, 24.10 and snapshot. 
 + 
 +<WRAP center round info 80%> 
 +**Since 22.03.3, OpenWrt can flash any OpenWrt stable/snapshot factory/sysupgrade image, and also Linksys OEM**. Flashing Linksys OEM allows to restore the device to its original state. 
 +</WRAP>
  
-Since 22.03.3, OpenWrt can flash any OpenWrt stable/snapshot factory/sysupgrade image, and also Linksys OEM. Flashing Linksys OEM allows to restore the device to its original state. Meanwhile flashing 23.05 or master snapshot still needs the bootloader variable change described below. 
  
 === First step: install 22.03 to run commands from SSH === === First step: install 22.03 to run commands from SSH ===
  
-You need to have 22.03.3 (or above but not 22.03.4) already installed. If you haven't, than install the latest stable 22.03 as described previously. Open a SSH command console.+You need to have any 22.03 (**not** 22.03.4) already installed. If you haven't, than install the latest stable 22.03 as described previously. Once done, open [[docs:guide-quick-start:sshadministration|SSH command]] console.
  
   - Check your previous bootloader variables. Enter:<code>fw_printenv</code>Look for output similar to ''kernsize=300000''. This is the default 3 MB size of kernel.   - Check your previous bootloader variables. Enter:<code>fw_printenv</code>Look for output similar to ''kernsize=300000''. This is the default 3 MB size of kernel.
Line 201: Line 177:
   - Reboot the device. <code bash>reboot</code> It should boot the current 22.03 just as previously.   - Reboot the device. <code bash>reboot</code> It should boot the current 22.03 just as previously.
  
-Your device can now flash and run anythingLinksys OEM, OpenWrt 21.02, 22.03, 23.05 and main snapshot+=== Second stepinstall 23.05/24.10 or snapshot ===
  
-=== Second step: install 23.05 or snapshot ===+If you want to keep OEM GUI, than return back to it (''luci-app-advanced-reboot'' or button method) and flash a 23.05/24.10 (or snapshot) ''factory'' image. 
 +From OpenWrt 22.03 flash a 23.05/24.10 (or snapshot) ''sysupgrade'' image. If you are running 22.03.3 or above, you can either flash a ''factory'' image.
  
-If you want to keep OEM GUI, than return back to it (''luci-app-advanced-reboot'' or button method) and flash a ''factory'' image (23.05 or snapshot)+In any case, **DO NOT keep settings** while flashing. The device will use DSA and need to be configured from scratch
-From OpenWrt 22.03 you can use either a ''factory'' image or a ''sysupgrade'' image**DO NOT** keep settingsAnyway, keep in mind this will overwrite the other partitionnot the active one.+Upgrading from 22.03 to 24.10 is not officialy supportedMeanwhile considering that the upgrade is done without keeping settingsit is assumed that it can be done confidently.
  
-Once in 23.05, to get rid of OEM GUI (if still present on a partition), just flash again with the same image you have just used. You will have both partitions running with 23.05. You can always return to OEM GUI by flashing it from OpenWrt in the same way as any upgrading.+Once in 23.05/24.10, to get rid of OEM GUI (if still present), just flash again with the same image you have just used. You will have both partitions running with 23.05/24.10. You can always reinstall OEM GUI by flashing it from OpenWrt in the same way as any upgrade.
  
-**Do not** try to restore any previous 22.03 config file, it isn't compatible. The device now runs with DSA and need to be configured from scratch (meanwhile advanced users may know how to manually restore some settings). Backup your settings.+**DO NOT** try to restore any previous 22.03 config file, it isn't compatible due to DSA. Advanced users may know how to manually restore some settings. Backup your settings.
  
 Original informations for installation of a kernel 5.15 based OpenWrt : [[https://github.com/openwrt/openwrt/pull/11405]] Original informations for installation of a kernel 5.15 based OpenWrt : [[https://github.com/openwrt/openwrt/pull/11405]]
Line 238: Line 215:
   * OpenWrt on both partitions. Download a ''sysupgrade'' file, and upgrade from SSH or Luci. Notice that it won't flash the active partition, but the other one. Since 21.02.7 and 22.03.5, upgrading can keep the settings from the previous partition (as expected).   * OpenWrt on both partitions. Download a ''sysupgrade'' file, and upgrade from SSH or Luci. Notice that it won't flash the active partition, but the other one. Since 21.02.7 and 22.03.5, upgrading can keep the settings from the previous partition (as expected).
  
-:!: **DO NOT upgrade from 22.03 to 23.05/main snapshot while keeping settings**: config syntax isn't the same (due to DSA) and it will lead to a soft-brick.+:!: **DO NOT upgrade from 22.03 to 23.05/24.10/main snapshot while keeping settings**: config syntax isn't the same (due to DSA) and it will lead to a soft-brick.
 ===== Debricking ===== ===== Debricking =====
 === Recovery (Automatic) === === Recovery (Automatic) ===
-The MR8300 is a dual firmware device.  ie. there are 2 partitions and Linksys firmware is copied on both partitions at unpacking. If one partition happens to be corrupted/bricked, here is a way to toggle between partitions manually. It will allows to boot the //other// partitions, which is assumed to be safe.+The MR8300 is a dual firmware device.  ie. there are 2 partitions and Linksys firmware is copied on both partitions at unpacking. If one partition happens to be corrupted/bricked, here is a way to toggle between partitions manually. It will allows to boot the //other// partition, which is assumed to be safe.
   - Switch On and wait 10 seconds   - Switch On and wait 10 seconds
   - Switch Off and wait 5 seconds   - Switch Off and wait 5 seconds
Line 247: Line 224:
   - U-boot will now boot the other partition. You should be able to access your router on LAN.   - U-boot will now boot the other partition. You should be able to access your router on LAN.
  
-Since 5.15 kernel based snapshots (Jan 1st 2023) and 22.03.3, OpenWrt is now able to flash directly a Linksys OEM image. Force the flash as the warning message inform you to do so. You can easily reverse to Linksys OEM if you need to.+Since 22.03.3, OpenWrt is now able to flash directly a Linksys OEM image. Force the flash as the warning message inform you to do so. You can now easily reverse to Linksys OEM if you need to.
  
 Here is a useful [[https://forum.openwrt.org/t/openwrt-23-05-0-rc2-second-release-candidate/164308/173|OpenWrt forum post]] containing some information on how to use serial and TFTP to recover booting from OpenWrt from a partially bricked MR8300. Here is a useful [[https://forum.openwrt.org/t/openwrt-23-05-0-rc2-second-release-candidate/164308/173|OpenWrt forum post]] containing some information on how to use serial and TFTP to recover booting from OpenWrt from a partially bricked MR8300.
  • Last modified: 2024/12/11 17:19
  • by badulesia