Skip to content

Commit

Permalink
ARM: riscpc: use irq chip data in ecard.c
Browse files Browse the repository at this point in the history
Use irq chip data to store the expansion card data pointer, rather
than converting from the interrupt number to a slot number.  This
allows the interrupt chip methods to avoid knowing about interrupt
numbering.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Russell King committed Mar 24, 2012
1 parent 6e747b4 commit c402c11
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions arch/arm/mach-rpc/ecard.c
Original file line number Diff line number Diff line change
Expand Up @@ -445,7 +445,7 @@ static expansioncard_ops_t ecard_default_ops = {
*/
static void ecard_irq_unmask(struct irq_data *d)
{
ecard_t *ec = slot_to_ecard(d->irq - 32);
ecard_t *ec = irq_data_get_irq_chip_data(d);

if (ec) {
if (!ec->ops)
Expand All @@ -461,7 +461,7 @@ static void ecard_irq_unmask(struct irq_data *d)

static void ecard_irq_mask(struct irq_data *d)
{
ecard_t *ec = slot_to_ecard(d->irq - 32);
ecard_t *ec = irq_data_get_irq_chip_data(d);

if (ec) {
if (!ec->ops)
Expand Down Expand Up @@ -1039,6 +1039,7 @@ ecard_probe(int slot, card_type_t type)
ec->irq = 32 + slot;
irq_set_chip_and_handler(ec->irq, &ecard_chip,
handle_level_irq);
irq_set_chip_data(ec->irq, ec);
set_irq_flags(ec->irq, IRQF_VALID);
}

Expand Down

0 comments on commit c402c11

Please sign in to comment.