On Thu, Dec 9, 2021 at 5:30 PM Dmitry Osipenko <digetx@xxxxxxxxx> wrote: > 09.12.2021 18:05, Akhil R пишет: > > +static int tegra_i2c_setup_smbalert(struct tegra_i2c_dev *i2c_dev) > > +{ > > + struct tegra_i2c_smbalert *smbalert = &i2c_dev->smbalert; > > + struct gpio_desc *alert_gpiod; > > + struct i2c_client *ara; > > + > > + alert_gpiod = devm_gpiod_get(i2c_dev->dev, "smbalert", GPIOD_IN); > > + if (IS_ERR(alert_gpiod)) > > + return PTR_ERR(alert_gpiod); > > + > > + smbalert->alert_data.irq = gpiod_to_irq(alert_gpiod); > > + if (smbalert->alert_data.irq <= 0) > > + return smbalert->alert_data.irq; > > 0 is the error condition. I'm not sure what you implied here. gpiod_to_irq() returns 0 if and only if it goes to the architectures where it might be possible to have valid vIRQ 0, but this is not the case (at least I never heard of a such) for GPIO controllers on such platforms. So, looking at the above code I may tell that the '=' part is redundant. -- With Best Regards, Andy Shevchenko