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 > Reviewed-by: Michal Simek > --- > 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 > 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