Re: [PATCH V6 02/15] net: Replace all spi->chip_select and spi->cs_gpiod references with function call
From: Lukasz Stelmach
Date: Wed Mar 15 2023 - 09:46:56 EST
It was <2023-03-10 pią 23:02>, when Amit Kumar Mahapatra wrote:
> Supporting multi-cs in spi drivers would require the chip_select & cs_gpiod
> members of struct spi_device to be an array. But changing the type of these
> members to array would break the spi driver functionality. To make the
> transition smoother introduced four new APIs to get/set the
> spi->chip_select & spi->cs_gpiod and replaced all spi->chip_select and
> spi->cs_gpiod references with get or set API calls.
> While adding multi-cs support in further patches the chip_select & cs_gpiod
> members of the spi_device structure would be converted to arrays & the
> "idx" parameter of the APIs would be used as array index i.e.,
> spi->chip_select[idx] & spi->cs_gpiod[idx] respectively.
>
> Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@xxxxxxx>
> Reviewed-by: Michal Simek <michal.simek@xxxxxxx>
> ---
> drivers/net/ethernet/adi/adin1110.c | 2 +-
> drivers/net/ethernet/asix/ax88796c_main.c | 2 +-
> drivers/net/ethernet/davicom/dm9051.c | 2 +-
> drivers/net/ethernet/qualcomm/qca_debug.c | 2 +-
> drivers/net/ieee802154/ca8210.c | 2 +-
> drivers/net/wan/slic_ds26522.c | 2 +-
> drivers/net/wireless/marvell/libertas/if_spi.c | 2 +-
> drivers/net/wireless/silabs/wfx/bus_spi.c | 2 +-
> drivers/net/wireless/st/cw1200/cw1200_spi.c | 2 +-
> 9 files changed, 9 insertions(+), 9 deletions(-)
>
Reviewed-by: Lukasz Stelmach <l.stelmach@xxxxxxxxxxx>
> diff --git a/drivers/net/ethernet/adi/adin1110.c b/drivers/net/ethernet/adi/adin1110.c
> index 3f316a0f4158..f5c2d7a9abc1 100644
> --- a/drivers/net/ethernet/adi/adin1110.c
> +++ b/drivers/net/ethernet/adi/adin1110.c
> @@ -515,7 +515,7 @@ static int adin1110_register_mdiobus(struct adin1110_priv *priv,
> return -ENOMEM;
>
> snprintf(priv->mii_bus_name, MII_BUS_ID_SIZE, "%s-%u",
> - priv->cfg->name, priv->spidev->chip_select);
> + priv->cfg->name, spi_get_chipselect(priv->spidev, 0));
>
> mii_bus->name = priv->mii_bus_name;
> mii_bus->read = adin1110_mdio_read;
> diff --git a/drivers/net/ethernet/asix/ax88796c_main.c b/drivers/net/ethernet/asix/ax88796c_main.c
> index 21376c79f671..e551ffaed20d 100644
> --- a/drivers/net/ethernet/asix/ax88796c_main.c
> +++ b/drivers/net/ethernet/asix/ax88796c_main.c
> @@ -1006,7 +1006,7 @@ static int ax88796c_probe(struct spi_device *spi)
> ax_local->mdiobus->parent = &spi->dev;
>
> snprintf(ax_local->mdiobus->id, MII_BUS_ID_SIZE,
> - "ax88796c-%s.%u", dev_name(&spi->dev), spi->chip_select);
> + "ax88796c-%s.%u", dev_name(&spi->dev), spi_get_chipselect(spi, 0));
>
> ret = devm_mdiobus_register(&spi->dev, ax_local->mdiobus);
> if (ret < 0) {
> diff --git a/drivers/net/ethernet/davicom/dm9051.c b/drivers/net/ethernet/davicom/dm9051.c
> index de7105a84747..70728b2e5f18 100644
> --- a/drivers/net/ethernet/davicom/dm9051.c
> +++ b/drivers/net/ethernet/davicom/dm9051.c
> @@ -1123,7 +1123,7 @@ static int dm9051_mdio_register(struct board_info *db)
> db->mdiobus->phy_mask = (u32)~BIT(1);
> db->mdiobus->parent = &spi->dev;
> snprintf(db->mdiobus->id, MII_BUS_ID_SIZE,
> - "dm9051-%s.%u", dev_name(&spi->dev), spi->chip_select);
> + "dm9051-%s.%u", dev_name(&spi->dev), spi_get_chipselect(spi, 0));
>
> ret = devm_mdiobus_register(&spi->dev, db->mdiobus);
> if (ret)
> diff --git a/drivers/net/ethernet/qualcomm/qca_debug.c b/drivers/net/ethernet/qualcomm/qca_debug.c
> index f62c39544e08..6f2fa2a42770 100644
> --- a/drivers/net/ethernet/qualcomm/qca_debug.c
> +++ b/drivers/net/ethernet/qualcomm/qca_debug.c
> @@ -119,7 +119,7 @@ qcaspi_info_show(struct seq_file *s, void *what)
> seq_printf(s, "SPI mode : %x\n",
> qca->spi_dev->mode);
> seq_printf(s, "SPI chip select : %u\n",
> - (unsigned int)qca->spi_dev->chip_select);
> + (unsigned int)spi_get_chipselect(qca->spi_dev, 0));
> seq_printf(s, "SPI legacy mode : %u\n",
> (unsigned int)qca->legacy_mode);
> seq_printf(s, "SPI burst length : %u\n",
> diff --git a/drivers/net/ieee802154/ca8210.c b/drivers/net/ieee802154/ca8210.c
> index e1a569b99e4a..7093a07141bb 100644
> --- a/drivers/net/ieee802154/ca8210.c
> +++ b/drivers/net/ieee802154/ca8210.c
> @@ -2967,7 +2967,7 @@ static int ca8210_test_interface_init(struct ca8210_priv *priv)
> sizeof(node_name),
> "ca8210@%d_%d",
> priv->spi->master->bus_num,
> - priv->spi->chip_select
> + spi_get_chipselect(priv->spi, 0)
> );
>
> test->ca8210_dfs_spi_int = debugfs_create_file(
> diff --git a/drivers/net/wan/slic_ds26522.c b/drivers/net/wan/slic_ds26522.c
> index 6063552cea9b..8a51cfcff99e 100644
> --- a/drivers/net/wan/slic_ds26522.c
> +++ b/drivers/net/wan/slic_ds26522.c
> @@ -211,7 +211,7 @@ static int slic_ds26522_probe(struct spi_device *spi)
>
> ret = slic_ds26522_init_configure(spi);
> if (ret == 0)
> - pr_info("DS26522 cs%d configured\n", spi->chip_select);
> + pr_info("DS26522 cs%d configured\n", spi_get_chipselect(spi, 0));
>
> return ret;
> }
> diff --git a/drivers/net/wireless/marvell/libertas/if_spi.c b/drivers/net/wireless/marvell/libertas/if_spi.c
> index ff1c7ec8c450..1225fc0e3352 100644
> --- a/drivers/net/wireless/marvell/libertas/if_spi.c
> +++ b/drivers/net/wireless/marvell/libertas/if_spi.c
> @@ -1051,7 +1051,7 @@ static int if_spi_init_card(struct if_spi_card *card)
> "spi->max_speed_hz=%d\n",
> card->card_id, card->card_rev,
> card->spi->master->bus_num,
> - card->spi->chip_select,
> + spi_get_chipselect(card->spi, 0),
> card->spi->max_speed_hz);
> err = if_spi_prog_helper_firmware(card, helper);
> if (err)
> diff --git a/drivers/net/wireless/silabs/wfx/bus_spi.c b/drivers/net/wireless/silabs/wfx/bus_spi.c
> index 7fb1afb8ed31..160b90114aad 100644
> --- a/drivers/net/wireless/silabs/wfx/bus_spi.c
> +++ b/drivers/net/wireless/silabs/wfx/bus_spi.c
> @@ -208,7 +208,7 @@ static int wfx_spi_probe(struct spi_device *func)
>
> /* Trace below is also displayed by spi_setup() if compiled with DEBUG */
> dev_dbg(&func->dev, "SPI params: CS=%d, mode=%d bits/word=%d speed=%d\n",
> - func->chip_select, func->mode, func->bits_per_word, func->max_speed_hz);
> + spi_get_chipselect(func, 0), func->mode, func->bits_per_word, func->max_speed_hz);
> if (func->bits_per_word != 16 && func->bits_per_word != 8)
> dev_warn(&func->dev, "unusual bits/word value: %d\n", func->bits_per_word);
> if (func->max_speed_hz > 50000000)
> diff --git a/drivers/net/wireless/st/cw1200/cw1200_spi.c b/drivers/net/wireless/st/cw1200/cw1200_spi.c
> index fe0d220da44d..c82c0688b549 100644
> --- a/drivers/net/wireless/st/cw1200/cw1200_spi.c
> +++ b/drivers/net/wireless/st/cw1200/cw1200_spi.c
> @@ -378,7 +378,7 @@ static int cw1200_spi_probe(struct spi_device *func)
> func->mode = SPI_MODE_0;
>
> pr_info("cw1200_wlan_spi: Probe called (CS %d M %d BPW %d CLK %d)\n",
> - func->chip_select, func->mode, func->bits_per_word,
> + spi_get_chipselect(func, 0), func->mode, func->bits_per_word,
> func->max_speed_hz);
>
> if (cw1200_spi_on(plat_data)) {
--
Łukasz Stelmach
Samsung R&D Institute Poland
Samsung Electronics
Attachment:
signature.asc
Description: PGP signature