On Wed Mar 26, 2025 at 12:00 PM CET, Mathieu Dubois-Briand wrote: > On Tue Mar 25, 2025 at 8:50 AM CET, Michael Walle wrote: > > > > > +#ifdef CONFIG_GPIOLIB_IRQCHIP > > > > > > > > Why do we need this ifdef? > > > > > > > > > > Hum yes, on second thought we probably need to depend on > > > CONFIG_REGMAP_IRQ here. > > > > But then, you'd also require the regmap_irq support for chips that > > don't support IRQs at all. devm_regmap_add_irq_fwnode() seems to be > > missing a stub version. > > > > Sorry, maybe my previous message was not clear, when I said "depend", > what I meant is having an "#ifdef CONFIG_REGMAP_IRQ" here in place of > "#ifdef CONFIG_GPIOLIB_IRQCHIP" > > If CONFIG_REGMAP_IRQ is enabled, drivers/base/regmap/regmap-irq.c is > built, so we do have both devm_regmap_add_irq_chip_fwnode() and > regmap_irq_get_domain(). So this code block should compile and link > correctly. Yes. > I did some build tests with and without CONFIG_GPIOLIB_IRQCHIP and I > believe this is fine. > > Or am I missing something? I'd like to avoid the ifdef macros if possible. Thus you'd need stubs for devm_regmap_add_irq_chip_fwnode() and regmap_irq_get_domain() if CONFIG_REGMAP_IRQ is not defined. Not sure if broonie agrees though (?). -michael