kernel: config: add missing symbol for kenrel 6.6
[openwrt/staging/stintel.git] / target / linux / ramips / patches-5.15 / 410-mtd-rawnand-add-driver-support-for-MT7621-nand-flash.patch
1 From e84e2430ee0e483842b4ff013ae8a6e7e2fa2734 Mon Sep 17 00:00:00 2001
2 From: Weijie Gao <weijie.gao@mediatek.com>
3 Date: Wed, 1 Apr 2020 02:07:58 +0800
4 Subject: [PATCH 1/2] mtd: rawnand: add driver support for MT7621 nand
5 flash controller
6
7 This patch adds NAND flash controller driver for MediaTek MT7621 SoC.
8
9 The NAND flash controller is similar with controllers described in
10 mtk_nand.c, except that the controller from MT7621 doesn't support DMA
11 transmission, and some registers' offset and fields are different.
12
13 Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
14 ---
15 drivers/mtd/nand/raw/Kconfig | 8 +
16 drivers/mtd/nand/raw/Makefile | 1 +
17 drivers/mtd/nand/raw/mt7621_nand.c | 1348 ++++++++++++++++++++++++++++++++++++
18 3 files changed, 1357 insertions(+)
19 create mode 100644 drivers/mtd/nand/raw/mt7621_nand.c
20
21 --- a/drivers/mtd/nand/raw/Kconfig
22 +++ b/drivers/mtd/nand/raw/Kconfig
23 @@ -358,6 +358,14 @@ config MTD_NAND_QCOM
24 Enables support for NAND flash chips on SoCs containing the EBI2 NAND
25 controller. This controller is found on IPQ806x SoC.
26
27 +config MTD_NAND_MT7621
28 + tristate "MT7621 NAND controller"
29 + depends on SOC_MT7621 || COMPILE_TEST
30 + depends on HAS_IOMEM
31 + help
32 + Enables support for NAND controller on MT7621 SoC.
33 + This driver uses PIO mode for data transmission instead of DMA mode.
34 +
35 config MTD_NAND_MTK
36 tristate "MTK NAND controller"
37 depends on ARCH_MEDIATEK || COMPILE_TEST
38 --- a/drivers/mtd/nand/raw/Makefile
39 +++ b/drivers/mtd/nand/raw/Makefile
40 @@ -48,6 +48,7 @@ obj-$(CONFIG_MTD_NAND_SUNXI) += sunxi_n
41 obj-$(CONFIG_MTD_NAND_HISI504) += hisi504_nand.o
42 obj-$(CONFIG_MTD_NAND_BRCMNAND) += brcmnand/
43 obj-$(CONFIG_MTD_NAND_QCOM) += qcom_nandc.o
44 +obj-$(CONFIG_MTD_NAND_MT7621) += mt7621_nand.o
45 obj-$(CONFIG_MTD_NAND_MTK) += mtk_ecc.o mtk_nand.o
46 obj-$(CONFIG_MTD_NAND_MXIC) += mxic_nand.o
47 obj-$(CONFIG_MTD_NAND_TEGRA) += tegra_nand.o