1
0
Fork 0
forked from mirror/openwrt
openwrt/target/linux
Markus Stockhausen ccbff8bbdd realtek: add rt-loader (runtime loader)
The bootloader of many Realtek switches only supports gzipped kernel images.
With limited flash space that might get critical in future versions. For better
compression allow support for compressed images. For this a new loader was
developed. Several ideas have been taken over from the existing lzma loader
but this has been enhanced to make integration simpler. What is new:

- Loader is position independent. No need to define load addresses
- Loader identifies device memory on its own
- Loader uses "official" upstream kernel lzma uncompress
  https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/lib/decompress_unlzma.c
- Loader uses "official" UNMODIFIED nanoprintg that is used by several
  bare metal projects. https://github.com/charlesnicholson/nanoprintf

Compiled the loader ist just under 12KiB and during boot it will show:

rt-loader
Found RTL8380M (chip id 6275C) with 256MB
Relocate 2924240 bytes from 0x80100000 to 0x8fce0000
Extract kernel with 2900144 bytes from 0x8fce521c to 0x80100000...
Extracted kernel size is 9814907 bytes
Booting kernel from 0x80100000 ...

[    0.000000] Linux version 6.12.33 ...
[    0.000000] RTL838X model is 83806800
...

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18397
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-06-28 16:14:55 +02:00
..
airoha kernel: bump 6.6 to 6.6.89 2025-05-03 19:57:53 +02:00
apm821xx apm821xx: replace kmod-usb3 with kmod-usb-xhci-pci-renesas 2025-05-17 20:14:27 +02:00
armsr kernel: bump 6.6 to 6.6.93 2025-06-06 10:01:31 +02:00
at91 treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
ath79 ath79: enable USB by default on hAP ac 2025-06-19 20:42:02 +02:00
bcm27xx kernel: bump 6.12 to 6.12.34 2025-06-21 13:50:11 +02:00
bcm47xx treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
bcm53xx kernel: bump 6.6 to 6.6.90 2025-05-13 21:43:34 +02:00
bcm4908 bcm63xx-cfe: install into image staging dir 2025-04-13 10:44:19 +02:00
bmips bmips: update BCM531x5 RGMII delays patch 2025-06-18 11:12:00 +02:00
d1 kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
gemini gemini: Move back to using statically compiled PHYs 2025-06-03 23:05:15 +02:00
generic kernel: Fix IPv6 UDP fragmentation regression 2025-06-22 13:32:51 +02:00
imx imx: venice: disable PCI AER 2025-06-23 11:49:12 +02:00
ipq40xx ipq40xx: config-6.6: add new option 2025-06-06 10:01:31 +02:00
ipq806x ipq806x: add support for IgniteNet SunSpot AC Wave2 2025-06-25 02:07:02 +01:00
ixp4xx ixp4xx: Switch to kernel v6.12 2025-06-03 01:45:40 +02:00
kirkwood treewide: dts: trim "#size-cells" from "gpio-export" node 2025-05-18 19:35:00 +02:00
lantiq treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
layerscape kernel: bump 6.6 to 6.6.88 2025-05-03 19:57:53 +02:00
loongarch64 kernel: Add KERNEL_DCB (Data Center Bridging) 2025-03-09 17:05:26 +01:00
malta malta: 6.12: enable kernel for testing 2025-05-29 22:46:47 +02:00
mediatek mediatek: mt7988a: 6.12: move SoC dtsi changes to dedicated patch 2025-06-26 01:10:34 +01:00
mpc85xx mpc85xx: fix function name 2025-06-11 18:39:55 +02:00
mvebu mvebu: add support for Check Point V-81 2025-06-22 22:17:20 +02:00
mxs mxs: drop 6.6 support 2025-05-24 16:15:53 +02:00
octeon kernel: reorder kernel symbol configs 2025-05-29 23:05:02 +02:00
omap kernel: Activate CONFIG_NET_SWITCHDEV in generic config 2025-03-15 13:54:59 +01:00
pistachio kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
qoriq kernel: Activate CONFIG_NET_SWITCHDEV in generic config 2025-03-15 13:54:59 +01:00
qualcommax qualcommax: ipq60xx: WAX610 remove unmountable oem partitions on upgrade 2025-06-24 13:51:15 +02:00
qualcommbe qualcommbe: ipq95xx: add 8devices Kiwi-DVK support 2025-06-25 10:20:38 +02:00
ramips ramips: mt76x8: add support for Keenetic 4G (KN-1212) 2025-06-22 23:13:27 +02:00
realtek realtek: add rt-loader (runtime loader) 2025-06-28 16:14:55 +02:00
rockchip rockchip: add kernel 6.12 as testing kernel 2025-06-14 17:22:52 +02:00
sifiveu kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
siflower kernel: bump 6.6 to 6.6.94 2025-06-21 13:54:17 +02:00
starfive kernel: bump 6.12 to 6.12.34 2025-06-21 13:50:11 +02:00
stm32 stm32: modules: add missing dependency for stm32-dfsdm-adc 2025-06-21 14:28:42 +02:00
sunxi generic: 6.12: backport accepted BCM5325 patches 2025-06-18 11:11:54 +02:00
tegra kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
uml kernel: bump 6.12 to 6.12.33 2025-06-12 12:42:15 +02:00
x86 x86: config-6.12: enable RAPL interface 2025-06-22 20:10:12 +02: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