On Tue, Sep 18, 2018 at 2:23 PM Marek Vasut <marek.vasut@xxxxxxxxx> wrote: > Rather than hard-coding the quirk topology, which stopped scaling, > parse the information from DT. The code looks for all compatible > PMICs -- da9063 and da9210 -- and checks if their IRQ line is tied > to the same pin. If so, the code sends a matching sequence to the > PMIC to deassert the IRQ. > > Signed-off-by: Marek Vasut <marek.vasut+renesas@xxxxxxxxx> > Cc: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > Cc: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > Cc: Simon Horman <horms+renesas@xxxxxxxxxxxx> > Cc: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > Cc: linux-renesas-soc@xxxxxxxxxxxxxxx > Acked-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > Tested-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> (on Koelsch) > --- > V2: - Replace the DT shared IRQ check loop with memcmp() > - Send the I2C message to deassert the IRQ line to all PMICs > in the list with shared IRQ line instead of just one > - Add comment that this works only in case all the PMICs are > on the same I2C bus > V3: - Drop the addr = 0x00 init > - Drop reinit of argsa in rcar_gen2_regulator_quirk > V4: - Squash regulator_quirk on single line > - Drop !np check in for_each_matching_node_and_match() > - Use argsa in of_irq_parse_one > V5: - Check kzalloc failure > - Rename da...._msgs to da...._msg > - Don't reinit quirk->shared > V6: - Skip invalid entries instead of aborting on them Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds