From: AK Sharma <maskachoska@yahoo.com>
To: u-boot@lists.u-boot-project.org
Cc: Christian Marangi <ansuelsmth@gmail.com>,
Daniel Schwierzeck <daniel.schwierzeck@gmail.com>,
Dario Binacchi <dario.binacchi@amarulasolutions.com>,
Frieder Schrempf <frieder.schrempf@kontron.de>,
Jerome Forissier <jerome.forissier@arm.com>,
Marek Vasut <marex@denx.de>,
Michael Trimarchi <michael@amarulasolutions.com>,
Tom Rini <trini@konsulko.com>, AK Sharma <maskachoska@yahoo.com>
Subject: [PATCH v1 00/12] mips: add EcoNet/Airoha EN75xx (EN7512/EN7528) SoC support
Date: Wed, 26 Aug 2026 04:11:55 +0530 [thread overview]
Message-ID: <20260825224330.713151-1-maskachoska@yahoo.com> (raw)
In-Reply-To: 20260825224330.713151-1-maskachoska.ref@yahoo.com
This series adds U-Boot support for the EcoNet/Airoha EN75xx MIPS SoC
family: the big-endian MIPS34Kc EN7512/EN7521 and the little-endian
MIPS1004Kc EN7528, used in many GPON/XPON ONT home gateways. It extends
the existing Airoha SNFI SPI-NAND and GDM Ethernet drivers.
It brings up the SoC (TPL/SPL, cache/CM init), and adds the UART, the
EN75 BMT SPI-NAND bad-block mapping, weak bootm decompression hooks for
the coherent CM, and Ethernet. Reference boards for the EN7512 and EN7528
are included, plus the EN7528 R3-hook boot variant.
The DDR calibration stage is a vendor artifact and is not shipped
in-tree. The reference board packages it as a binman "blob-ext"; build
those configs with BINMAN_ALLOW_MISSING=1 and supply the blob to run
(see arch/mips/mach-en75xx/README.ddr-blob). A native DDR-init
implementation is a known TODO.
Tested on a Nokia G-2425G-A (EN7528, MT29F2G01 SPI-NAND): boots to the
prompt with correct 256 MiB DRAM, working Ethernet/TFTP and SPI-NAND.
AK Sharma (12):
mips: en75xx: add EcoNet/Airoha EN75xx SoC support
mips: en75xx: add TPL and SPL early boot stages
serial: en75xx: add EcoNet/Airoha EN75xx UART driver
spi: airoha-snfi: add EN7528 SPI-NAND controller support
mtd: spi-nand: add EN75 BMT bad-block management support
net: airoha-eth: add EN7528 Ethernet support
mtd: env, cmd: add EN75 NAND remap handling
boot: image: add weak hooks for the decompression buffer and flush
mips: dts: add EcoNet EN75xx device trees
board: econet: add EN7512 reference board
board: econet: add EN7528 board support
doc: board: econet: add EN75xx documentation
arch/mips/Kconfig | 21 +
arch/mips/Makefile | 2 +
arch/mips/cpu/start.S | 2 +
arch/mips/dts/Makefile | 2 +
.../dts/econet,en7512-reference-u-boot.dtsi | 58 ++
arch/mips/dts/econet,en7512-reference.dts | 27 +
arch/mips/dts/econet,en7512.dtsi | 88 ++
arch/mips/dts/econet,en7528-ram-u-boot.dtsi | 6 +
arch/mips/dts/econet,en7528-ram.dts | 72 ++
.../dts/econet,en7528-reference-u-boot.dtsi | 62 ++
arch/mips/dts/econet,en7528-reference.dts | 25 +
arch/mips/dts/econet,en7528.dtsi | 164 ++++
arch/mips/mach-en75xx/Kconfig | 118 +++
arch/mips/mach-en75xx/Makefile | 17 +
arch/mips/mach-en75xx/README.ddr-blob | 21 +
arch/mips/mach-en75xx/cache.c | 121 +++
arch/mips/mach-en75xx/cpu.c | 95 ++
arch/mips/mach-en75xx/early_sfc.c | 352 ++++++++
arch/mips/mach-en75xx/include/mach/en75xx.h | 104 +++
arch/mips/mach-en75xx/spl/Makefile | 2 +
arch/mips/mach-en75xx/spl/spl.c | 47 +
arch/mips/mach-en75xx/tpl/Makefile | 3 +
arch/mips/mach-en75xx/tpl/start.S | 101 +++
arch/mips/mach-en75xx/tpl/tpl.c | 158 ++++
board/econet/en7512/MAINTAINERS | 8 +
board/econet/en7512/Makefile | 2 +
board/econet/en7512/board.c | 34 +
board/econet/en7528/MAINTAINERS | 13 +
board/econet/en7528/Makefile | 2 +
board/econet/en7528/board.c | 110 +++
board/econet/en7528/mk_tclinux_uboot.py | 112 +++
board/econet/en7528/tclinux_stub.S | 65 ++
boot/image.c | 34 +-
cmd/mtd.c | 30 +-
configs/en7512_reference_defconfig | 93 ++
configs/en7528_jcow414_r3hook_defconfig | 76 ++
configs/en7528_ram_defconfig | 62 ++
configs/en7528_reference_defconfig | 40 +
defenvs/en7528_jcow414_r3hook_env | 5 +
doc/board/econet/en7512.rst | 70 ++
doc/board/econet/en7528.rst | 39 +
doc/board/econet/index.rst | 10 +
doc/board/index.rst | 1 +
drivers/mtd/nand/spi/Kconfig | 8 +
drivers/mtd/nand/spi/Makefile | 1 +
drivers/mtd/nand/spi/core.c | 9 +-
drivers/mtd/nand/spi/en75_bmt.c | 665 ++++++++++++++
drivers/mtd/nand/spi/en75_bmt.h | 24 +
drivers/net/Kconfig | 8 +-
drivers/net/airoha_eth.c | 850 +++++++++++++++++-
drivers/phy/Kconfig | 2 +-
drivers/serial/Kconfig | 7 +
drivers/serial/Makefile | 1 +
drivers/serial/serial_en75xx.c | 170 ++++
drivers/spi/Kconfig | 3 +-
drivers/spi/airoha_snfi_spi.c | 409 +++++++--
drivers/usb/host/Kconfig | 2 +-
env/Kconfig | 2 +-
env/mtd.c | 98 +-
include/configs/en7512.h | 8 +
include/configs/en7528.h | 9 +
include/image.h | 5 +
62 files changed, 4578 insertions(+), 177 deletions(-)
create mode 100644 arch/mips/dts/econet,en7512-reference-u-boot.dtsi
create mode 100644 arch/mips/dts/econet,en7512-reference.dts
create mode 100644 arch/mips/dts/econet,en7512.dtsi
create mode 100644 arch/mips/dts/econet,en7528-ram-u-boot.dtsi
create mode 100644 arch/mips/dts/econet,en7528-ram.dts
create mode 100644 arch/mips/dts/econet,en7528-reference-u-boot.dtsi
create mode 100644 arch/mips/dts/econet,en7528-reference.dts
create mode 100644 arch/mips/dts/econet,en7528.dtsi
create mode 100644 arch/mips/mach-en75xx/Kconfig
create mode 100644 arch/mips/mach-en75xx/Makefile
create mode 100644 arch/mips/mach-en75xx/README.ddr-blob
create mode 100644 arch/mips/mach-en75xx/cache.c
create mode 100644 arch/mips/mach-en75xx/cpu.c
create mode 100644 arch/mips/mach-en75xx/early_sfc.c
create mode 100644 arch/mips/mach-en75xx/include/mach/en75xx.h
create mode 100644 arch/mips/mach-en75xx/spl/Makefile
create mode 100644 arch/mips/mach-en75xx/spl/spl.c
create mode 100644 arch/mips/mach-en75xx/tpl/Makefile
create mode 100644 arch/mips/mach-en75xx/tpl/start.S
create mode 100644 arch/mips/mach-en75xx/tpl/tpl.c
create mode 100644 board/econet/en7512/MAINTAINERS
create mode 100644 board/econet/en7512/Makefile
create mode 100644 board/econet/en7512/board.c
create mode 100644 board/econet/en7528/MAINTAINERS
create mode 100644 board/econet/en7528/Makefile
create mode 100644 board/econet/en7528/board.c
create mode 100644 board/econet/en7528/mk_tclinux_uboot.py
create mode 100644 board/econet/en7528/tclinux_stub.S
create mode 100644 configs/en7512_reference_defconfig
create mode 100644 configs/en7528_jcow414_r3hook_defconfig
create mode 100644 configs/en7528_ram_defconfig
create mode 100644 configs/en7528_reference_defconfig
create mode 100644 defenvs/en7528_jcow414_r3hook_env
create mode 100644 doc/board/econet/en7512.rst
create mode 100644 doc/board/econet/en7528.rst
create mode 100644 doc/board/econet/index.rst
create mode 100644 drivers/mtd/nand/spi/en75_bmt.c
create mode 100644 drivers/mtd/nand/spi/en75_bmt.h
create mode 100644 drivers/serial/serial_en75xx.c
create mode 100644 include/configs/en7512.h
create mode 100644 include/configs/en7528.h
--
2.53.0
next parent reply other threads:[~2026-08-25 22:50 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260825224330.713151-1-maskachoska.ref@yahoo.com>
2026-08-25 22:41 ` AK Sharma [this message]
2026-08-25 22:41 ` [PATCH v1 01/12] mips: en75xx: add EcoNet/Airoha EN75xx SoC support AK Sharma
2026-08-25 22:41 ` [PATCH v1 02/12] mips: en75xx: add TPL and SPL early boot stages AK Sharma
2026-08-25 22:53 ` Tom Rini
2026-08-25 22:41 ` [PATCH v1 03/12] serial: en75xx: add EcoNet/Airoha EN75xx UART driver AK Sharma
2026-08-25 22:41 ` [PATCH v1 04/12] spi: airoha-snfi: add EN7528 SPI-NAND controller support AK Sharma
2026-08-25 22:42 ` [PATCH v1 05/12] mtd: spi-nand: add EN75 BMT bad-block management support AK Sharma
2026-08-25 22:59 ` Tom Rini
2026-08-26 6:47 ` Frieder Schrempf
2026-08-25 22:42 ` [PATCH v1 06/12] net: airoha-eth: add EN7528 Ethernet support AK Sharma
2026-08-25 22:42 ` [PATCH v1 07/12] mtd: env, cmd: add EN75 NAND remap handling AK Sharma
2026-08-25 23:06 ` Tom Rini
2026-08-25 22:42 ` [PATCH v1 08/12] boot: image: add weak hooks for the decompression buffer and flush AK Sharma
2026-08-25 23:05 ` Tom Rini
2026-08-25 22:42 ` [PATCH v1 09/12] mips: dts: add EcoNet EN75xx device trees AK Sharma
2026-08-25 22:55 ` Tom Rini
2026-08-25 22:42 ` [PATCH v1 10/12] board: econet: add EN7512 reference board AK Sharma
2026-08-25 22:42 ` [PATCH v1 11/12] board: econet: add EN7528 board support AK Sharma
2026-08-25 22:57 ` Tom Rini
2026-08-25 23:00 ` Tom Rini
2026-08-25 22:42 ` [PATCH v1 12/12] doc: board: econet: add EN75xx documentation AK Sharma
2026-08-25 23:02 ` [PATCH v1 00/12] mips: add EcoNet/Airoha EN75xx (EN7512/EN7528) SoC support Tom Rini
2026-08-26 14:26 ` Matheus Sampaio Queiroga
2026-08-26 15:05 ` Tom Rini
2026-08-26 15:16 ` AK Sharma
2026-08-26 15:17 ` Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260825224330.713151-1-maskachoska@yahoo.com \
--to=maskachoska@yahoo.com \
--cc=ansuelsmth@gmail.com \
--cc=daniel.schwierzeck@gmail.com \
--cc=dario.binacchi@amarulasolutions.com \
--cc=frieder.schrempf@kontron.de \
--cc=jerome.forissier@arm.com \
--cc=marex@denx.de \
--cc=michael@amarulasolutions.com \
--cc=trini@konsulko.com \
--cc=u-boot@lists.u-boot-project.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.