On Fri, Jul 31, 2020 at 7:49 PM Daniel Campello <campe...@chromium.org> wrote:
>
> Fixes enable/disable irq handling at various points. The driver needs to
> only enable/disable irqs if there is an actual irq handler installed.

...

>  static int sx9310_enable_irq(struct sx9310_data *data, unsigned int irq)
>  {
> -       return regmap_update_bits(data->regmap, SX9310_REG_IRQ_MSK, irq, irq);
> +       if (data->client->irq)
> +               return regmap_update_bits(data->regmap, SX9310_REG_IRQ_MSK, 
> irq,
> +                                         irq);
> +       return 0;

Wouldn't it be better to insert rather
if (!irq)
  return 0;
than disrupting the entire function?

>  }
>
>  static int sx9310_disable_irq(struct sx9310_data *data, unsigned int irq)
>  {
> -       return regmap_update_bits(data->regmap, SX9310_REG_IRQ_MSK, irq, 0);
> +       if (data->client->irq)
> +               return regmap_update_bits(data->regmap, SX9310_REG_IRQ_MSK, 
> irq,
> +                                         0);
> +       return 0;

Ditto.

>  }



-- 
With Best Regards,
Andy Shevchenko

Reply via email to