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(-)

diff --git a/drivers/spi/omap2_mcspi.c b/drivers/spi/omap2_mcspi.c
index cce23c5..cd9fdc2 100644
--- a/drivers/spi/omap2_mcspi.c
+++ b/drivers/spi/omap2_mcspi.c
@@ -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;






------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
spi-devel-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/spi-devel-general

Reply via email to