aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVikram N <vicky773@gmail.com>2016-09-30 10:23:11 -0400
committerMark Brown <broonie@kernel.org>2016-10-21 07:09:51 -0400
commitaf9e53fef7015e1e4fe3f32b35e839df392bf4d6 (patch)
treeee1f67da8055aff5daabca561cf4b1612da4415e
parent1001354ca34179f3db924eb66672442a173147dc (diff)
spi: omap2-mcspi: Fix modifying platform resource data
currently during probe the resource data gets modified and device physical address remains valid only during first load. If the module is unloaded and loaded again, the ioremp will be done on a incorrect address as the resource was modified during previous module load. This patch fixes this issue. Signed-off-by: Vikram N <vicky773@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--drivers/spi/spi-omap2-mcspi.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c
index d5157b2222ce..3567e1dfd30d 100644
--- a/drivers/spi/spi-omap2-mcspi.c
+++ b/drivers/spi/spi-omap2-mcspi.c
@@ -1391,15 +1391,13 @@ static int omap2_mcspi_probe(struct platform_device *pdev)
1391 goto free_master; 1391 goto free_master;
1392 } 1392 }
1393 1393
1394 r->start += regs_offset;
1395 r->end += regs_offset;
1396 mcspi->phys = r->start;
1397
1398 mcspi->base = devm_ioremap_resource(&pdev->dev, r); 1394 mcspi->base = devm_ioremap_resource(&pdev->dev, r);
1399 if (IS_ERR(mcspi->base)) { 1395 if (IS_ERR(mcspi->base)) {
1400 status = PTR_ERR(mcspi->base); 1396 status = PTR_ERR(mcspi->base);
1401 goto free_master; 1397 goto free_master;
1402 } 1398 }
1399 mcspi->phys = r->start + regs_offset;
1400 mcspi->base += regs_offset;
1403 1401
1404 mcspi->dev = &pdev->dev; 1402 mcspi->dev = &pdev->dev;
1405 1403