SPI omap2_mcspi.c: Use num chipselects from platform data
PATCH 5/6 SPI omap2_mcspi.c: Use num chipselects from platform data
The platform data already has the number of chip select lines for each McSPI module. No need to figure it out again in probe().
Signed-off-by Scott Ellis <[email protected]>
drivers/spi/omap2_mcspi.c | 9 ++------- 1 files changed, 2 insertions(+), 7 deletions(-)
drivers/spi/omap2_mcspi.c +2 -7
@@ -1058,33 +1058,28 @@ static int __init omap2_mcspi_probe(struct platform_device *pdev)struct resource *r;int status =0 , i;const u8 *rxdma_id, *txdma_id; -unsigned num_chipselect;struct omap2_mcspi_platform_config *pdata;switch (pdev->id) {case 1 : rxdma_id = spi1_rxdma_id; txdma_id = spi1_txdma_id; - num_chipselect =4 ;break ;case 2 : rxdma_id = spi2_rxdma_id; txdma_id = spi2_txdma_id; - num_chipselect =2 ;break ;#if defined(CONFIG_ARCH_OMAP2430 ) || defined(CONFIG_ARCH_OMAP3 ) \ || defined(CONFIG_ARCH_OMAP4 )case 3 : rxdma_id = spi3_rxdma_id; txdma_id = spi3_txdma_id; - num_chipselect =2 ;break ;#endif #if defined(CONFIG_ARCH_OMAP3 ) || defined(CONFIG_ARCH_OMAP4 )case 4 : rxdma_id = spi4_rxdma_id; txdma_id = spi4_txdma_id; - num_chipselect =1 ;break ;#endif default :
@@ -1106,7 +1101,6 @@ static int __init omap2_mcspi_probe(struct platform_device *pdev) master->setup = omap2_mcspi_setup; master->transfer = omap2_mcspi_transfer; master->cleanup = omap2_mcspi_cleanup; - master->num_chipselect = num_chipselect;dev_set_drvdata (&pdev->dev, master);
@@ -1114,6 +1108,7 @@ static int __init omap2_mcspi_probe(struct platform_device *pdev) mcspi->master = master; pdata = (struct omap2_mcspi_platform_config *)pdev->dev.platform_data; mcspi->max_clk_div = pdata->max_clk_div; + master->num_chipselect = pdata->num_cs; r =platform_get_resource (pdev,IORESOURCE_MEM ,0 );if (r ==NULL ) {
@@ -1160,7 +1155,7 @@ static int __init omap2_mcspi_probe(struct platform_device *pdev)if (mcspi->dma_channels ==NULL ) goto err3; -for (i =0 ; i < num_chipselect; i++) { +for (i =0 ; i < master->num_chipselect; i++) { mcspi->dma_channels[i].dma_rx_channel =-1 ; mcspi->dma_channels[i].dma_rx_sync_dev = rxdma_id[i]; mcspi->dma_channels[i].dma_tx_channel =-1 ;
This was convenient in conjunction with some of the previous patches since platform_device data was already getting read for max_clk_div and num_cs was there too. Since max_clk_div is no more, maybe this patch isn't worthwhile.
It's not a bug fix, so no harm ignoring.
I'll regenerate it if asked.