lkml.org 
[lkml]   [2022]   [Nov]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 3/9] gpio: 104-dio-48e: Migrate to the regmap-irq API
Hi,

[sorry this mail was just delivered now, although it seems
to be sent last Tuesday.]

Am 2022-11-22 11:29, schrieb William Breathitt Gray:
> On Wed, Nov 23, 2022 at 05:01:53PM +0200, Andy Shevchenko wrote:
>> On Tue, Nov 22, 2022 at 02:11:00AM -0500, William Breathitt Gray
>> wrote:
>> > + /* Initialize device interrupt state */
>> > + err = regmap_read(map, DIO48E_DISABLE_INTERRUPT, &val);
>> > + if (err)
>> > + return err;
>>
>> Use ->init_hw() callback for this.
>
> In a subsequent patch 7/9 we remove direct gpio_chip registration in
> favor of the i8255 library registration via gpio_regmap. It doesn't
> look
> like gpio_regmap_register() sets the init_hw() callback.
>
> Michael, do you see any issues if I introduce init_hw() to
> gpio_regmap_config? Or do you think this IRQ initialization belongs
> somewhere else?

Something like the following?
gpiochip->init_hw = config.irq_init_hw;

gpiochip doesn't seem to be the correct place, gpiochip_add_irqchip()
is a noop for gpio-regmap, right? So using gpiochip_irqchip_init_hw()
seems wrong.

Maybe make gpio-regmap call it on its own? But really we just connect
the regmap-irq to the gpiochip irqdomain. What is the purpose of the
.init_hw callback? I've looked at other drivers which use regmap-irq
and they all seem to just initialize the hardware in their _probe().

-michael

\
 
 \ /
  Last update: 2022-11-27 19:32    [W:0.096 / U:0.600 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site