On Wed, Feb 08, 2023 at 12:18:17PM -0500, William Breathitt Gray wrote: > The 104-DIO-48E lacks an IRQ status register. Rather than use the Clear > Interrupt register as the status register, set the no_status flag to > true and thus avoid such a hack. FWIW, Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > Signed-off-by: William Breathitt Gray <william.gray@xxxxxxxxxx> > --- > drivers/gpio/gpio-104-dio-48e.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/drivers/gpio/gpio-104-dio-48e.c b/drivers/gpio/gpio-104-dio-48e.c > index a3846faf3780..fe3c93bfe4bd 100644 > --- a/drivers/gpio/gpio-104-dio-48e.c > +++ b/drivers/gpio/gpio-104-dio-48e.c > @@ -195,13 +195,9 @@ static int dio48e_probe(struct device *dev, unsigned int id) > return -ENOMEM; > > chip->name = name; > - /* No IRQ status register so use CLEAR_INTERRUPT register instead */ > - chip->status_base = DIO48E_CLEAR_INTERRUPT; > chip->mask_base = DIO48E_ENABLE_INTERRUPT; > chip->ack_base = DIO48E_CLEAR_INTERRUPT; > - /* CLEAR_INTERRUPT doubles as status register so we need it cleared */ > - chip->clear_ack = true; > - chip->status_invert = true; > + chip->no_status = true; > chip->num_regs = 1; > chip->irqs = dio48e_regmap_irqs; > chip->num_irqs = ARRAY_SIZE(dio48e_regmap_irqs); > -- > 2.39.1 > -- With Best Regards, Andy Shevchenko