[PATCH v4 0/7] mtd: rawnand: loongson: Add Loongson-2K nand controller support
Binbin Zhou
zhoubinbin at loongson.cn
Thu Sep 4 06:06:32 PDT 2025
Hi all:
This patchset adds support for the Loongson-2K0500/Loongson-2K1000 NAND
controllers, which are similar to the Loongson-1C NAND controller.
They support a maximum capacity of 16GB FLASH per chip, with a maximum
page size of 8KB. The chip supports up to 4 chip selects and 4 RDY signals.
The key difference between the Loongson-2K NAND controllers is that the
Loongson-2K1000 explicitly configures the DMA controller routing, while
the Loongson-2K0500 defaults to using APBDMA0.
Summary of the patchset:
Ptach 1: Rename all prefixes from ls1x to loongson
Patch 2: Add 6-byte NAND ID reading
Patch 3: Add chip select support
Patch 4-5: Add Loongson-2K0500 NAND controller support
Patch 6-7: Add Loongson-2K1000 NAND controller support
Thanks.
-------
V4:
Patch (5/7):
- Split the flags variable into dma_bits;
- Chip selects set before requesting the DMA channel;
- '|' should be last character on the previous line.
Patch (7/7):
- Use devm_platform_ioremap_resource_byname();
- Add the dma_config() function pointer to replace the previous flags.
Link to V3:
https://lore.kernel.org/all/cover.1755757841.git.zhoubinbin@loongson.cn/
V3:
Patch (1/7):
- Merge the first two rename patches;
Patch (3/7)
- Refact chip capacity calculation. Use a big switch-case
for writesize, and sort the big switch-case by writesize;
- Drop the redundant 'nand_cs = 0x0';
Patch (6/7)
- Add Reviewed-by tag from Rob, thanks.
Link to V2:
https://lore.kernel.org/all/cover.1754890670.git.zhoubinbin@loongson.cn/
V2:
Patch (5/8):
- Add Acked-by tag from Rob, thanks;
Patch (7/8):
- Update reg-names attribute description.
Link to V1:
https://lore.kernel.org/all/cover.1753166096.git.zhoubinbin@loongson.cn/
Binbin Zhou (6):
mtd: rawnand: loongson1: Rename the prefix from ls1x to loongson
mtd: rawnand: loongson: Add nand chip select support
dt-bindings: mtd: loongson,ls1b-nand-controller: Document the
Loongson-2K0500 NAND controller
mtd: rawnand: loongson: Add Loongson-2K0500 NAND controller support
dt-bindings: mtd: loongson,ls1b-nand-controller: Document the
Loongson-2K1000 NAND controller
mtd: rawnand: loongson: Add Loongson-2K1000 NAND controller support
Keguang Zhang (1):
mtd: rawnand: loongson: Add 6-byte NAND ID reading support
.../mtd/loongson,ls1b-nand-controller.yaml | 56 +-
MAINTAINERS | 2 +-
drivers/mtd/nand/raw/Kconfig | 8 +-
drivers/mtd/nand/raw/Makefile | 2 +-
.../mtd/nand/raw/loongson-nand-controller.c | 1024 +++++++++++++++++
.../mtd/nand/raw/loongson1-nand-controller.c | 836 --------------
6 files changed, 1083 insertions(+), 845 deletions(-)
create mode 100644 drivers/mtd/nand/raw/loongson-nand-controller.c
delete mode 100644 drivers/mtd/nand/raw/loongson1-nand-controller.c
base-commit: c9f62564252c21d739a5003e9b2d6ad0828aa7bd
--
2.47.3
More information about the linux-mtd
mailing list