Hi, On Mon, Nov 12, 2012 at 05:59:50PM +0100, Andreas Larsson wrote: > 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@xxxxxxxxxxx> > Acked-by: Peter Korsgaard <jacmet@xxxxxxxxxx> > --- > Changes since v1: > - platform_get_irq now works for sparc, so that is used for all platforms > - Acked by Peter Korsgaard <jacmet@xxxxxxxxxx> > > drivers/i2c/busses/i2c-ocores.c | 9 +++++---- > 1 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/drivers/i2c/busses/i2c-ocores.c b/drivers/i2c/busses/i2c-ocores.c > index bffd550..0b71dc6 100644 > --- a/drivers/i2c/busses/i2c-ocores.c > +++ b/drivers/i2c/busses/i2c-ocores.c > @@ -267,7 +267,8 @@ static int __devinit ocores_i2c_probe(struct platform_device *pdev) > { > struct ocores_i2c *i2c; > struct ocores_i2c_platform_data *pdata; > - struct resource *res, *res2; > + struct resource *res; > + int irq; > int ret; > int i; > > @@ -275,8 +276,8 @@ static int __devinit ocores_i2c_probe(struct platform_device *pdev) > if (!res) > return -ENODEV; > > - res2 = platform_get_resource(pdev, IORESOURCE_IRQ, 0); > - if (!res2) > + irq = platform_get_irq(pdev, 0); > + if (irq < 0) > return -ENODEV; Why not pass the error code you got? > > i2c = devm_kzalloc(&pdev->dev, sizeof(*i2c), GFP_KERNEL); > @@ -313,7 +314,7 @@ static int __devinit ocores_i2c_probe(struct platform_device *pdev) > ocores_init(i2c); > > 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); > if (ret) { > dev_err(&pdev->dev, "Cannot claim IRQ\n"); Rest looks good. -- Pengutronix e.K. | Wolfram Sang | Industrial Linux Solutions | http://www.pengutronix.de/ |
Attachment:
signature.asc
Description: Digital signature