kernel: Add new platform EcoNet MIPS
authorCaleb James DeLisle <[email protected]>
Mon, 1 Sep 2025 10:09:22 +0000 (10:09 +0000)
committerHauke Mehrtens <[email protected]>
Thu, 11 Sep 2025 22:51:58 +0000 (00:51 +0200)
commit73d0f9246042a487faf930a0571bd8c080bbc78f
tree466a4add035b508b1d58d8cca3f3da0ecdd690c9
parent0575c3a181261cfaa8fe014e8e9c20ddc19c5996
kernel: Add new platform EcoNet MIPS

EcoNet EN75xx is a big endian MIPS platform used in XPON (fiber),
DSL, and SIM (3g/4g) applications. Complete GPL vender SDKs exist
for this platform, but are based on Linux 2.6.

The bulk of this submission has already been accepted upstream:
https://patchwork.kernel.org/project/linux-mips/list/?series=960479&state=*

This platform uses a bootloader that is derived from old TrendChip
code. This bootloader implements a frustratingly complex Bad Block
Table which is implemented here in en75_bmt.c

This BMT is not upstreamed because it depends on mtk_bmt framework
which likewise is not upstreamed.

This BMT system rewrites block indexes in flash and if the bootloader
considers it to be corrupted, it will attempt to automatically rebuild
on boot. So without implementing the algorithm, you can't safely use
the disk at all.

Signed-off-by: Caleb James DeLisle <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19021
Signed-off-by: Hauke Mehrtens <[email protected]>
22 files changed:
target/linux/econet/Makefile [new file with mode: 0644]
target/linux/econet/dts/en751221.dtsi [new file with mode: 0644]
target/linux/econet/en751221/config-6.12 [new file with mode: 0644]
target/linux/econet/en751221/profiles/00-default.mk [new file with mode: 0644]
target/linux/econet/en751221/target.mk [new file with mode: 0644]
target/linux/econet/files/drivers/mtd/nand/en75_bmt.c [new file with mode: 0644]
target/linux/econet/image/Makefile [new file with mode: 0644]
target/linux/econet/patches-6.12/001-v6.16-dt-bindings-interrupt-controller-Add-EcoNet-EN751221.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/002-v6.16-irqchip-Add-EcoNet-EN751221-INTC.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/003-v6.16-dt-bindings-vendor-prefixes-Add-EcoNet.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/004-v6.16-dt-bindings-timer-Add-EcoNet-EN751221-HPT-CPU-Timer.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/005-v6.16-clocksource-drivers-Add-EcoNet-Timer-HPT-driver.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/006-v6.16-dt-bindings-mips-Add-EcoNet-platform-binding.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/007-v6.16-mips-Add-EcoNet-MIPS-platform-support.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/008-v6.16-dt-bindings-vendor-prefixes-Add-SmartFiber.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/009-v6.16-mips-dts-Add-EcoNet-DTS-with-EN751221-and-SmartFiber.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/010-v6.16-MAINTAINERS-Add-entry-for-newly-added-EcoNet-platfor.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/011-v6.16-mips-econet-Fix-incorrect-Kconfig-dependencies.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/300-spi-Add-support-for-the-Airoha-EN7523-SoC-SPI-contro.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/301-spi-Airoha-adapt-to-support-en75-mips.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/901-nand-enable-en75-bbt.patch [new file with mode: 0644]
target/linux/econet/patches-6.12/902-snand-mtk-bmt-support.patch [new file with mode: 0644]