gpio/davinci: fix enabling unbanked GPIO IRQs
authorSekhar Nori <nsekhar@ti.com>
Sun, 11 Mar 2012 12:46:12 +0000 (18:16 +0530)
committerGrant Likely <grant.likely@secretlab.ca>
Mon, 12 Mar 2012 17:53:33 +0000 (11:53 -0600)
commit81b279d80a63628e580c71a31d30a8c3b3047ad4
treed0695169d5445ce6f7bcd50e558b196dd47f2a1e
parentab2dde9924dd1ddb791fa8b14aa52e1df681e20c
gpio/davinci: fix enabling unbanked GPIO IRQs

Unbanked GPIO IRQ handling code made a copy of just
the irq_chip structure for GPIO IRQ lines which caused
problems after the generic IRQ chip conversion because
there was no valid irq_chip_type structure with the
right "regs" populated. irq_gc_mask_set_bit() was
therefore accessing random addresses.

Fix it by making a copy of irq_chip_type structure
instead. This will ensure sane register offsets.

Cc: <stable@vger.kernel.org> # v3.0.x+
Reported-by: Jon Povey <Jon.Povey@racelogic.co.uk>
Tested-by: Jon Povey <Jon.Povey@racelogic.co.uk>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
drivers/gpio/gpio-davinci.c