diff --git a/target/linux/mediatek/patches-5.15/103-mt7623-enable-arch-timer.patch b/target/linux/mediatek/patches-5.15/103-mt7623-enable-arch-timer.patch index ea455c47214..04df7b927b1 100644 --- a/target/linux/mediatek/patches-5.15/103-mt7623-enable-arch-timer.patch +++ b/target/linux/mediatek/patches-5.15/103-mt7623-enable-arch-timer.patch @@ -8,8 +8,6 @@ Signed-off-by: Chuanhong Guo arch/arm/mach-mediatek/Kconfig | 1 + 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 +++ b/arch/arm/mach-mediatek/Kconfig @@ -26,6 +26,7 @@ config MACH_MT6592 @@ -20,6 +18,3 @@ index 35a3430c7942..8a8d9142260a 100644 config MACH_MT7629 bool "MediaTek MT7629 SoCs support" --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-01-v5.18-mtd-nand-ecc-Add-infrastructure-to-support-hardware-.patch b/target/linux/mediatek/patches-5.15/120-01-v5.18-mtd-nand-ecc-Add-infrastructure-to-support-hardware-.patch index b6b069d234e..7fb62e7403c 100644 --- a/target/linux/mediatek/patches-5.15/120-01-v5.18-mtd-nand-ecc-Add-infrastructure-to-support-hardware-.patch +++ b/target/linux/mediatek/patches-5.15/120-01-v5.18-mtd-nand-ecc-Add-infrastructure-to-support-hardware-.patch @@ -24,11 +24,9 @@ Link: https://lore.kernel.org/linux-mtd/20211216111654.238086-13-miquel.raynal@b include/linux/mtd/nand.h | 28 +++++++++++++ 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 +++ 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); break; case NAND_ECC_ENGINE_TYPE_ON_HOST: @@ -39,7 +37,7 @@ index 5e13a03d2b32..b228b4d13b7a 100644 break; default: 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) { case NAND_ECC_ENGINE_TYPE_ON_HOST: @@ -48,7 +46,7 @@ index 5e13a03d2b32..b228b4d13b7a 100644 break; case NAND_ECC_ENGINE_TYPE_NONE: 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 */ ret = nanddev_get_ecc_engine(nand); if (ret) { @@ -59,8 +57,6 @@ index 5e13a03d2b32..b228b4d13b7a 100644 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 +++ b/drivers/mtd/nand/ecc.c @@ -96,6 +96,12 @@ @@ -76,7 +72,7 @@ index 6c43dfda01d4..078f5ec38de3 100644 /** * 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); @@ -165,15 +161,12 @@ index 6c43dfda01d4..078f5ec38de3 100644 MODULE_LICENSE("GPL"); MODULE_AUTHOR("Miquel Raynal "); 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 +++ b/include/linux/mtd/nand.h -@@ -263,12 +263,36 @@ struct nand_ecc_engine_ops { - struct nand_page_io_req *req); +@@ -264,11 +264,35 @@ struct nand_ecc_engine_ops { }; -+/** + /** + * enum nand_ecc_engine_integration - How the NAND ECC engine is integrated + * @NAND_ECC_ENGINE_INTEGRATION_INVALID: Invalid value + * @NAND_ECC_ENGINE_INTEGRATION_PIPELINED: Pipelined engine, performs on-the-fly @@ -188,7 +181,7 @@ index 32fc7edf65b3..4ddd20fe9c9e 100644 + NAND_ECC_ENGINE_INTEGRATION_EXTERNAL, +}; + - /** ++/** * struct nand_ecc_engine - ECC engine abstraction for NAND devices + * @dev: Host device + * @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); -@@ -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, struct nand_page_io_req *req); 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) struct nand_ecc_engine *nand_ecc_sw_hamming_get_engine(void); --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-02-v5.18-mtd-nand-Add-a-new-helper-to-retrieve-the-ECC-contex.patch b/target/linux/mediatek/patches-5.15/120-02-v5.18-mtd-nand-Add-a-new-helper-to-retrieve-the-ECC-contex.patch index 6522507786c..61a39ee0e59 100644 --- a/target/linux/mediatek/patches-5.15/120-02-v5.18-mtd-nand-Add-a-new-helper-to-retrieve-the-ECC-contex.patch +++ b/target/linux/mediatek/patches-5.15/120-02-v5.18-mtd-nand-Add-a-new-helper-to-retrieve-the-ECC-contex.patch @@ -15,11 +15,9 @@ Link: https://lore.kernel.org/linux-mtd/20211216111654.238086-14-miquel.raynal@b include/linux/mtd/nand.h | 5 +++++ 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 +++ 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); void nanddev_ecc_engine_cleanup(struct nand_device *nand); @@ -31,6 +29,3 @@ index 4ddd20fe9c9e..b617efa0a881 100644 /* BBT related functions */ enum nand_bbt_block_status { NAND_BBT_BLOCK_STATUS_UNKNOWN, --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-03-v5.18-mtd-nand-ecc-Provide-a-helper-to-retrieve-a-pileline.patch b/target/linux/mediatek/patches-5.15/120-03-v5.18-mtd-nand-ecc-Provide-a-helper-to-retrieve-a-pileline.patch index ce353a92262..29b62880abd 100644 --- a/target/linux/mediatek/patches-5.15/120-03-v5.18-mtd-nand-ecc-Provide-a-helper-to-retrieve-a-pileline.patch +++ b/target/linux/mediatek/patches-5.15/120-03-v5.18-mtd-nand-ecc-Provide-a-helper-to-retrieve-a-pileline.patch @@ -21,11 +21,9 @@ Link: https://lore.kernel.org/linux-mtd/20211216111654.238086-16-miquel.raynal@b include/linux/mtd/nand.h | 1 + 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 +++ 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); @@ -63,11 +61,9 @@ index 078f5ec38de3..5250764cedee 100644 MODULE_LICENSE("GPL"); MODULE_AUTHOR("Miquel Raynal "); 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 +++ 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_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) struct nand_ecc_engine *nand_ecc_sw_hamming_get_engine(void); --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-04-v5.18-spi-spi-mem-Introduce-a-capability-structure.patch b/target/linux/mediatek/patches-5.15/120-04-v5.18-spi-spi-mem-Introduce-a-capability-structure.patch index bcd2ee80041..1e7f572dd66 100644 --- a/target/linux/mediatek/patches-5.15/120-04-v5.18-spi-spi-mem-Introduce-a-capability-structure.patch +++ b/target/linux/mediatek/patches-5.15/120-04-v5.18-spi-spi-mem-Introduce-a-capability-structure.patch @@ -23,15 +23,12 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-2-miquel.raynal@b include/linux/spi/spi.h | 3 +++ 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 +++ b/include/linux/spi/spi-mem.h -@@ -285,6 +285,17 @@ struct spi_controller_mem_ops { - unsigned long timeout_ms); +@@ -286,6 +286,17 @@ struct spi_controller_mem_ops { }; -+/** + /** + * struct spi_controller_mem_caps - SPI memory controller capabilities + * @dtr: Supports DTR operations + */ @@ -42,11 +39,10 @@ index 85e2ff7b840d..38e5d45c9842 100644 +#define spi_mem_controller_is_capable(ctlr, cap) \ + ((ctlr)->mem_caps && (ctlr)->mem_caps->cap) + - /** ++/** * struct spi_mem_driver - SPI memory driver * @spidrv: inherit from a SPI driver -diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h -index 6b0b686f6f90..8ac58b1a2a9f 100644 + * @probe: probe a SPI memory. Usually where detection/initialization takes --- a/include/linux/spi/spi.h +++ b/include/linux/spi/spi.h @@ -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, -@@ -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. * This field is optional and should only be implemented if the * controller has native support for memory like operations. @@ -73,6 +69,3 @@ index 6b0b686f6f90..8ac58b1a2a9f 100644 /* gpio chip select */ int *cs_gpios; --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-05-v5.18-spi-spi-mem-Check-the-controller-extra-capabilities.patch b/target/linux/mediatek/patches-5.15/120-05-v5.18-spi-spi-mem-Check-the-controller-extra-capabilities.patch index 20e7bac6514..9f01fdb8353 100644 --- a/target/linux/mediatek/patches-5.15/120-05-v5.18-spi-spi-mem-Check-the-controller-extra-capabilities.patch +++ b/target/linux/mediatek/patches-5.15/120-05-v5.18-spi-spi-mem-Check-the-controller-extra-capabilities.patch @@ -22,11 +22,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-3-miquel.raynal@b drivers/spi/spi-mem.c | 17 +++++++++++++---- 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 +++ 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, const struct spi_mem_op *op) { @@ -51,6 +49,3 @@ index 37f4443ce9a0..86e6597bc3dc 100644 return spi_mem_check_buswidth(mem, op); } --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-06-v5.18-spi-spi-mem-Kill-the-spi_mem_dtr_supports_op-helper.patch b/target/linux/mediatek/patches-5.15/120-06-v5.18-spi-spi-mem-Kill-the-spi_mem_dtr_supports_op-helper.patch index efc0ed526c8..0c9e7231518 100644 --- a/target/linux/mediatek/patches-5.15/120-06-v5.18-spi-spi-mem-Kill-the-spi_mem_dtr_supports_op-helper.patch +++ b/target/linux/mediatek/patches-5.15/120-06-v5.18-spi-spi-mem-Kill-the-spi_mem_dtr_supports_op-helper.patch @@ -23,11 +23,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-6-miquel.raynal@b include/linux/spi/spi-mem.h | 11 ----------- 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 +++ 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)) return false; @@ -39,11 +37,9 @@ index 101cc71bffa7..2c98d6a9a2aa 100644 } 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 +++ 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; } @@ -60,11 +56,9 @@ index 86e6597bc3dc..ed966d8129eb 100644 bool spi_mem_default_supports_op(struct spi_mem *mem, 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 +++ 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, const struct spi_mem_op *op) { @@ -73,7 +67,7 @@ index 45889947afed..e895df09896a 100644 if (op->data.buswidth > 8 || op->addr.buswidth > 8 || op->dummy.buswidth > 8 || op->cmd.buswidth > 8) 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) return false; @@ -88,11 +82,9 @@ index 45889947afed..e895df09896a 100644 } 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 +++ 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, const struct spi_mem_op *op); @@ -103,7 +95,7 @@ index 38e5d45c9842..4a1bfe689872 100644 #else static inline int 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; } @@ -117,6 +109,3 @@ index 38e5d45c9842..4a1bfe689872 100644 #endif /* CONFIG_SPI_MEM */ int spi_mem_adjust_op_size(struct spi_mem *mem, struct spi_mem_op *op); --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-07-v5.18-spi-spi-mem-Add-an-ecc-parameter-to-the-spi_mem_op-s.patch b/target/linux/mediatek/patches-5.15/120-07-v5.18-spi-spi-mem-Add-an-ecc-parameter-to-the-spi_mem_op-s.patch index fd9e9e2c482..6d7e47650b2 100644 --- a/target/linux/mediatek/patches-5.15/120-07-v5.18-spi-spi-mem-Add-an-ecc-parameter-to-the-spi_mem_op-s.patch +++ b/target/linux/mediatek/patches-5.15/120-07-v5.18-spi-spi-mem-Add-an-ecc-parameter-to-the-spi_mem_op-s.patch @@ -26,11 +26,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-7-miquel.raynal@b include/linux/spi/spi-mem.h | 4 ++++ 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 +++ 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; } @@ -42,8 +40,6 @@ index ed966d8129eb..f38ac31961c9 100644 return spi_mem_check_buswidth(mem, 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 +++ b/include/linux/spi/spi-mem.h @@ -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) \ --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-08-v5.18-mtd-spinand-Delay-a-little-bit-the-dirmap-creation.patch b/target/linux/mediatek/patches-5.15/120-08-v5.18-mtd-spinand-Delay-a-little-bit-the-dirmap-creation.patch index d8c0e1bcd8b..192b1221edd 100644 --- a/target/linux/mediatek/patches-5.15/120-08-v5.18-mtd-spinand-Delay-a-little-bit-the-dirmap-creation.patch +++ b/target/linux/mediatek/patches-5.15/120-08-v5.18-mtd-spinand-Delay-a-little-bit-the-dirmap-creation.patch @@ -16,11 +16,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-8-miquel.raynal@b drivers/mtd/nand/spi/core.c | 16 ++++++++-------- 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 +++ 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) goto err_free_bufs; @@ -35,7 +33,7 @@ index 2c8685f1f2fa..bb6b026b558b 100644 ret = nanddev_init(nand, &spinand_ops, THIS_MODULE); if (ret) 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_step_size = nanddev_get_ecc_conf(nand)->step_size; @@ -50,6 +48,3 @@ index 2c8685f1f2fa..bb6b026b558b 100644 return 0; err_cleanup_ecc_engine: --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-09-v5.18-mtd-spinand-Create-direct-mapping-descriptors-for-EC.patch b/target/linux/mediatek/patches-5.15/120-09-v5.18-mtd-spinand-Create-direct-mapping-descriptors-for-EC.patch index ee3a6d384f9..86df0270d82 100644 --- a/target/linux/mediatek/patches-5.15/120-09-v5.18-mtd-spinand-Create-direct-mapping-descriptors-for-EC.patch +++ b/target/linux/mediatek/patches-5.15/120-09-v5.18-mtd-spinand-Create-direct-mapping-descriptors-for-EC.patch @@ -27,11 +27,9 @@ Link: https://lore.kernel.org/linux-mtd/20220127091808.1043392-9-miquel.raynal@b include/linux/mtd/spinand.h | 2 ++ 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 +++ 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) { 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); } @@ -55,7 +53,7 @@ index bb6b026b558b..ff8336870bc0 100644 while (nbytes) { 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; @@ -87,11 +85,9 @@ index bb6b026b558b..ff8336870bc0 100644 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 +++ b/include/linux/mtd/spinand.h -@@ -389,6 +389,8 @@ struct spinand_info { +@@ -391,6 +391,8 @@ struct spinand_info { struct spinand_dirmap { struct spi_mem_dirmap_desc *wdesc; struct spi_mem_dirmap_desc *rdesc; @@ -100,6 +96,3 @@ index 6988956b8492..3aa28240a77f 100644 }; /** --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-10-v5.18-mtd-nand-fix-ecc-parameters-for-mt7622.patch b/target/linux/mediatek/patches-5.15/120-10-v5.18-mtd-nand-fix-ecc-parameters-for-mt7622.patch index 7dbcf2fcdaf..e1c9493a1ca 100644 --- a/target/linux/mediatek/patches-5.15/120-10-v5.18-mtd-nand-fix-ecc-parameters-for-mt7622.patch +++ b/target/linux/mediatek/patches-5.15/120-10-v5.18-mtd-nand-fix-ecc-parameters-for-mt7622.patch @@ -28,8 +28,6 @@ Signed-off-by: Chuanhong Guo drivers/mtd/nand/raw/mtk_ecc.c | 12 ++++++++---- 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 +++ b/drivers/mtd/nand/raw/mtk_ecc.c @@ -43,6 +43,7 @@ @@ -40,7 +38,7 @@ index c437d97debb8..ec9d1fb07006 100644 const u8 *ecc_strength; const u32 *ecc_regs; 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[] = { @@ -49,7 +47,7 @@ index c437d97debb8..ec9d1fb07006 100644 }; 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++) { offset = (i >> 2) << 2; err = readl(ecc->regs + ECC_DECENUM0 + offset); @@ -66,7 +64,7 @@ index c437d97debb8..ec9d1fb07006 100644 .ecc_strength = ecc_strength_mt2701, .ecc_regs = mt2701_ecc_regs, .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 = { .err_mask = 0x7f, @@ -74,7 +72,7 @@ index c437d97debb8..ec9d1fb07006 100644 .ecc_strength = ecc_strength_mt2712, .ecc_regs = mt2712_ecc_regs, .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 = { @@ -88,6 +86,3 @@ index c437d97debb8..ec9d1fb07006 100644 .ecc_mode_shift = 4, .parity_bits = 13, .pg_irq_sel = 0, --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-12-spi-add-driver-for-MTK-SPI-NAND-Flash-Interface.patch b/target/linux/mediatek/patches-5.15/120-12-spi-add-driver-for-MTK-SPI-NAND-Flash-Interface.patch index 2d380064b8f..b77b4ad4c47 100644 --- a/target/linux/mediatek/patches-5.15/120-12-spi-add-driver-for-MTK-SPI-NAND-Flash-Interface.patch +++ b/target/linux/mediatek/patches-5.15/120-12-spi-add-driver-for-MTK-SPI-NAND-Flash-Interface.patch @@ -33,11 +33,9 @@ Changes since v5: 3 files changed, 1481 insertions(+) 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 +++ 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 via SPI MEM interface. @@ -54,11 +52,9 @@ index 6c28ca232444..83c3c2b57a22 100644 config SPI_NPCM_FIU tristate "Nuvoton NPCM FLASH Interface Unit" depends on ARCH_NPCM || COMPILE_TEST -diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile -index 3aa28ed3f761..51541ff17e67 100644 --- a/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_MT7621) += spi-mt7621.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_MXS) += spi-mxs.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 +++ b/drivers/spi/spi-mtk-snfi.c @@ -0,0 +1,1470 @@ @@ -1542,6 +1535,3 @@ index 000000000000..2c556e304673 +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Chuanhong Guo "); +MODULE_DESCRIPTION("MeidaTek SPI-NAND Flash Controller Driver"); --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-13-mtd-nand-mtk-ecc-also-parse-nand-ecc-engine-if-avail.patch b/target/linux/mediatek/patches-5.15/120-13-mtd-nand-mtk-ecc-also-parse-nand-ecc-engine-if-avail.patch index 80d482b6a5e..01d9d12088c 100644 --- a/target/linux/mediatek/patches-5.15/120-13-mtd-nand-mtk-ecc-also-parse-nand-ecc-engine-if-avail.patch +++ b/target/linux/mediatek/patches-5.15/120-13-mtd-nand-mtk-ecc-also-parse-nand-ecc-engine-if-avail.patch @@ -14,11 +14,9 @@ Signed-off-by: Chuanhong Guo drivers/mtd/nand/ecc-mtk.c | 5 ++++- 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 +++ 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 device_node *np; @@ -30,6 +28,3 @@ index c64c3c45cdbc..79c7622af563 100644 if (np) { ecc = mtk_ecc_get(np); of_node_put(np); --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/120-14-arm64-dts-mediatek-add-mtk-snfi-for-mt7622.patch b/target/linux/mediatek/patches-5.15/120-14-arm64-dts-mediatek-add-mtk-snfi-for-mt7622.patch index 81452ade25d..d5285676fec 100644 --- a/target/linux/mediatek/patches-5.15/120-14-arm64-dts-mediatek-add-mtk-snfi-for-mt7622.patch +++ b/target/linux/mediatek/patches-5.15/120-14-arm64-dts-mediatek-add-mtk-snfi-for-mt7622.patch @@ -12,11 +12,9 @@ Signed-off-by: Chuanhong Guo arch/arm64/boot/dts/mediatek/mt7622.dtsi | 12 ++++++++++++ 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 +++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi -@@ -545,6 +545,18 @@ nandc: nfi@1100d000 { +@@ -552,6 +552,18 @@ status = "disabled"; }; @@ -35,6 +33,3 @@ index 890a942ec608..8cdb8cc94bd3 100644 bch: ecc@1100e000 { compatible = "mediatek,mt7622-ecc"; reg = <0 0x1100e000 0 0x1000>; --- -2.35.1 - diff --git a/target/linux/mediatek/patches-5.15/121-hack-spi-nand-1b-bbm.patch b/target/linux/mediatek/patches-5.15/121-hack-spi-nand-1b-bbm.patch index eccd3633951..770a7ff9bd9 100644 --- a/target/linux/mediatek/patches-5.15/121-hack-spi-nand-1b-bbm.patch +++ b/target/linux/mediatek/patches-5.15/121-hack-spi-nand-1b-bbm.patch @@ -1,6 +1,6 @@ --- a/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) { struct spinand_device *spinand = nand_to_spinand(nand); @@ -9,7 +9,7 @@ struct nand_page_io_req req = { .pos = *pos, .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_read_page(spinand, &req); diff --git a/target/linux/mediatek/patches-5.15/330-snand-mtk-bmt-support.patch b/target/linux/mediatek/patches-5.15/330-snand-mtk-bmt-support.patch index 26ec7eada0f..48bfb0d3581 100644 --- a/target/linux/mediatek/patches-5.15/330-snand-mtk-bmt-support.patch +++ b/target/linux/mediatek/patches-5.15/330-snand-mtk-bmt-support.patch @@ -8,7 +8,7 @@ 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) return ret; @@ -16,7 +16,7 @@ ret = mtd_device_register(mtd, NULL, 0); if (ret) 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; err_spinand_cleanup: @@ -24,7 +24,7 @@ spinand_cleanup(spinand); 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) return ret; diff --git a/target/linux/mediatek/patches-5.15/600-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-and-MT.patch b/target/linux/mediatek/patches-5.15/600-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-and-MT.patch index a1f744f5daa..0c9b6d915b7 100644 --- a/target/linux/mediatek/patches-5.15/600-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-and-MT.patch +++ b/target/linux/mediatek/patches-5.15/600-arm64-dts-mediatek-Split-PCIe-node-for-MT2712-and-MT.patch @@ -138,7 +138,7 @@ Signed-off-by: Matthias Brugger --- a/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 &pio { --- a/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>; }; diff --git a/target/linux/mediatek/patches-5.15/602-arm64-dts-mediatek-add-mt7622-pcie-slot-node.patch b/target/linux/mediatek/patches-5.15/602-arm64-dts-mediatek-add-mt7622-pcie-slot-node.patch index 25a5eb87c7f..4ac5685c2c9 100644 --- a/target/linux/mediatek/patches-5.15/602-arm64-dts-mediatek-add-mt7622-pcie-slot-node.patch +++ b/target/linux/mediatek/patches-5.15/602-arm64-dts-mediatek-add-mt7622-pcie-slot-node.patch @@ -1,6 +1,6 @@ --- a/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>; #interrupt-cells = <1>; }; @@ -13,7 +13,7 @@ }; pcie1: pcie@1a145000 { -@@ -880,6 +886,12 @@ +@@ -885,6 +891,12 @@ #address-cells = <0>; #interrupt-cells = <1>; }; diff --git a/target/linux/mediatek/patches-5.15/603-ARM-dts-mediatek-Update-mt7629-PCIe-node.patch b/target/linux/mediatek/patches-5.15/603-ARM-dts-mediatek-Update-mt7629-PCIe-node.patch index 8ce46383576..252ef080f59 100644 --- a/target/linux/mediatek/patches-5.15/603-ARM-dts-mediatek-Update-mt7629-PCIe-node.patch +++ b/target/linux/mediatek/patches-5.15/603-ARM-dts-mediatek-Update-mt7629-PCIe-node.patch @@ -149,7 +149,7 @@ Signed-off-by: chuanjia.liu &pciephy1 { --- a/arch/arm/boot/dts/mt7629.dtsi +++ b/arch/arm/boot/dts/mt7629.dtsi -@@ -377,16 +377,21 @@ +@@ -382,16 +382,21 @@ #reset-cells = <1>; }; @@ -177,7 +177,7 @@ Signed-off-by: chuanjia.liu clocks = <&pciesys CLK_PCIE_P1_MAC_EN>, <&pciesys CLK_PCIE_P0_AHB_EN>, <&pciesys CLK_PCIE_P1_AUX_EN>, -@@ -407,21 +412,19 @@ +@@ -412,21 +417,19 @@ power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>; bus-range = <0x00 0xff>; ranges = <0x82000000 0 0x20000000 0x20000000 0 0x10000000>; diff --git a/target/linux/mediatek/patches-5.15/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch b/target/linux/mediatek/patches-5.15/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch index 571a5f7d482..8a577459b09 100644 --- a/target/linux/mediatek/patches-5.15/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch +++ b/target/linux/mediatek/patches-5.15/710-pci-pcie-mediatek-add-support-for-coherent-DMA.patch @@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau --- a/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>; ranges = <0x82000000 0 0x20000000 0x0 0x20000000 0 0x8000000>; status = "disabled"; @@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau #interrupt-cells = <1>; interrupt-map-mask = <0 0 0 7>; -@@ -874,6 +877,9 @@ +@@ -879,6 +882,9 @@ bus-range = <0x00 0xff>; ranges = <0x82000000 0 0x28000000 0x0 0x28000000 0 0x8000000>; status = "disabled"; diff --git a/target/linux/mediatek/patches-5.15/900-dts-mt7622-bpi-r64-aliases-for-dtoverlay.patch b/target/linux/mediatek/patches-5.15/900-dts-mt7622-bpi-r64-aliases-for-dtoverlay.patch index 987513eb454..b15d04f8bb0 100644 --- a/target/linux/mediatek/patches-5.15/900-dts-mt7622-bpi-r64-aliases-for-dtoverlay.patch +++ b/target/linux/mediatek/patches-5.15/900-dts-mt7622-bpi-r64-aliases-for-dtoverlay.patch @@ -1,6 +1,6 @@ --- a/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 * SATA functions. i.e. output-high: PCIe, output-low: SATA */ diff --git a/target/linux/mediatek/patches-5.15/910-dts-mt7622-bpi-r64-wifi-eeprom.patch b/target/linux/mediatek/patches-5.15/910-dts-mt7622-bpi-r64-wifi-eeprom.patch index 72211af588f..2a863aecf93 100644 --- a/target/linux/mediatek/patches-5.15/910-dts-mt7622-bpi-r64-wifi-eeprom.patch +++ b/target/linux/mediatek/patches-5.15/910-dts-mt7622-bpi-r64-wifi-eeprom.patch @@ -1,6 +1,6 @@ --- a/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 {