mediatek: refresh patches for Linux 5.15

Run `make target/linux/refresh` to align patches with OpenWrt style.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This commit is contained in:
Daniel Golle 2022-04-30 15:17:46 +01:00
parent 5d135fcf9d
commit 9b4041fa2e
No known key found for this signature in database
GPG Key ID: 5A8F39C31C3217CA
22 changed files with 53 additions and 147 deletions

View File

@ -8,8 +8,6 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
arch/arm/mach-mediatek/Kconfig | 1 + arch/arm/mach-mediatek/Kconfig | 1 +
1 file changed, 1 insertion(+) 1 file changed, 1 insertion(+)
diff --git a/arch/arm/mach-mediatek/Kconfig b/arch/arm/mach-mediatek/Kconfig
index 35a3430c7942..8a8d9142260a 100644
--- a/arch/arm/mach-mediatek/Kconfig --- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig +++ b/arch/arm/mach-mediatek/Kconfig
@@ -26,6 +26,7 @@ config MACH_MT6592 @@ -26,6 +26,7 @@ config MACH_MT6592
@ -20,6 +18,3 @@ index 35a3430c7942..8a8d9142260a 100644
config MACH_MT7629 config MACH_MT7629
bool "MediaTek MT7629 SoCs support" bool "MediaTek MT7629 SoCs support"
--
2.35.1

View File

