[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5eaa0e63-74c1-df79-58aa-f24da9b05566@amd.com>
Date: Mon, 23 Jan 2023 13:46:51 +0100
From: Michal Simek <michal.simek@....com>
To: Amit Kumar Mahapatra <amit.kumar-mahapatra@....com>,
<broonie@...nel.org>, <miquel.raynal@...tlin.com>,
<richard@....at>, <vigneshr@...com>, <jic23@...nel.org>,
<tudor.ambarus@...rochip.com>, <pratyush@...nel.org>,
<sanju.mehta@....com>, <chin-ting_kuo@...eedtech.com>,
<clg@...d.org>, <kdasu.kdev@...il.com>, <f.fainelli@...il.com>,
<rjui@...adcom.com>, <sbranden@...adcom.com>,
<eajames@...ux.ibm.com>, <olteanv@...il.com>, <han.xu@....com>,
<john.garry@...wei.com>, <shawnguo@...nel.org>,
<s.hauer@...gutronix.de>, <narmstrong@...libre.com>,
<khilman@...libre.com>, <matthias.bgg@...il.com>,
<haibo.chen@....com>, <linus.walleij@...aro.org>,
<daniel@...que.org>, <haojian.zhuang@...il.com>,
<robert.jarzmik@...e.fr>, <agross@...nel.org>,
<bjorn.andersson@...aro.org>, <heiko@...ech.de>,
<krzysztof.kozlowski@...aro.org>, <andi@...zian.org>,
<mcoquelin.stm32@...il.com>, <alexandre.torgue@...s.st.com>,
<wens@...e.org>, <jernej.skrabec@...il.com>, <samuel@...lland.org>,
<masahisa.kojima@...aro.org>, <jaswinder.singh@...aro.org>,
<rostedt@...dmis.org>, <mingo@...hat.com>,
<l.stelmach@...sung.com>, <davem@...emloft.net>,
<edumazet@...gle.com>, <kuba@...nel.org>, <pabeni@...hat.com>,
<alex.aring@...il.com>, <stefan@...enfreihafen.org>,
<kvalo@...nel.org>, <thierry.reding@...il.com>,
<jonathanh@...dia.com>, <skomatineni@...dia.com>,
<sumit.semwal@...aro.org>, <christian.koenig@....com>,
<j.neuschaefer@....net>, <vireshk@...nel.org>, <rmfrfs@...il.com>,
<johan@...nel.org>, <elder@...nel.org>,
<gregkh@...uxfoundation.org>
CC: <git@....com>, <linux-spi@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <joel@....id.au>,
<andrew@...id.au>, <radu_nicolae.pirea@....ro>,
<nicolas.ferre@...rochip.com>, <alexandre.belloni@...tlin.com>,
<claudiu.beznea@...rochip.com>,
<bcm-kernel-feedback-list@...adcom.com>, <fancer.lancer@...il.com>,
<kernel@...gutronix.de>, <festevam@...il.com>, <linux-imx@....com>,
<jbrunet@...libre.com>, <martin.blumenstingl@...glemail.com>,
<avifishman70@...il.com>, <tmaimon77@...il.com>,
<tali.perry1@...il.com>, <venture@...gle.com>, <yuenn@...gle.com>,
<benjaminfair@...gle.com>, <yogeshgaur.83@...il.com>,
<konrad.dybcio@...ainline.org>, <alim.akhtar@...sung.com>,
<ldewangan@...dia.com>, <linux-aspeed@...ts.ozlabs.org>,
<openbmc@...ts.ozlabs.org>, <linux-arm-kernel@...ts.infradead.org>,
<linux-rpi-kernel@...ts.infradead.org>,
<linux-amlogic@...ts.infradead.org>,
<linux-mediatek@...ts.infradead.org>,
<linux-arm-msm@...r.kernel.org>,
<linux-rockchip@...ts.infradead.org>,
<linux-samsung-soc@...r.kernel.org>,
<linux-stm32@...md-mailman.stormreply.com>,
<linux-sunxi@...ts.linux.dev>, <linux-tegra@...r.kernel.org>,
<netdev@...r.kernel.org>, <linux-wpan@...r.kernel.org>,
<libertas-dev@...ts.infradead.org>,
<linux-wireless@...r.kernel.org>, <linux-mtd@...ts.infradead.org>,
<lars@...afoo.de>, <Michael.Hennerich@...log.com>,
<linux-iio@...r.kernel.org>, <michael@...le.cc>,
<palmer@...belt.com>, <linux-riscv@...ts.infradead.org>,
<linux-media@...r.kernel.org>, <dri-devel@...ts.freedesktop.org>,
<greybus-dev@...ts.linaro.org>, <linux-staging@...ts.linux.dev>,
<amitrkcian2002@...il.com>
Subject: Re: [PATCH v2 03/13] net: Replace all spi->chip_select and
spi->cs_gpiod references with function call
On 1/19/23 19:53, 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@....com>
> ---
> 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(-)
>
> diff --git a/drivers/net/ethernet/adi/adin1110.c b/drivers/net/ethernet/adi/adin1110.c
> index 0805f249fff2..aee7a98725ba 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",
> 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)) {
Reviewed-by: Michal Simek <michal.simek@....com>
Thanks,
Michal
Powered by blists - more mailing lists