[PATCH v2 1/5] i2c: i2c-davinci: switch to use platform_get_irq
Grygorii Strashko
grygorii.strashko at ti.com
Wed Nov 26 08:28:05 PST 2014
On 11/26/2014 05:54 PM, Uwe Kleine-König wrote:
> Hello Grygorii,
>
> On Wed, Nov 26, 2014 at 03:59:49PM +0200, Grygorii Strashko wrote:
>> 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.
>>
>> CC: Sekhar Nori <nsekhar at ti.com>
>> CC: Kevin Hilman <khilman at deeprootsystems.com>
>> CC: Santosh Shilimkar <ssantosh at kernel.org>
>> CC: Murali Karicheri <m-karicheri2 at ti.com>
>> Signed-off-by: Grygorii Strashko <grygorii.strashko at ti.com>
>> ---
>> drivers/i2c/busses/i2c-davinci.c | 20 ++++++++++++--------
>> 1 file changed, 12 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/i2c/busses/i2c-davinci.c b/drivers/i2c/busses/i2c-davinci.c
>> index 4d96147..7f54903 100644
>> --- a/drivers/i2c/busses/i2c-davinci.c
>> +++ b/drivers/i2c/busses/i2c-davinci.c
>> @@ -640,13 +640,17 @@ static int davinci_i2c_probe(struct platform_device *pdev)
>> {
>> struct davinci_i2c_dev *dev;
>> struct i2c_adapter *adap;
>> - struct resource *mem, *irq;
>> - int r;
>> -
>> - irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
>> - if (!irq) {
>> - dev_err(&pdev->dev, "no irq resource?\n");
>> - return -ENODEV;
>> + struct resource *mem;
>> + int r, irq;
>> +
>> + irq = platform_get_irq(pdev, 0);
>> + if (irq <= 0) {
>> + if (irq == -EPROBE_DEFER)
>> + return irq;
>> + if (!irq)
>> + irq = -ENXIO;
>> + dev_err(&pdev->dev, "can't get irq resource ret=%d\n", irq);
>> + return irq;
> The simpler and I think also more usual logic is:
>
> if (!irq)
> irq = -ENXIO;
> if (irq != -EPROBE_DEFER)
> dev_err(...);
> return irq;
>
> Other than that the patch looks fine.
Ok. will change and add your ack.
regards,
-grygorii
More information about the linux-arm-kernel
mailing list