Re: [PATCH 03/10] net: Replace spi->chip_select references to spi->chip_select[0]

From: Lars-Peter Clausen
Date: Mon Oct 17 2022 - 09:27:37 EST


On 10/17/22 14:12, Amit Kumar Mahapatra wrote:
For adding multi CS support & to prevent any existing driver from
breaking, replaced all spi->chip_select references to spi->chip_select[0].

But the tree is broken, isn't it? You introduce make chipselect an array in one of the earlier patches and then change drivers one by one in separate patches.

How about adding a inline helper function spi_chipselect(struct spi_device *spi, unsigned int idx). Update all drivers to use that function and then once there are no drivers left that directly reference the chipselect field you can introduce multi-chipselect support and update the helper function.


Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@xxxxxxx>
---
drivers/net/ethernet/asix/ax88796c_main.c | 2 +-
drivers/net/ethernet/davicom/dm9051.c | 2 +-
drivers/net/ieee802154/ca8210.c | 2 +-
drivers/net/wan/slic_ds26522.c | 2 +-
drivers/net/wireless/marvell/libertas/if_spi.c | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/asix/ax88796c_main.c b/drivers/net/ethernet/asix/ax88796c_main.c
index 6ba5b024a7be..65586ff24dfb 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->chip_select[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 a523ddda7609..835674ad6ceb 100644
--- a/drivers/net/ethernet/davicom/dm9051.c
+++ b/drivers/net/ethernet/davicom/dm9051.c
@@ -1121,7 +1121,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->chip_select[0]);
ret = devm_mdiobus_register(&spi->dev, db->mdiobus);
if (ret)
diff --git a/drivers/net/ieee802154/ca8210.c b/drivers/net/ieee802154/ca8210.c
index 42c0b451088d..f0ccf1cd79f4 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
+ priv->spi->chip_select[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..eb053a76fe52 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->chip_select[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..074d6c1f0c2c 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,
+ card->spi->chip_select[0],
card->spi->max_speed_hz);
err = if_spi_prog_helper_firmware(card, helper);
if (err)