forked from luck/tmp_suning_uos_patched
i2c: ocores: Add irq support for sparc
Add sparc support by using platform_get_irq instead of platform_get_resource. There are no platform resources of type IORESOURCE_IRQ for sparc, but platform_get_irq works for sparc. In the non-sparc case platform_get_irq internally uses platform_get_resource. Signed-off-by: Andreas Larsson <andreas@gaisler.com> Acked-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
This commit is contained in:
parent
1ab3604595
commit
f5f35a92e4
@ -267,7 +267,8 @@ static int __devinit ocores_i2c_probe(struct platform_device *pdev)
|
|||||||
{
|
{
|
||||||
struct ocores_i2c *i2c;
|
struct ocores_i2c *i2c;
|
||||||
struct ocores_i2c_platform_data *pdata;
|
struct ocores_i2c_platform_data *pdata;
|
||||||
struct resource *res, *res2;
|
struct resource *res;
|
||||||
|
int irq;
|
||||||
int ret;
|
int ret;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@ -275,9 +276,9 @@ static int __devinit ocores_i2c_probe(struct platform_device *pdev)
|
|||||||
if (!res)
|
if (!res)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
res2 = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
irq = platform_get_irq(pdev, 0);
|
||||||
if (!res2)
|
if (irq < 0)
|
||||||
return -ENODEV;
|
return irq;
|
||||||
|
|
||||||
i2c = devm_kzalloc(&pdev->dev, sizeof(*i2c), GFP_KERNEL);
|
i2c = devm_kzalloc(&pdev->dev, sizeof(*i2c), GFP_KERNEL);
|
||||||
if (!i2c)
|
if (!i2c)
|
||||||
@ -304,7 +305,7 @@ static int __devinit ocores_i2c_probe(struct platform_device *pdev)
|
|||||||
ocores_init(i2c);
|
ocores_init(i2c);
|
||||||
|
|
||||||
init_waitqueue_head(&i2c->wait);
|
init_waitqueue_head(&i2c->wait);
|
||||||
ret = devm_request_irq(&pdev->dev, res2->start, ocores_isr, 0,
|
ret = devm_request_irq(&pdev->dev, irq, ocores_isr, 0,
|
||||||
pdev->name, i2c);
|
pdev->name, i2c);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
dev_err(&pdev->dev, "Cannot claim IRQ\n");
|
dev_err(&pdev->dev, "Cannot claim IRQ\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user