aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c
diff options
context:
space:
mode:
authorGrygorii Strashko <grygorii.strashko@ti.com>2014-12-01 10:34:03 -0500
committerWolfram Sang <wsa@the-dreams.de>2014-12-04 13:15:08 -0500
commit2c6ef04ffaf7eaad1e2d1d196591fe361f9c9872 (patch)
tree5b1a1a24225d62a347d8abfe087510baa15dff64 /drivers/i2c
parent5f835cef770fc71263ace29198a9e6743033a705 (diff)
i2c: davinci: switch to use platform_get_irq
Switch Davinci I2C driver to use platform_get_irq(), because it is not recommened to use platform_get_resource(pdev, IORESOURCE_IRQ, ..) for requesting IRQ resources any more, as they can be not ready yet in case of DT-boot. Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/busses/i2c-davinci.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c
index 91c43decf327..228766bb0fda 100644
--- a/drivers/i2c/busses/i2c-davinci.c
+++ b/drivers/i2c/busses/i2c-davinci.c
@@ -634,13 +634,17 @@ static int davinci_i2c_probe(struct platform_device *pdev)
634{ 634{
635 struct davinci_i2c_dev *dev; 635 struct davinci_i2c_dev *dev;
636 struct i2c_adapter *adap; 636 struct i2c_adapter *adap;
637 struct resource *mem, *irq; 637 struct resource *mem;
638 int r; 638 int r, irq;
639 639
640 irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); 640 irq = platform_get_irq(pdev, 0);
641 if (!irq) { 641 if (irq <= 0) {
642 dev_err(&pdev->dev, "no irq resource?\n"); 642 if (!irq)
643 return -ENODEV; 643 irq = -ENXIO;
644 if (irq != -EPROBE_DEFER)
645 dev_err(&pdev->dev,
646 "can't get irq resource ret=%d\n", irq);
647 return irq;
644 } 648 }
645 649
646 dev = devm_kzalloc(&pdev->dev, sizeof(struct davinci_i2c_dev), 650 dev = devm_kzalloc(&pdev->dev, sizeof(struct davinci_i2c_dev),
@@ -655,7 +659,7 @@ static int davinci_i2c_probe(struct platform_device *pdev)
655 init_completion(&dev->xfr_complete); 659 init_completion(&dev->xfr_complete);
656#endif 660#endif
657 dev->dev = &pdev->dev; 661 dev->dev = &pdev->dev;
658 dev->irq = irq->start; 662 dev->irq = irq;
659 dev->pdata = dev_get_platdata(&pdev->dev); 663 dev->pdata = dev_get_platdata(&pdev->dev);
660 platform_set_drvdata(pdev, dev); 664 platform_set_drvdata(pdev, dev);
661 665