projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ee2ecf2
)
spi-rockchip: Fix register out of bounds access
author
Luis de Arquer
<luis.dearquer@inertim.com>
Fri, 21 Mar 2025 12:57:53 +0000
(13:57 +0100)
committer
Mark Brown
<broonie@kernel.org>
Wed, 26 Mar 2025 13:31:00 +0000
(13:31 +0000)
Do not write native chip select stuff for GPIO chip selects.
GPIOs can be numbered much higher than native CS.
Also, it makes no sense.
Signed-off-by: Luis de Arquer <luis.dearquer@inertim.com>
Link:
https://patch.msgid.link/365ccddfba110549202b3520f4401a6a936e82a8.camel@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-rockchip.c
patch
|
blob
|
blame
|
history
diff --git
a/drivers/spi/spi-rockchip.c
b/drivers/spi/spi-rockchip.c
index 1bc012fce7cb8de6411f3788d04f3a3f28ba559f..1a6381de6f33d7018eb00842fa9ee8cd8f1f01f7 100644
(file)
--- a/
drivers/spi/spi-rockchip.c
+++ b/
drivers/spi/spi-rockchip.c
@@
-547,7
+547,7
@@
static int rockchip_spi_config(struct rockchip_spi *rs,
cr0 |= (spi->mode & 0x3U) << CR0_SCPH_OFFSET;
if (spi->mode & SPI_LSB_FIRST)
cr0 |= CR0_FBM_LSB << CR0_FBM_OFFSET;
- if (
spi->mode & SPI_CS_HIGH
)
+ if (
(spi->mode & SPI_CS_HIGH) && !(spi_get_csgpiod(spi, 0))
)
cr0 |= BIT(spi_get_chipselect(spi, 0)) << CR0_SOI_OFFSET;
if (xfer->rx_buf && xfer->tx_buf)