mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-19 13:48:06 +00:00
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:
parent
5d135fcf9d
commit
9b4041fa2e
@ -8,8 +8,6 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
|
||||
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
|
||||
|
||||
|
@ -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 <miquel.raynal@bootlin.com>");
|
||||
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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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 <miquel.raynal@bootlin.com>");
|
||||
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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
||||
|
@ -28,8 +28,6 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
|
||||
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
|
||||
|
||||
|
@ -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 <gch981213@gmail.com>");
|
||||
+MODULE_DESCRIPTION("MeidaTek SPI-NAND Flash Controller Driver");
|
||||
--
|
||||
2.35.1
|
||||
|
||||
|
@ -14,11 +14,9 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
|
||||
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
|
||||
|
||||
|
@ -12,11 +12,9 @@ Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
|
||||
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
|
||||
|
||||
|
@ -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);
|
||||
|
@ -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;
|
||||
|
||||
|
@ -138,7 +138,7 @@ Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
|
||||
|
||||
--- 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 <matthias.bgg@gmail.com>
|
||||
&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>;
|
||||
};
|
||||
|
||||
|
@ -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>;
|
||||
};
|
||||
|
@ -149,7 +149,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
|
||||
&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 <Chuanjia.Liu@mediatek.com>
|
||||
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>;
|
||||
|
@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- 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 <nbd@nbd.name>
|
||||
|
||||
#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";
|
||||
|
@ -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
|
||||
*/
|
||||
|
@ -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 {
|
||||
|
Loading…
Reference in New Issue
Block a user