diff options
Diffstat (limited to 'arch/powerpc/platforms/embedded6xx/hlwd-pic.c')
-rw-r--r-- | arch/powerpc/platforms/embedded6xx/hlwd-pic.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/arch/powerpc/platforms/embedded6xx/hlwd-pic.c b/arch/powerpc/platforms/embedded6xx/hlwd-pic.c index 2bdddfc9d520..e4919170c6bc 100644 --- a/arch/powerpc/platforms/embedded6xx/hlwd-pic.c +++ b/arch/powerpc/platforms/embedded6xx/hlwd-pic.c | |||
@@ -43,7 +43,7 @@ | |||
43 | 43 | ||
44 | static void hlwd_pic_mask_and_ack(struct irq_data *d) | 44 | static void hlwd_pic_mask_and_ack(struct irq_data *d) |
45 | { | 45 | { |
46 | int irq = virq_to_hw(d->irq); | 46 | int irq = irqd_to_hwirq(d); |
47 | void __iomem *io_base = irq_data_get_irq_chip_data(d); | 47 | void __iomem *io_base = irq_data_get_irq_chip_data(d); |
48 | u32 mask = 1 << irq; | 48 | u32 mask = 1 << irq; |
49 | 49 | ||
@@ -53,7 +53,7 @@ static void hlwd_pic_mask_and_ack(struct irq_data *d) | |||
53 | 53 | ||
54 | static void hlwd_pic_ack(struct irq_data *d) | 54 | static void hlwd_pic_ack(struct irq_data *d) |
55 | { | 55 | { |
56 | int irq = virq_to_hw(d->irq); | 56 | int irq = irqd_to_hwirq(d); |
57 | void __iomem *io_base = irq_data_get_irq_chip_data(d); | 57 | void __iomem *io_base = irq_data_get_irq_chip_data(d); |
58 | 58 | ||
59 | out_be32(io_base + HW_BROADWAY_ICR, 1 << irq); | 59 | out_be32(io_base + HW_BROADWAY_ICR, 1 << irq); |
@@ -61,7 +61,7 @@ static void hlwd_pic_ack(struct irq_data *d) | |||
61 | 61 | ||
62 | static void hlwd_pic_mask(struct irq_data *d) | 62 | static void hlwd_pic_mask(struct irq_data *d) |
63 | { | 63 | { |
64 | int irq = virq_to_hw(d->irq); | 64 | int irq = irqd_to_hwirq(d); |
65 | void __iomem *io_base = irq_data_get_irq_chip_data(d); | 65 | void __iomem *io_base = irq_data_get_irq_chip_data(d); |
66 | 66 | ||
67 | clrbits32(io_base + HW_BROADWAY_IMR, 1 << irq); | 67 | clrbits32(io_base + HW_BROADWAY_IMR, 1 << irq); |
@@ -69,7 +69,7 @@ static void hlwd_pic_mask(struct irq_data *d) | |||
69 | 69 | ||
70 | static void hlwd_pic_unmask(struct irq_data *d) | 70 | static void hlwd_pic_unmask(struct irq_data *d) |
71 | { | 71 | { |
72 | int irq = virq_to_hw(d->irq); | 72 | int irq = irqd_to_hwirq(d); |
73 | void __iomem *io_base = irq_data_get_irq_chip_data(d); | 73 | void __iomem *io_base = irq_data_get_irq_chip_data(d); |
74 | 74 | ||
75 | setbits32(io_base + HW_BROADWAY_IMR, 1 << irq); | 75 | setbits32(io_base + HW_BROADWAY_IMR, 1 << irq); |
@@ -100,15 +100,8 @@ static int hlwd_pic_map(struct irq_host *h, unsigned int virq, | |||
100 | return 0; | 100 | return 0; |
101 | } | 101 | } |
102 | 102 | ||
103 | static void hlwd_pic_unmap(struct irq_host *h, unsigned int irq) | ||
104 | { | ||
105 | irq_set_chip_data(irq, NULL); | ||
106 | irq_set_chip(irq, NULL); | ||
107 | } | ||
108 | |||
109 | static struct irq_host_ops hlwd_irq_host_ops = { | 103 | static struct irq_host_ops hlwd_irq_host_ops = { |
110 | .map = hlwd_pic_map, | 104 | .map = hlwd_pic_map, |
111 | .unmap = hlwd_pic_unmap, | ||
112 | }; | 105 | }; |
113 | 106 | ||
114 | static unsigned int __hlwd_pic_get_irq(struct irq_host *h) | 107 | static unsigned int __hlwd_pic_get_irq(struct irq_host *h) |