On Tue, Aug 02, 2016 at 02:54:47PM -0400, Paul Gortmaker wrote:
> As of commit be45beb2df69 ("genirq: Add runtime power management
> support for IRQ chips") the irq_chip struct got a struct *device
> parent_device field added to it. However, it was added at the
> beginning of the struct, which previously was the "name" entry.
>
> The driver here was using a mix of ordered struct init entries and
> named init entries. It was supplying the name assuming it was the 1st
> in the order, and hence when that became a struct *device we get:
>
> arch/mips/lantiq/irq.c:209:2: warning: initialization from incompatible
> pointer type [enabled by default]
> arch/mips/lantiq/irq.c:209:2: warning: (near initialization for
> 'ltq_irq_type.parent_device') [enabled by default]
> arch/mips/lantiq/irq.c:219:2: warning: initialization from incompatible
> pointer type [enabled by default]
> arch/mips/lantiq/irq.c:219:2: warning: (near initialization for
> 'ltq_eiu_type.parent_device') [enabled by default]
>
> While not runtime tested, I can't imagine trying to dereference a
> a struct device field from a char string will end well.
>
> Here we've used named element init entries for the name string as well
> to fix it.
>
> Fixes: be45beb2df69 ("genirq: Add runtime power management support for IRQ
> chips")
> Cc: Jon Hunter <[email protected]>
> Cc: Kevin Hilman <[email protected]>
> Cc: Marc Zyngier <[email protected]>
> Cc: John Crispin <[email protected]>
> Cc: Ralf Baechle <[email protected]>
> Cc: Thomas Gleixner <[email protected]>
> Cc: [email protected]
> Signed-off-by: Paul Gortmaker <[email protected]>
Thanks for the patch but I've already applied the identical patch
https://patchwork.linux-mips.org/patch/13684/.
Ralf