Re: [PATCH v4 06/15] mfd: axp20x: Add support for AXP192

Aidan MacDonald
2022-07-06T10:24:39Z

Lee Jones <lee.jones@linaro.org> writes:

> On Tue, 05 Jul 2022, Aidan MacDonald wrote:
>
>>
>> Lee Jones <lee.jones@linaro.org> writes:
>>
>> > On Wed, 29 Jun 2022, Aidan MacDonald wrote:
>> >
>> >> The AXP192 PMIC is similar to the AXP202/AXP209, but with different
>> >> regulators, additional GPIOs, and a different IRQ register layout.
>> >>
>> >> Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>
>> >> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
>> >> ---
>> >> drivers/mfd/axp20x-i2c.c | 2 +
>> >> drivers/mfd/axp20x.c | 152 +++++++++++++++++++++++++++++++++++++
>> >> include/linux/mfd/axp20x.h | 84 ++++++++++++++++++++
>> >> 3 files changed, 238 insertions(+)
>> >> [...]
>> >> +static const struct regmap_irq_chip axp192_regmap_irq_chip = {
>> >> + .name = "axp192_irq_chip",
>> >> + .status_base = AXP192_IRQ1_STATE,
>> >> + .ack_base = AXP192_IRQ1_STATE,
>> >> + .unmask_base = AXP192_IRQ1_EN,
>> >> + .init_ack_masked = true,
>> >> + .irqs = axp192_regmap_irqs,
>> >> + .num_irqs = ARRAY_SIZE(axp192_regmap_irqs),
>> >> + .num_regs = 5,
>> >> + .get_irq_reg = axp192_get_irq_reg,
>> >
>> > Fix me:
>> >
>> > drivers/mfd/axp20x.c:634:35: error: initialization of 'unsigned int (*)(struct regmap_irq_chip_data *, unsigned int, int)' from incompatible pointer type 'int (*)(unsigned int, int)' [-Werror=incompatible-pointer-types]
>> > 634 | .get_irq_reg = axp192_get_irq_reg,
>> > | ^~~~~~~~~~~~~~~~~~
>> > drivers/mfd/axp20x.c:634:35: note: (near initialization for 'axp192_regmap_irq_chip.get_irq_reg')
>> >
>>
>> This doesn't need fixing. You are missing the prerequisite patches.
>>
>> -- snip --
>> Changes in v4:
>> * Drop regmap-irq patches and rebase on top of the regmap-irq
>> refactoring series[1], which implements the same functionality.
>>
>> [1]: https://lore.kernel.org/lkml/20220623211420.918875-1-aidanmacdonald.0x0@gmail.com/
>> -- snip --
>
>> Perhaps I wasn't clear enough that it was a dependency, sorry for
>> any confusion.
>
> Any idea why the regmap-irq patches weren't in -next?

Uh, sorry, I didn't pay attention and assumed this was the same error
the kernel test robot was reporting against mfd-next (missing field).
But the field does exist; this error is a type mismatch:

initialization of 'unsigned int (*)(struct regmap_irq_chip_data *,
unsigned int, int)'
from incompatible pointer type 'int (*)(unsigned int, int)'

So the regmap-irq patches were in -next, the problem is you were
using the old patch from v3.

FYI, I just sent a v5 which drops the GPIO driver, so please use
the patches from that version. Thanks.

Regards,
Aidan