@ -24,11 +24,9 @@ Link: https://lore.kernel.org/linux-mtd/20211216111654.238086-13-miquel.raynal@b
include/linux/mtd/nand.h | 28 +++++++++++++ include/linux/mtd/nand.h | 28 +++++++++++++
3 files changed, 123 insertions(+), 3 deletions(-) 3 files changed, 123 insertions(+), 3 deletions(-)
diff --git a/drivers/mtd/nand/core.c b/drivers/mtd/nand/core.c
index 5e13a03d2b32..b228b4d13b7a 100644
--- a/drivers/mtd/nand/core.c --- a/drivers/mtd/nand/core.c
+++ b/drivers/mtd/nand/core.c +++ b/drivers/mtd/nand/core.c
@@ -232,7 +232,9 @@ static int nanddev_get_ecc_engine(struct nand_device *nand) @@ -232,7 +232,9 @@ static int nanddev_get_ecc_engine(struct
nand->ecc.engine = nand_ecc_get_on_die_hw_engine(nand); nand->ecc.engine = nand_ecc_get_on_die_hw_engine(nand);
break; break;
case NAND_ECC_ENGINE_TYPE_ON_HOST: case NAND_ECC_ENGINE_TYPE_ON_HOST:
@ -39,7 +37,7 @@ index 5e13a03d2b32..b228b4d13b7a 100644
break; break;
default: default:
pr_err("Missing ECC engine type\n"); pr_err("Missing ECC engine type\n");
@@ -252,7 +254,7 @@ static int nanddev_put_ecc_engine(struct nand_device *nand) @@ -252,7 +254,7 @@ static int nanddev_put_ecc_engine(struct
{ {
switch (nand->ecc.ctx.conf.engine_type) { switch (nand->ecc.ctx.conf.engine_type) {
case NAND_ECC_ENGINE_TYPE_ON_HOST: case NAND_ECC_ENGINE_TYPE_ON_HOST:
@ -48,7 +46,7 @@ index 5e13a03d2b32..b228b4d13b7a 100644
break; break;
case NAND_ECC_ENGINE_TYPE_NONE: case NAND_ECC_ENGINE_TYPE_NONE:
case NAND_ECC_ENGINE_TYPE_SOFT: case NAND_ECC_ENGINE_TYPE_SOFT:
@@ -297,7 +299,9 @@ int nanddev_ecc_engine_init(struct nand_device *nand) @@ -297,7 +299,9 @@ int nanddev_ecc_engine_init(struct nand_
/* Look for the ECC engine to use */ /* Look for the ECC engine to use */
ret = nanddev_get_ecc_engine(nand); ret = nanddev_get_ecc_engine(nand);
if (ret) { if (ret) {
@ -59,8 +57,6 @@ index 5e13a03d2b32..b228b4d13b7a 100644
return ret; return ret;
} }
diff --git a/drivers/mtd/nand/ecc.c b/drivers/mtd/nand/ecc.c
index 6c43dfda01d4..078f5ec38de3 100644
--- a/drivers/mtd/nand/ecc.c --- a/drivers/mtd/nand/ecc.c
+++ b/drivers/mtd/nand/ecc.c +++ b/drivers/mtd/nand/ecc.c
@@ -96,6 +96,12 @@ @@ -96,6 +96,12 @@
@ -76,7 +72,7 @@ index 6c43dfda01d4..078f5ec38de3 100644
/** /**
* nand_ecc_init_ctx - Init the ECC engine context * nand_ecc_init_ctx - Init the ECC engine context
@@ -611,6 +617,88 @@ struct nand_ecc_engine *nand_ecc_get_on_die_hw_engine(struct nand_device *nand) @@ -611,6 +617,88 @@ struct nand_ecc_engine *nand_ecc_get_on_
} }
EXPORT_SYMBOL(nand_ecc_get_on_die_hw_engine); EXPORT_SYMBOL(nand_ecc_get_on_die_hw_engine);
@ -165,15 +161,12 @@ index 6c43dfda01d4..078f5ec38de3 100644
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_AUTHOR("Miquel Raynal <miquel.raynal@bootlin.com>"); MODULE_AUTHOR("Miquel Raynal <miquel.raynal@bootlin.com>");
MODULE_DESCRIPTION("Generic ECC engine"); MODULE_DESCRIPTION("Generic ECC engine");
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
index 32fc7edf65b3..4ddd20fe9c9e 100644
--- a/include/linux/mtd/nand.h --- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h
@@ -263,12 +263,36 @@ struct nand_ecc_engine_ops { @@ -264,11 +264,35 @@ struct nand_ecc_engine_ops {
struct nand_page_io_req *req);
}; };
+/** /**
+ * enum nand_ecc_engine_integration - How the NAND ECC engine is integrated + * enum nand_ecc_engine_integration - How the NAND ECC engine is integrated
+ * @NAND_ECC_ENGINE_INTEGRATION_INVALID: Invalid value + * @NAND_ECC_ENGINE_INTEGRATION_INVALID: Invalid value
+ * @NAND_ECC_ENGINE_INTEGRATION_PIPELINED: Pipelined engine, performs on-the-fly + * @NAND_ECC_ENGINE_INTEGRATION_PIPELINED: Pipelined engine, performs on-the-fly
@ -188,7 +181,7 @@ index 32fc7edf65b3..4ddd20fe9c9e 100644
+ NAND_ECC_ENGINE_INTEGRATION_EXTERNAL, + NAND_ECC_ENGINE_INTEGRATION_EXTERNAL,
+}; +};
+ +
/** +/**
* struct nand_ecc_engine - ECC engine abstraction for NAND devices * struct nand_ecc_engine - ECC engine abstraction for NAND devices
+ * @dev: Host device + * @dev: Host device
+ * @node: Private field for registration time + * @node: Private field for registration time
@ -206,7 +199,7 @@ index 32fc7edf65b3..4ddd20fe9c9e 100644
}; };
void of_get_nand_ecc_user_config(struct nand_device *nand); void of_get_nand_ecc_user_config(struct nand_device *nand);
@@ -279,8 +303,12 @@ int nand_ecc_prepare_io_req(struct nand_device *nand, @@ -279,8 +303,12 @@ int nand_ecc_prepare_io_req(struct nand_
int nand_ecc_finish_io_req(struct nand_device *nand, int nand_ecc_finish_io_req(struct nand_device *nand,
struct nand_page_io_req *req); struct nand_page_io_req *req);
bool nand_ecc_is_strong_enough(struct nand_device *nand); bool nand_ecc_is_strong_enough(struct nand_device *nand);
@ -219,6 +212,3 @@ index 32fc7edf65b3..4ddd20fe9c9e 100644
#if IS_ENABLED(CONFIG_MTD_NAND_ECC_SW_HAMMING) #if IS_ENABLED(CONFIG_MTD_NAND_ECC_SW_HAMMING)
struct nand_ecc_engine *nand_ecc_sw_hamming_get_engine(void); struct nand_ecc_engine *nand_ecc_sw_hamming_get_engine(void);
--
2.35.1

View File

@ -15,11 +15,9 @@ Link: https://lore.kernel.org/linux-mtd/20211216111654.238086-14-miquel.raynal@b
include/linux/mtd/nand.h | 5 +++++ include/linux/mtd/nand.h | 5 +++++
1 file changed, 5 insertions(+) 1 file changed, 5 insertions(+)
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
index 4ddd20fe9c9e..b617efa0a881 100644
--- a/include/linux/mtd/nand.h --- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h
@@ -990,6 +990,11 @@ int nanddev_markbad(struct nand_device *nand, const struct nand_pos *pos); @@ -990,6 +990,11 @@ int nanddev_markbad(struct nand_device *
int nanddev_ecc_engine_init(struct nand_device *nand); int nanddev_ecc_engine_init(struct nand_device *nand);
void nanddev_ecc_engine_cleanup(struct nand_device *nand); void nanddev_ecc_engine_cleanup(struct nand_device *nand);
@ -31,6 +29,3 @@ index 4ddd20fe9c9e..b617efa0a881 100644
/* BBT related functions */ /* BBT related functions */
enum nand_bbt_block_status { enum nand_bbt_block_status {
NAND_BBT_BLOCK_STATUS_UNKNOWN, NAND_BBT_BLOCK_STATUS_UNKNOWN,
--
2.35.1

View File

@ -21,11 +21,9 @@ Link: https://lore.kernel.org/linux-mtd/20211216111654.238086-16-miquel.raynal@b
include/linux/mtd/nand.h | 1 + include/linux/mtd/nand.h | 1 +
2 files changed, 32 insertions(+) 2 files changed, 32 insertions(+)
diff --git a/drivers/mtd/nand/ecc.c b/drivers/mtd/nand/ecc.c
index 078f5ec38de3..5250764cedee 100644
--- a/drivers/mtd/nand/ecc.c --- a/drivers/mtd/nand/ecc.c
+++ b/drivers/mtd/nand/ecc.c +++ b/drivers/mtd/nand/ecc.c
@@ -699,6 +699,37 @@ void nand_ecc_put_on_host_hw_engine(struct nand_device *nand) @@ -699,6 +699,37 @@ void nand_ecc_put_on_host_hw_engine(stru
} }
EXPORT_SYMBOL(nand_ecc_put_on_host_hw_engine); EXPORT_SYMBOL(nand_ecc_put_on_host_hw_engine);
@ -63,11 +61,9 @@ index 078f5ec38de3..5250764cedee 100644
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_AUTHOR("Miquel Raynal <miquel.raynal@bootlin.com>"); MODULE_AUTHOR("Miquel Raynal <miquel.raynal@bootlin.com>");
MODULE_DESCRIPTION("Generic ECC engine"); MODULE_DESCRIPTION("Generic ECC engine");
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
index b617efa0a881..615b3e3a3920 100644
--- a/include/linux/mtd/nand.h --- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h
@@ -309,6 +309,7 @@ struct nand_ecc_engine *nand_ecc_get_sw_engine(struct nand_device *nand); @@ -309,6 +309,7 @@ struct nand_ecc_engine *nand_ecc_get_sw_
struct nand_ecc_engine *nand_ecc_get_on_die_hw_engine(struct nand_device *nand); struct nand_ecc_engine *nand_ecc_get_on_die_hw_engine(struct nand_device *nand);
struct nand_ecc_engine *nand_ecc_get_on_host_hw_engine(struct nand_device *nand); struct nand_ecc_engine *nand_ecc_get_on_host_hw_engine(struct nand_device *nand);
void nand_ecc_put_on_host_hw_engine(struct nand_device *nand); void nand_ecc_put_on_host_hw_engine(struct nand_device *nand);
@ -75,6 +71,3 @@ index b617efa0a881..615b3e3a3920 100644
#if IS_ENABLED(CONFIG_MTD_NAND_ECC_SW_HAMMING) #if IS_ENABLED(CONFIG_MTD_NAND_ECC_SW_HAMMING)
struct nand_ecc_engine *nand_ecc_sw_hamming_get_engine(void); struct nand_ecc_engine *nand_ecc_sw_hamming_get_engine(void);
--
2.35.1

View File

@ -23,15 +23,12 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-2-miquel.raynal@b
include/linux/spi/spi.h | 3 +++ include/linux/spi/spi.h | 3 +++
2 files changed, 14 insertions(+) 2 files changed, 14 insertions(+)
diff --git a/include/linux/spi/spi-mem.h b/include/linux/spi/spi-mem.h
index 85e2ff7b840d..38e5d45c9842 100644
--- a/include/linux/spi/spi-mem.h --- a/include/linux/spi/spi-mem.h
+++ b/include/linux/spi/spi-mem.h +++ b/include/linux/spi/spi-mem.h
@@ -285,6 +285,17 @@ struct spi_controller_mem_ops { @@ -286,6 +286,17 @@ struct spi_controller_mem_ops {
unsigned long timeout_ms);
}; };
+/** /**
+ * struct spi_controller_mem_caps - SPI memory controller capabilities + * struct spi_controller_mem_caps - SPI memory controller capabilities
+ * @dtr: Supports DTR operations + * @dtr: Supports DTR operations
+ */ + */
@ -42,11 +39,10 @@ index 85e2ff7b840d..38e5d45c9842 100644
+#define spi_mem_controller_is_capable(ctlr, cap) \ +#define spi_mem_controller_is_capable(ctlr, cap) \
+ ((ctlr)->mem_caps && (ctlr)->mem_caps->cap) + ((ctlr)->mem_caps && (ctlr)->mem_caps->cap)
+ +
/** +/**
* struct spi_mem_driver - SPI memory driver * struct spi_mem_driver - SPI memory driver
* @spidrv: inherit from a SPI driver * @spidrv: inherit from a SPI driver
diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h * @probe: probe a SPI memory. Usually where detection/initialization takes
index 6b0b686f6f90..8ac58b1a2a9f 100644
--- a/include/linux/spi/spi.h --- a/include/linux/spi/spi.h
+++ b/include/linux/spi/spi.h +++ b/include/linux/spi/spi.h
@@ -23,6 +23,7 @@ struct software_node; @@ -23,6 +23,7 @@ struct software_node;
@ -57,7 +53,7 @@ index 6b0b686f6f90..8ac58b1a2a9f 100644
/* /*
* INTERFACES between SPI master-side drivers and SPI slave protocol handlers, * INTERFACES between SPI master-side drivers and SPI slave protocol handlers,
@@ -419,6 +420,7 @@ extern struct spi_device *spi_new_ancillary_device(struct spi_device *spi, u8 ch @@ -419,6 +420,7 @@ extern struct spi_device *spi_new_ancill
* @mem_ops: optimized/dedicated operations for interactions with SPI memory. * @mem_ops: optimized/dedicated operations for interactions with SPI memory.
* This field is optional and should only be implemented if the * This field is optional and should only be implemented if the
* controller has native support for memory like operations. * controller has native support for memory like operations.
@ -73,6 +69,3 @@ index 6b0b686f6f90..8ac58b1a2a9f 100644
/* gpio chip select */ /* gpio chip select */
int *cs_gpios; int *cs_gpios;
--
2.35.1

View File

@ -22,11 +22,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-3-miquel.raynal@b
drivers/spi/spi-mem.c | 17 +++++++++++++---- drivers/spi/spi-mem.c | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-) 1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/drivers/spi/spi-mem.c b/drivers/spi/spi-mem.c
index 37f4443ce9a0..86e6597bc3dc 100644
--- a/drivers/spi/spi-mem.c --- a/drivers/spi/spi-mem.c
+++ b/drivers/spi/spi-mem.c +++ b/drivers/spi/spi-mem.c
@@ -173,11 +173,20 @@ EXPORT_SYMBOL_GPL(spi_mem_dtr_supports_op); @@ -173,11 +173,20 @@ EXPORT_SYMBOL_GPL(spi_mem_dtr_supports_o
bool spi_mem_default_supports_op(struct spi_mem *mem, bool spi_mem_default_supports_op(struct spi_mem *mem,
const struct spi_mem_op *op) const struct spi_mem_op *op)
{ {
@ -51,6 +49,3 @@ index 37f4443ce9a0..86e6597bc3dc 100644
return spi_mem_check_buswidth(mem, op); return spi_mem_check_buswidth(mem, op);
} }
--
2.35.1

View File

@ -23,11 +23,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-6-miquel.raynal@b
include/linux/spi/spi-mem.h | 11 ----------- include/linux/spi/spi-mem.h | 11 -----------
4 files changed, 2 insertions(+), 34 deletions(-) 4 files changed, 2 insertions(+), 34 deletions(-)
diff --git a/drivers/spi/spi-cadence-quadspi.c b/drivers/spi/spi-cadence-quadspi.c
index 101cc71bffa7..2c98d6a9a2aa 100644
--- a/drivers/spi/spi-cadence-quadspi.c --- a/drivers/spi/spi-cadence-quadspi.c
+++ b/drivers/spi/spi-cadence-quadspi.c +++ b/drivers/spi/spi-cadence-quadspi.c
@@ -1252,10 +1252,7 @@ static bool cqspi_supports_mem_op(struct spi_mem *mem, @@ -1230,10 +1230,7 @@ static bool cqspi_supports_mem_op(struct
if (!(all_true || all_false)) if (!(all_true || all_false))
return false; return false;
@ -39,11 +37,9 @@ index 101cc71bffa7..2c98d6a9a2aa 100644
} }
static int cqspi_of_get_flash_pdata(struct platform_device *pdev, static int cqspi_of_get_flash_pdata(struct platform_device *pdev,
diff --git a/drivers/spi/spi-mem.c b/drivers/spi/spi-mem.c
index 86e6597bc3dc..ed966d8129eb 100644
--- a/drivers/spi/spi-mem.c --- a/drivers/spi/spi-mem.c
+++ b/drivers/spi/spi-mem.c +++ b/drivers/spi/spi-mem.c
@@ -160,16 +160,6 @@ static bool spi_mem_check_buswidth(struct spi_mem *mem, @@ -160,16 +160,6 @@ static bool spi_mem_check_buswidth(struc
return true; return true;
} }
@ -60,11 +56,9 @@ index 86e6597bc3dc..ed966d8129eb 100644
bool spi_mem_default_supports_op(struct spi_mem *mem, bool spi_mem_default_supports_op(struct spi_mem *mem,
const struct spi_mem_op *op) const struct spi_mem_op *op)
{ {
diff --git a/drivers/spi/spi-mxic.c b/drivers/spi/spi-mxic.c
index 45889947afed..e895df09896a 100644
--- a/drivers/spi/spi-mxic.c --- a/drivers/spi/spi-mxic.c
+++ b/drivers/spi/spi-mxic.c +++ b/drivers/spi/spi-mxic.c
@@ -335,8 +335,6 @@ static int mxic_spi_data_xfer(struct mxic_spi *mxic, const void *txbuf, @@ -331,8 +331,6 @@ static int mxic_spi_data_xfer(struct mxi
static bool mxic_spi_mem_supports_op(struct spi_mem *mem, static bool mxic_spi_mem_supports_op(struct spi_mem *mem,
const struct spi_mem_op *op) const struct spi_mem_op *op)
{ {
@ -73,7 +67,7 @@ index 45889947afed..e895df09896a 100644
if (op->data.buswidth > 8 || op->addr.buswidth > 8 || if (op->data.buswidth > 8 || op->addr.buswidth > 8 ||
op->dummy.buswidth > 8 || op->cmd.buswidth > 8) op->dummy.buswidth > 8 || op->cmd.buswidth > 8)
return false; return false;
@@ -348,13 +346,7 @@ static bool mxic_spi_mem_supports_op(struct spi_mem *mem, @@ -344,13 +342,7 @@ static bool mxic_spi_mem_supports_op(str
if (op->addr.nbytes > 7) if (op->addr.nbytes > 7)
return false; return false;
@ -88,11 +82,9 @@ index 45889947afed..e895df09896a 100644
} }
static int mxic_spi_mem_exec_op(struct spi_mem *mem, static int mxic_spi_mem_exec_op(struct spi_mem *mem,
diff --git a/include/linux/spi/spi-mem.h b/include/linux/spi/spi-mem.h
index 38e5d45c9842..4a1bfe689872 100644
--- a/include/linux/spi/spi-mem.h --- a/include/linux/spi/spi-mem.h
+++ b/include/linux/spi/spi-mem.h +++ b/include/linux/spi/spi-mem.h
@@ -330,10 +330,6 @@ void spi_controller_dma_unmap_mem_op_data(struct spi_controller *ctlr, @@ -330,10 +330,6 @@ void spi_controller_dma_unmap_mem_op_dat
bool spi_mem_default_supports_op(struct spi_mem *mem, bool spi_mem_default_supports_op(struct spi_mem *mem,
const struct spi_mem_op *op); const struct spi_mem_op *op);
@ -103,7 +95,7 @@ index 38e5d45c9842..4a1bfe689872 100644
#else #else
static inline int static inline int
spi_controller_dma_map_mem_op_data(struct spi_controller *ctlr, spi_controller_dma_map_mem_op_data(struct spi_controller *ctlr,
@@ -356,13 +352,6 @@ bool spi_mem_default_supports_op(struct spi_mem *mem, @@ -356,13 +352,6 @@ bool spi_mem_default_supports_op(struct
{ {
return false; return false;
} }
@ -117,6 +109,3 @@ index 38e5d45c9842..4a1bfe689872 100644
#endif /* CONFIG_SPI_MEM */ #endif /* CONFIG_SPI_MEM */
int spi_mem_adjust_op_size(struct spi_mem *mem, struct spi_mem_op *op); int spi_mem_adjust_op_size(struct spi_mem *mem, struct spi_mem_op *op);
--
2.35.1

View File

@ -26,11 +26,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-7-miquel.raynal@b
include/linux/spi/spi-mem.h | 4 ++++ include/linux/spi/spi-mem.h | 4 ++++
2 files changed, 9 insertions(+) 2 files changed, 9 insertions(+)
diff --git a/drivers/spi/spi-mem.c b/drivers/spi/spi-mem.c
index ed966d8129eb..f38ac31961c9 100644
--- a/drivers/spi/spi-mem.c --- a/drivers/spi/spi-mem.c
+++ b/drivers/spi/spi-mem.c +++ b/drivers/spi/spi-mem.c
@@ -178,6 +178,11 @@ bool spi_mem_default_supports_op(struct spi_mem *mem, @@ -178,6 +178,11 @@ bool spi_mem_default_supports_op(struct
return false; return false;
} }
@ -42,8 +40,6 @@ index ed966d8129eb..f38ac31961c9 100644
return spi_mem_check_buswidth(mem, op); return spi_mem_check_buswidth(mem, op);
} }
EXPORT_SYMBOL_GPL(spi_mem_default_supports_op); EXPORT_SYMBOL_GPL(spi_mem_default_supports_op);
diff --git a/include/linux/spi/spi-mem.h b/include/linux/spi/spi-mem.h
index 4a1bfe689872..2ba044d0d5e5 100644
--- a/include/linux/spi/spi-mem.h --- a/include/linux/spi/spi-mem.h
+++ b/include/linux/spi/spi-mem.h +++ b/include/linux/spi/spi-mem.h
@@ -89,6 +89,7 @@ enum spi_mem_data_dir { @@ -89,6 +89,7 @@ enum spi_mem_data_dir {
@ -74,6 +70,3 @@ index 4a1bfe689872..2ba044d0d5e5 100644
}; };
#define spi_mem_controller_is_capable(ctlr, cap) \ #define spi_mem_controller_is_capable(ctlr, cap) \
--
2.35.1

View File

@ -16,11 +16,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-8-miquel.raynal@b
drivers/mtd/nand/spi/core.c | 16 ++++++++-------- drivers/mtd/nand/spi/core.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-) 1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c
index 2c8685f1f2fa..bb6b026b558b 100644
--- a/drivers/mtd/nand/spi/core.c --- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c
@@ -1208,14 +1208,6 @@ static int spinand_init(struct spinand_device *spinand) @@ -1210,14 +1210,6 @@ static int spinand_init(struct spinand_d
if (ret) if (ret)
goto err_free_bufs; goto err_free_bufs;
@ -35,7 +33,7 @@ index 2c8685f1f2fa..bb6b026b558b 100644
ret = nanddev_init(nand, &spinand_ops, THIS_MODULE); ret = nanddev_init(nand, &spinand_ops, THIS_MODULE);
if (ret) if (ret)
goto err_manuf_cleanup; goto err_manuf_cleanup;
@@ -1250,6 +1242,14 @@ static int spinand_init(struct spinand_device *spinand) @@ -1252,6 +1244,14 @@ static int spinand_init(struct spinand_d
mtd->ecc_strength = nanddev_get_ecc_conf(nand)->strength; mtd->ecc_strength = nanddev_get_ecc_conf(nand)->strength;
mtd->ecc_step_size = nanddev_get_ecc_conf(nand)->step_size; mtd->ecc_step_size = nanddev_get_ecc_conf(nand)->step_size;
@ -50,6 +48,3 @@ index 2c8685f1f2fa..bb6b026b558b 100644
return 0; return 0;
err_cleanup_ecc_engine: err_cleanup_ecc_engine:
--
2.35.1

View File

@ -27,11 +27,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-9-miquel.raynal@b
include/linux/mtd/spinand.h | 2 ++ include/linux/mtd/spinand.h | 2 ++
2 files changed, 35 insertions(+), 2 deletions(-) 2 files changed, 35 insertions(+), 2 deletions(-)
diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c
index bb6b026b558b..ff8336870bc0 100644
--- a/drivers/mtd/nand/spi/core.c --- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c
@@ -381,7 +381,10 @@ static int spinand_read_from_cache_op(struct spinand_device *spinand, @@ -381,7 +381,10 @@ static int spinand_read_from_cache_op(st
} }
} }
@ -43,7 +41,7 @@ index bb6b026b558b..ff8336870bc0 100644
while (nbytes) { while (nbytes) {
ret = spi_mem_dirmap_read(rdesc, column, nbytes, buf); ret = spi_mem_dirmap_read(rdesc, column, nbytes, buf);
@@ -452,7 +455,10 @@ static int spinand_write_to_cache_op(struct spinand_device *spinand, @@ -452,7 +455,10 @@ static int spinand_write_to_cache_op(str
req->ooblen); req->ooblen);
} }
@ -55,7 +53,7 @@ index bb6b026b558b..ff8336870bc0 100644
while (nbytes) { while (nbytes) {
ret = spi_mem_dirmap_write(wdesc, column, nbytes, buf); ret = spi_mem_dirmap_write(wdesc, column, nbytes, buf);
@@ -865,6 +871,31 @@ static int spinand_create_dirmap(struct spinand_device *spinand, @@ -865,6 +871,31 @@ static int spinand_create_dirmap(struct
spinand->dirmaps[plane].rdesc = desc; spinand->dirmaps[plane].rdesc = desc;
@ -87,11 +85,9 @@ index bb6b026b558b..ff8336870bc0 100644
return 0; return 0;
} }
diff --git a/include/linux/mtd/spinand.h b/include/linux/mtd/spinand.h
index 6988956b8492..3aa28240a77f 100644
--- a/include/linux/mtd/spinand.h --- a/include/linux/mtd/spinand.h
+++ b/include/linux/mtd/spinand.h +++ b/include/linux/mtd/spinand.h
@@ -389,6 +389,8 @@ struct spinand_info { @@ -391,6 +391,8 @@ struct spinand_info {
struct spinand_dirmap { struct spinand_dirmap {
struct spi_mem_dirmap_desc *wdesc; struct spi_mem_dirmap_desc *wdesc;
struct spi_mem_dirmap_desc *rdesc; struct spi_mem_dirmap_desc *rdesc;
@ -100,6 +96,3 @@ index 6988956b8492..3aa28240a77f 100644
}; };
/** /**
--
2.35.1

View File

@ -28,8 +28,6 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
drivers/mtd/nand/raw/mtk_ecc.c | 12 ++++++++---- drivers/mtd/nand/raw/mtk_ecc.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-) 1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/mtd/nand/raw/mtk_ecc.c b/drivers/mtd/nand/raw/mtk_ecc.c
index c437d97debb8..ec9d1fb07006 100644
--- a/drivers/mtd/nand/raw/mtk_ecc.c --- a/drivers/mtd/nand/raw/mtk_ecc.c
+++ b/drivers/mtd/nand/raw/mtk_ecc.c +++ b/drivers/mtd/nand/raw/mtk_ecc.c
@@ -43,6 +43,7 @@ @@ -43,6 +43,7 @@
@ -40,7 +38,7 @@ index c437d97debb8..ec9d1fb07006 100644
const u8 *ecc_strength; const u8 *ecc_strength;
const u32 *ecc_regs; const u32 *ecc_regs;
u8 num_ecc_strength; u8 num_ecc_strength;
@@ -76,7 +77,7 @@ static const u8 ecc_strength_mt2712[] = { @@ -76,7 +77,7 @@ static const u8 ecc_strength_mt2712[] =
}; };
static const u8 ecc_strength_mt7622[] = { static const u8 ecc_strength_mt7622[] = {
@ -49,7 +47,7 @@ index c437d97debb8..ec9d1fb07006 100644
}; };
enum mtk_ecc_regs { enum mtk_ecc_regs {
@@ -221,7 +222,7 @@ void mtk_ecc_get_stats(struct mtk_ecc *ecc, struct mtk_ecc_stats *stats, @@ -221,7 +222,7 @@ void mtk_ecc_get_stats(struct mtk_ecc *e
for (i = 0; i < sectors; i++) { for (i = 0; i < sectors; i++) {
offset = (i >> 2) << 2; offset = (i >> 2) << 2;
err = readl(ecc->regs + ECC_DECENUM0 + offset); err = readl(ecc->regs + ECC_DECENUM0 + offset);
@ -66,7 +64,7 @@ index c437d97debb8..ec9d1fb07006 100644
.ecc_strength = ecc_strength_mt2701, .ecc_strength = ecc_strength_mt2701,
.ecc_regs = mt2701_ecc_regs, .ecc_regs = mt2701_ecc_regs,
.num_ecc_strength = 20, .num_ecc_strength = 20,
@@ -459,6 +461,7 @@ static const struct mtk_ecc_caps mtk_ecc_caps_mt2701 = { @@ -459,6 +461,7 @@ static const struct mtk_ecc_caps mtk_ecc
static const struct mtk_ecc_caps mtk_ecc_caps_mt2712 = { static const struct mtk_ecc_caps mtk_ecc_caps_mt2712 = {
.err_mask = 0x7f, .err_mask = 0x7f,
@ -74,7 +72,7 @@ index c437d97debb8..ec9d1fb07006 100644
.ecc_strength = ecc_strength_mt2712, .ecc_strength = ecc_strength_mt2712,
.ecc_regs = mt2712_ecc_regs, .ecc_regs = mt2712_ecc_regs,
.num_ecc_strength = 23, .num_ecc_strength = 23,
@@ -468,10 +471,11 @@ static const struct mtk_ecc_caps mtk_ecc_caps_mt2712 = { @@ -468,10 +471,11 @@ static const struct mtk_ecc_caps mtk_ecc
}; };
static const struct mtk_ecc_caps mtk_ecc_caps_mt7622 = { static const struct mtk_ecc_caps mtk_ecc_caps_mt7622 = {
@ -88,6 +86,3 @@ index c437d97debb8..ec9d1fb07006 100644
.ecc_mode_shift = 4, .ecc_mode_shift = 4,
.parity_bits = 13, .parity_bits = 13,
.pg_irq_sel = 0, .pg_irq_sel = 0,
--
2.35.1

View File

@ -33,11 +33,9 @@ Changes since v5:
3 files changed, 1481 insertions(+) 3 files changed, 1481 insertions(+)
create mode 100644 drivers/spi/spi-mtk-snfi.c create mode 100644 drivers/spi/spi-mtk-snfi.c
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index 6c28ca232444..83c3c2b57a22 100644
--- a/drivers/spi/Kconfig --- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig
@@ -590,6 +590,16 @@ config SPI_MTK_NOR @@ -530,6 +530,16 @@ config SPI_MTK_NOR
SPI interface as well as several SPI NOR specific instructions SPI interface as well as several SPI NOR specific instructions
via SPI MEM interface. via SPI MEM interface.
@ -54,11 +52,9 @@ index 6c28ca232444..83c3c2b57a22 100644
config SPI_NPCM_FIU config SPI_NPCM_FIU
tristate "Nuvoton NPCM FLASH Interface Unit" tristate "Nuvoton NPCM FLASH Interface Unit"
depends on ARCH_NPCM || COMPILE_TEST depends on ARCH_NPCM || COMPILE_TEST
diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile
index 3aa28ed3f761..51541ff17e67 100644
--- a/drivers/spi/Makefile --- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile +++ b/drivers/spi/Makefile
@@ -76,6 +76,7 @@ obj-$(CONFIG_SPI_MPC52xx) += spi-mpc52xx.o @@ -71,6 +71,7 @@ obj-$(CONFIG_SPI_MPC52xx) += spi-mpc52x
obj-$(CONFIG_SPI_MT65XX) += spi-mt65xx.o obj-$(CONFIG_SPI_MT65XX) += spi-mt65xx.o
obj-$(CONFIG_SPI_MT7621) += spi-mt7621.o obj-$(CONFIG_SPI_MT7621) += spi-mt7621.o
obj-$(CONFIG_SPI_MTK_NOR) += spi-mtk-nor.o obj-$(CONFIG_SPI_MTK_NOR) += spi-mtk-nor.o
@ -66,9 +62,6 @@ index 3aa28ed3f761..51541ff17e67 100644
obj-$(CONFIG_SPI_MXIC) += spi-mxic.o obj-$(CONFIG_SPI_MXIC) += spi-mxic.o
obj-$(CONFIG_SPI_MXS) += spi-mxs.o obj-$(CONFIG_SPI_MXS) += spi-mxs.o
obj-$(CONFIG_SPI_NPCM_FIU) += spi-npcm-fiu.o obj-$(CONFIG_SPI_NPCM_FIU) += spi-npcm-fiu.o
diff --git a/drivers/spi/spi-mtk-snfi.c b/drivers/spi/spi-mtk-snfi.c
new file mode 100644
index 000000000000..2c556e304673
--- /dev/null --- /dev/null
+++ b/drivers/spi/spi-mtk-snfi.c +++ b/drivers/spi/spi-mtk-snfi.c
@@ -0,0 +1,1470 @@ @@ -0,0 +1,1470 @@
@ -1542,6 +1535,3 @@ index 000000000000..2c556e304673
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Chuanhong Guo <gch981213@gmail.com>"); +MODULE_AUTHOR("Chuanhong Guo <gch981213@gmail.com>");
+MODULE_DESCRIPTION("MeidaTek SPI-NAND Flash Controller Driver"); +MODULE_DESCRIPTION("MeidaTek SPI-NAND Flash Controller Driver");
--
2.35.1

View File

@ -14,11 +14,9 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
drivers/mtd/nand/ecc-mtk.c | 5 ++++- drivers/mtd/nand/ecc-mtk.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-) 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mtd/nand/ecc-mtk.c b/drivers/mtd/nand/ecc-mtk.c
index c64c3c45cdbc..79c7622af563 100644
--- a/drivers/mtd/nand/ecc-mtk.c --- a/drivers/mtd/nand/ecc-mtk.c
+++ b/drivers/mtd/nand/ecc-mtk.c +++ b/drivers/mtd/nand/ecc-mtk.c
@@ -279,7 +279,10 @@ struct mtk_ecc *of_mtk_ecc_get(struct device_node *of_node) @@ -279,7 +279,10 @@ struct mtk_ecc *of_mtk_ecc_get(struct de
struct mtk_ecc *ecc = NULL; struct mtk_ecc *ecc = NULL;
struct device_node *np; struct device_node *np;
@ -30,6 +28,3 @@ index c64c3c45cdbc..79c7622af563 100644
if (np) { if (np) {
ecc = mtk_ecc_get(np); ecc = mtk_ecc_get(np);
of_node_put(np); of_node_put(np);
--
2.35.1

View File

@ -12,11 +12,9 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
arch/arm64/boot/dts/mediatek/mt7622.dtsi | 12 ++++++++++++ arch/arm64/boot/dts/mediatek/mt7622.dtsi | 12 ++++++++++++
1 file changed, 12 insertions(+) 1 file changed, 12 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
index 890a942ec608..8cdb8cc94bd3 100644
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi --- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -545,6 +545,18 @@ nandc: nfi@1100d000 { @@ -552,6 +552,18 @@
status = "disabled"; status = "disabled";
}; };
@ -35,6 +33,3 @@ index 890a942ec608..8cdb8cc94bd3 100644
bch: ecc@1100e000 { bch: ecc@1100e000 {
compatible = "mediatek,mt7622-ecc"; compatible = "mediatek,mt7622-ecc";
reg = <0 0x1100e000 0 0x1000>; reg = <0 0x1100e000 0 0x1000>;
--
2.35.1

View File

@ -1,6 +1,6 @@
--- a/drivers/mtd/nand/spi/core.c --- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c
@@ -715,7 +715,7 @@ static int spinand_mtd_write(struct mtd_ @@ -714,7 +714,7 @@ static int spinand_mtd_write(struct mtd_
static bool spinand_isbad(struct nand_device *nand, const struct nand_pos *pos) static bool spinand_isbad(struct nand_device *nand, const struct nand_pos *pos)
{ {
struct spinand_device *spinand = nand_to_spinand(nand); struct spinand_device *spinand = nand_to_spinand(nand);
@ -9,7 +9,7 @@
struct nand_page_io_req req = { struct nand_page_io_req req = {
.pos = *pos, .pos = *pos,
.ooblen = sizeof(marker), .ooblen = sizeof(marker),
@@ -726,7 +726,7 @@ static bool spinand_isbad(struct nand_de @@ -725,7 +725,7 @@ static bool spinand_isbad(struct nand_de
spinand_select_target(spinand, pos->target); spinand_select_target(spinand, pos->target);
spinand_read_page(spinand, &req); spinand_read_page(spinand, &req);

View File

@ -8,7 +8,7 @@
static int spinand_read_reg_op(struct spinand_device *spinand, u8 reg, u8 *val) static int spinand_read_reg_op(struct spinand_device *spinand, u8 reg, u8 *val)
{ {
@@ -1331,6 +1332,7 @@ static int spinand_probe(struct spi_mem @@ -1332,6 +1333,7 @@ static int spinand_probe(struct spi_mem
if (ret) if (ret)
return ret; return ret;
@ -16,7 +16,7 @@
ret = mtd_device_register(mtd, NULL, 0); ret = mtd_device_register(mtd, NULL, 0);
if (ret) if (ret)
goto err_spinand_cleanup; goto err_spinand_cleanup;
@@ -1338,6 +1340,7 @@ static int spinand_probe(struct spi_mem @@ -1339,6 +1341,7 @@ static int spinand_probe(struct spi_mem
return 0; return 0;
err_spinand_cleanup: err_spinand_cleanup:
@ -24,7 +24,7 @@
spinand_cleanup(spinand); spinand_cleanup(spinand);
return ret; return ret;
@@ -1356,6 +1359,7 @@ static int spinand_remove(struct spi_mem @@ -1357,6 +1360,7 @@ static int spinand_remove(struct spi_mem
if (ret) if (ret)
return ret; return ret;

View File

@ -138,7 +138,7 @@ Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts --- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts +++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
@@ -292,18 +292,16 @@ @@ -302,18 +302,16 @@
}; };
}; };
@ -194,7 +194,7 @@ Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
&pio { &pio {
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi --- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -802,75 +802,83 @@ @@ -807,75 +807,83 @@
#reset-cells = <1>; #reset-cells = <1>;
}; };

View File

@ -1,6 +1,6 @@
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi --- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -842,6 +842,12 @@ @@ -847,6 +847,12 @@
#address-cells = <0>; #address-cells = <0>;
#interrupt-cells = <1>; #interrupt-cells = <1>;
}; };
@ -13,7 +13,7 @@
}; };
pcie1: pcie@1a145000 { pcie1: pcie@1a145000 {
@@ -880,6 +886,12 @@ @@ -885,6 +891,12 @@
#address-cells = <0>; #address-cells = <0>;
#interrupt-cells = <1>; #interrupt-cells = <1>;
}; };

View File

@ -149,7 +149,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
&pciephy1 { &pciephy1 {
--- a/arch/arm/boot/dts/mt7629.dtsi --- a/arch/arm/boot/dts/mt7629.dtsi
+++ b/arch/arm/boot/dts/mt7629.dtsi +++ b/arch/arm/boot/dts/mt7629.dtsi
@@ -377,16 +377,21 @@ @@ -382,16 +382,21 @@
#reset-cells = <1>; #reset-cells = <1>;
}; };
@ -177,7 +177,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
clocks = <&pciesys CLK_PCIE_P1_MAC_EN>, clocks = <&pciesys CLK_PCIE_P1_MAC_EN>,
<&pciesys CLK_PCIE_P0_AHB_EN>, <&pciesys CLK_PCIE_P0_AHB_EN>,
<&pciesys CLK_PCIE_P1_AUX_EN>, <&pciesys CLK_PCIE_P1_AUX_EN>,
@@ -407,21 +412,19 @@ @@ -412,21 +417,19 @@
power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>; power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>;
bus-range = <0x00 0xff>; bus-range = <0x00 0xff>;
ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>; ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>;

View File

@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi --- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -830,6 +830,9 @@ @@ -835,6 +835,9 @@
bus-range = <0x00 0xff>; bus-range = <0x00 0xff>;
ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x8000000>; ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x8000000>;
status = "disabled"; status = "disabled";
@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#interrupt-cells = <1>; #interrupt-cells = <1>;
interrupt-map-mask = <0 0 0 7>; interrupt-map-mask = <0 0 0 7>;
@@ -874,6 +877,9 @@ @@ -879,6 +882,9 @@
bus-range = <0x00 0xff>; bus-range = <0x00 0xff>;
ranges = <0x82000000 0 0x28000000 0x0 0x28000000 0 0x8000000>; ranges = <0x82000000 0 0x28000000 0x0 0x28000000 0 0x8000000>;
status = "disabled"; status = "disabled";

View File

@ -1,6 +1,6 @@
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts --- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts +++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
@@ -308,7 +308,7 @@ @@ -318,7 +318,7 @@
/* Attention: GPIO 90 is used to switch between PCIe@1,0 and /* Attention: GPIO 90 is used to switch between PCIe@1,0 and
* SATA functions. i.e. output-high: PCIe, output-low: SATA * SATA functions. i.e. output-high: PCIe, output-low: SATA
*/ */

View File

@ -1,6 +1,6 @@
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts --- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts +++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
@@ -635,5 +635,28 @@ @@ -645,5 +645,28 @@
}; };
&wmac { &wmac {