]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
spi: Add APIs in spi core to set/get spi->chip_select and spi->cs_gpiod
authorAmit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
Thu, 19 Jan 2023 18:53:30 +0000 (00:23 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 5 Jan 2024 14:18:38 +0000 (15:18 +0100)
commit025cf65f68d47b1da5c03f90933e93c2902e5243
tree845751fdd5214898b80c443dd73d53a078b31e1b
parent64a4eb2982db793835777085ecc621d074cfb10f
spi: Add APIs in spi core to set/get spi->chip_select and spi->cs_gpiod

[ Upstream commit 303feb3cc06ac0665d0ee9c1414941200e60e8a3 ]

Supporting multi-cs in spi core and spi controller 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 in spi core with the 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.

Suggested-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
Reviewed-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20230119185342.2093323-2-amit.kumar-mahapatra@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Stable-dep-of: fc70d643a2f6 ("spi: atmel: Fix clock issue when using devices with different polarities")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/spi/spi.c
include/linux/spi/spi.h