spi: sh-msiof: Convert to use GPIO descriptors
Convert GPIO chip selects in the Renesas MSIOF SPI driver from legacy GPIO numbers to GPIO descriptors. Notes: - The board file for the SH7724-based Ecovec24 development board now registers a GPIO descriptor lookup, instead of passing a GPIO number through controller_data, - sh_msiof_get_cs_gpios() must release all GPIOs, else spi_get_gpio_descs() cannot claim them during SPI controller registration. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:

committed by
Mark Brown

parent
1a8fa5166e
commit
9fda669333
@@ -806,7 +806,6 @@ static struct spi_board_info spi_bus[] = {
|
||||
.platform_data = &mmc_spi_info,
|
||||
.max_speed_hz = 5000000,
|
||||
.mode = SPI_MODE_0,
|
||||
.controller_data = (void *) GPIO_PTM4,
|
||||
},
|
||||
};
|
||||
|
||||
@@ -838,6 +837,14 @@ static struct platform_device msiof0_device = {
|
||||
.resource = msiof0_resources,
|
||||
};
|
||||
|
||||
static struct gpiod_lookup_table msiof_gpio_table = {
|
||||
.dev_id = "spi_sh_msiof.0",
|
||||
.table = {
|
||||
GPIO_LOOKUP("sh7724_pfc", GPIO_PTM4, "cs", GPIO_ACTIVE_HIGH),
|
||||
{ },
|
||||
},
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
/* FSI */
|
||||
@@ -1296,12 +1303,11 @@ static int __init arch_setup(void)
|
||||
gpio_request(GPIO_FN_MSIOF0_TXD, NULL);
|
||||
gpio_request(GPIO_FN_MSIOF0_RXD, NULL);
|
||||
gpio_request(GPIO_FN_MSIOF0_TSCK, NULL);
|
||||
gpio_request(GPIO_PTM4, NULL); /* software CS control of TSYNC pin */
|
||||
gpio_direction_output(GPIO_PTM4, 1); /* active low CS */
|
||||
gpio_request(GPIO_PTB6, NULL); /* 3.3V power control */
|
||||
gpio_direction_output(GPIO_PTB6, 0); /* disable power by default */
|
||||
|
||||
gpiod_add_lookup_table(&mmc_spi_gpio_table);
|
||||
gpiod_add_lookup_table(&msiof_gpio_table);
|
||||
spi_register_board_info(spi_bus, ARRAY_SIZE(spi_bus));
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user