[PATCH] spi: bcm63xx: drop wrong casts in probe()

Jonas Gorski posted 1 patch 2 months, 3 weeks ago
drivers/spi/spi-bcm63xx.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] spi: bcm63xx: drop wrong casts in probe()
Posted by Jonas Gorski 2 months, 3 weeks ago
Both bs->regs and bs->{rx,tx}_io are tagged __iomem, so we shouldn't
cast them to anything else.

Silences the following sparse warning:

drivers/spi/spi-bcm63xx.c:571:22: warning: cast removes address space '__iomem' of expression
drivers/spi/spi-bcm63xx.c:571:19: warning: incorrect type in assignment (different address spaces)
drivers/spi/spi-bcm63xx.c:571:19:    expected unsigned char [noderef] [usertype] __iomem *tx_io
drivers/spi/spi-bcm63xx.c:571:19:    got unsigned char [usertype] *
drivers/spi/spi-bcm63xx.c:572:22: warning: cast removes address space '__iomem' of expression
drivers/spi/spi-bcm63xx.c:572:19: warning: incorrect type in assignment (different address spaces)
drivers/spi/spi-bcm63xx.c:572:19:    expected unsigned char const [noderef] [usertype] __iomem *rx_io
drivers/spi/spi-bcm63xx.c:572:19:    got unsigned char const [usertype] *

Fixes: b42dfed83d95 ("spi: add Broadcom BCM63xx SPI controller driver")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
---
 drivers/spi/spi-bcm63xx.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/spi/spi-bcm63xx.c b/drivers/spi/spi-bcm63xx.c
index b56210734caa..55db5299d725 100644
--- a/drivers/spi/spi-bcm63xx.c
+++ b/drivers/spi/spi-bcm63xx.c
@@ -568,8 +568,8 @@ static int bcm63xx_spi_probe(struct platform_device *pdev)
 	host->auto_runtime_pm = true;
 	bs->msg_type_shift = bs->reg_offsets[SPI_MSG_TYPE_SHIFT];
 	bs->msg_ctl_width = bs->reg_offsets[SPI_MSG_CTL_WIDTH];
-	bs->tx_io = (u8 *)(bs->regs + bs->reg_offsets[SPI_MSG_DATA]);
-	bs->rx_io = (const u8 *)(bs->regs + bs->reg_offsets[SPI_RX_DATA]);
+	bs->tx_io = bs->regs + bs->reg_offsets[SPI_MSG_DATA];
+	bs->rx_io = bs->regs + bs->reg_offsets[SPI_RX_DATA];
 
 	/* Initialize hardware */
 	ret = clk_prepare_enable(bs->clk);
-- 
2.43.0
Re: [PATCH] spi: bcm63xx: drop wrong casts in probe()
Posted by Mark Brown 2 months, 3 weeks ago
On Sun, 16 Nov 2025 10:33:34 +0100, Jonas Gorski wrote:
> Both bs->regs and bs->{rx,tx}_io are tagged __iomem, so we shouldn't
> cast them to anything else.
> 
> Silences the following sparse warning:
> 
> drivers/spi/spi-bcm63xx.c:571:22: warning: cast removes address space '__iomem' of expression
> drivers/spi/spi-bcm63xx.c:571:19: warning: incorrect type in assignment (different address spaces)
> drivers/spi/spi-bcm63xx.c:571:19:    expected unsigned char [noderef] [usertype] __iomem *tx_io
> drivers/spi/spi-bcm63xx.c:571:19:    got unsigned char [usertype] *
> drivers/spi/spi-bcm63xx.c:572:22: warning: cast removes address space '__iomem' of expression
> drivers/spi/spi-bcm63xx.c:572:19: warning: incorrect type in assignment (different address spaces)
> drivers/spi/spi-bcm63xx.c:572:19:    expected unsigned char const [noderef] [usertype] __iomem *rx_io
> drivers/spi/spi-bcm63xx.c:572:19:    got unsigned char const [usertype] *
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next

Thanks!

[1/1] spi: bcm63xx: drop wrong casts in probe()
      commit: 118eb2cb97b8fc0d515bb0449495959247db58f0

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark
Re: [PATCH] spi: bcm63xx: drop wrong casts in probe()
Posted by Florian Fainelli 2 months, 3 weeks ago

On 11/16/2025 1:33 AM, Jonas Gorski wrote:
> Both bs->regs and bs->{rx,tx}_io are tagged __iomem, so we shouldn't
> cast them to anything else.
> 
> Silences the following sparse warning:
> 
> drivers/spi/spi-bcm63xx.c:571:22: warning: cast removes address space '__iomem' of expression
> drivers/spi/spi-bcm63xx.c:571:19: warning: incorrect type in assignment (different address spaces)
> drivers/spi/spi-bcm63xx.c:571:19:    expected unsigned char [noderef] [usertype] __iomem *tx_io
> drivers/spi/spi-bcm63xx.c:571:19:    got unsigned char [usertype] *
> drivers/spi/spi-bcm63xx.c:572:22: warning: cast removes address space '__iomem' of expression
> drivers/spi/spi-bcm63xx.c:572:19: warning: incorrect type in assignment (different address spaces)
> drivers/spi/spi-bcm63xx.c:572:19:    expected unsigned char const [noderef] [usertype] __iomem *rx_io
> drivers/spi/spi-bcm63xx.c:572:19:    got unsigned char const [usertype] *
> 
> Fixes: b42dfed83d95 ("spi: add Broadcom BCM63xx SPI controller driver")
> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>

Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>

Not sure that deserves a Fixes, tag, but can't hurt!
-- 
Florian