Re: [PATCH v15 1/8] mtd: spi-nor: s/addr_width/addr_nbytes

Pratyush Yadav
2022-05-31T11:14:38Z

On 10/05/22 07:10AM, tkuw584924@gmail.com wrote:
> From: Tudor Ambarus <tudor.ambarus@microchip.com>
>
> Address width was an unfortunate name, as it means the number of IO lines
> used for the address, whereas in the code it is used as the number of
> address bytes. s/addr_width/addr_nbytes throughout the entire SPI NOR
> framework.
>
> Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
> ---
> drivers/mtd/spi-nor/controllers/aspeed-smc.c | 6 +--
> drivers/mtd/spi-nor/controllers/hisi-sfc.c | 2 +-
> drivers/mtd/spi-nor/controllers/nxp-spifi.c | 8 ++--
> drivers/mtd/spi-nor/core.c | 46 ++++++++++----------
> drivers/mtd/spi-nor/core.h | 12 ++---
> drivers/mtd/spi-nor/issi.c | 2 +-
> drivers/mtd/spi-nor/otp.c | 12 ++---
> drivers/mtd/spi-nor/sfdp.c | 32 +++++++-------
> drivers/mtd/spi-nor/xilinx.c | 2 +-
> include/linux/mtd/spi-nor.h | 4 +-
> 10 files changed, 63 insertions(+), 63 deletions(-)
>
> diff --git a/drivers/mtd/spi-nor/controllers/aspeed-smc.c b/drivers/mtd/spi-nor/controllers/aspeed-smc.c
> index acfe010f9dd7..5ac8c321535b 100644
> --- a/drivers/mtd/spi-nor/controllers/aspeed-smc.c
> +++ b/drivers/mtd/spi-nor/controllers/aspeed-smc.c
> @@ -350,10 +350,10 @@ static void aspeed_smc_send_cmd_addr(struct spi_nor *nor, u8 cmd, u32 addr)
> __be32 temp;
> u32 cmdaddr;
>
> - switch (nor->addr_width) {
> + switch (nor->addr_nbytes) {
> default:
> WARN_ONCE(1, "Unexpected address width %u, defaulting to 3\n",

s/width/nbytes/ here as well.

> - nor->addr_width);
> + nor->addr_nbytes);
> fallthrough;
> case 3:
> cmdaddr = addr & 0xFFFFFF;
> @@ -709,7 +709,7 @@ static int aspeed_smc_chip_setup_finish(struct aspeed_smc_chip *chip)
> const struct aspeed_smc_info *info = controller->info;
> u32 cmd;
>
> - if (chip->nor.addr_width == 4 && info->set_4b)
> + if (chip->nor.addr_nbytes == 4 && info->set_4b)
> info->set_4b(chip);
>
> /* This is for direct AHB access when using Command Mode. */
> diff --git a/drivers/mtd/spi-nor/controllers/hisi-sfc.c b/drivers/mtd/spi-nor/controllers/hisi-sfc.c
> index 94a969185ceb..5070d72835ec 100644
> --- a/drivers/mtd/spi-nor/controllers/hisi-sfc.c
> +++ b/drivers/mtd/spi-nor/controllers/hisi-sfc.c
> @@ -237,7 +237,7 @@ static int hisi_spi_nor_dma_transfer(struct spi_nor *nor, loff_t start_off,
> reg = readl(host->regbase + FMC_CFG);
> reg &= ~(FMC_CFG_OP_MODE_MASK | SPI_NOR_ADDR_MODE_MASK);
> reg |= FMC_CFG_OP_MODE_NORMAL;
> - reg |= (nor->addr_width == 4) ? SPI_NOR_ADDR_MODE_4BYTES
> + reg |= (nor->addr_nbytes == 4) ? SPI_NOR_ADDR_MODE_4BYTES
> : SPI_NOR_ADDR_MODE_3BYTES;
> writel(reg, host->regbase + FMC_CFG);
>
> diff --git a/drivers/mtd/spi-nor/controllers/nxp-spifi.c b/drivers/mtd/spi-nor/controllers/nxp-spifi.c
> index 9032b9ab2eaf..ab3990e6ac25 100644
> --- a/drivers/mtd/spi-nor/controllers/nxp-spifi.c
> +++ b/drivers/mtd/spi-nor/controllers/nxp-spifi.c
> @@ -203,7 +203,7 @@ static ssize_t nxp_spifi_write(struct spi_nor *nor, loff_t to, size_t len,
> SPIFI_CMD_DATALEN(len) |
> SPIFI_CMD_FIELDFORM_ALL_SERIAL |
> SPIFI_CMD_OPCODE(nor->program_opcode) |
> - SPIFI_CMD_FRAMEFORM(spifi->nor.addr_width + 1);
> + SPIFI_CMD_FRAMEFORM(spifi->nor.addr_nbytes + 1);
> writel(cmd, spifi->io_base + SPIFI_CMD);
>
> for (i = 0; i < len; i++)
> @@ -230,7 +230,7 @@ static int nxp_spifi_erase(struct spi_nor *nor, loff_t offs)
>
> cmd = SPIFI_CMD_FIELDFORM_ALL_SERIAL |
> SPIFI_CMD_OPCODE(nor->erase_opcode) |
> - SPIFI_CMD_FRAMEFORM(spifi->nor.addr_width + 1);
> + SPIFI_CMD_FRAMEFORM(spifi->nor.addr_nbytes + 1);
> writel(cmd, spifi->io_base + SPIFI_CMD);
>
> return nxp_spifi_wait_for_cmd(spifi);
> @@ -252,12 +252,12 @@ static int nxp_spifi_setup_memory_cmd(struct nxp_spifi *spifi)
> }
>
> /* Memory mode supports address length between 1 and 4 */
> - if (spifi->nor.addr_width < 1 || spifi->nor.addr_width > 4)
> + if (spifi->nor.addr_nbytes < 1 || spifi->nor.addr_nbytes > 4)
> return -EINVAL;
>
> spifi->mcmd |= SPIFI_CMD_OPCODE(spifi->nor.read_opcode) |
> SPIFI_CMD_INTLEN(spifi->nor.read_dummy / 8) |
> - SPIFI_CMD_FRAMEFORM(spifi->nor.addr_width + 1);
> + SPIFI_CMD_FRAMEFORM(spifi->nor.addr_nbytes + 1);
>
> return 0;
> }
> diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c
> index 2bfa84100d38..7db6b41d7c30 100644
> --- a/drivers/mtd/spi-nor/core.c
> +++ b/drivers/mtd/spi-nor/core.c
> @@ -38,7 +38,7 @@
> */
> #define CHIP_ERASE_2MB_READY_WAIT_JIFFIES (40UL * HZ)
>
> -#define SPI_NOR_MAX_ADDR_WIDTH 4
> +#define SPI_NOR_MAX_ADDR_NBYTES 4
>
> #define SPI_NOR_SRST_SLEEP_MIN 200
> #define SPI_NOR_SRST_SLEEP_MAX 400
> @@ -198,7 +198,7 @@ static ssize_t spi_nor_spimem_read_data(struct spi_nor *nor, loff_t from,
> {
> struct spi_mem_op op =
> SPI_MEM_OP(SPI_MEM_OP_CMD(nor->read_opcode, 0),
> - SPI_MEM_OP_ADDR(nor->addr_width, from, 0),
> + SPI_MEM_OP_ADDR(nor->addr_nbytes, from, 0),

I am guessing this patch no longer applies since c0abb861c5d0 ("mtd:
spi-nor: Introduce templates for SPI NOR operations"). Patch looks good
otherwise.

Acked-by: Pratyush Yadav <p.yadav@ti.com>

[...]

--
Regards,
Pratyush Yadav
Texas Instruments Inc.