diff options
author | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-04-17 16:53:04 -0400 |
---|---|---|
committer | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-11-08 16:35:47 -0500 |
commit | e8abf5e73cdb6c034d35ccba1f63a4801cd3dec5 (patch) | |
tree | 170de6cb1d0048757b2ab55b2a0bfeb87d274fd4 /arch/m68k/amiga/cia.c | |
parent | 6549d537922da6a6893e9bc1be9c2b89db663719 (diff) |
m68k/irq: Switch irq_chip methods to "struct irq_data *data"
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/m68k/amiga/cia.c')
-rw-r--r-- | arch/m68k/amiga/cia.c | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/arch/m68k/amiga/cia.c b/arch/m68k/amiga/cia.c index 637ef53112b6..b04b453718d9 100644 --- a/arch/m68k/amiga/cia.c +++ b/arch/m68k/amiga/cia.c | |||
@@ -98,8 +98,9 @@ static irqreturn_t cia_handler(int irq, void *dev_id) | |||
98 | return IRQ_HANDLED; | 98 | return IRQ_HANDLED; |
99 | } | 99 | } |
100 | 100 | ||
101 | static void cia_enable_irq(unsigned int irq) | 101 | static void cia_irq_enable(struct irq_data *data) |
102 | { | 102 | { |
103 | unsigned int irq = data->irq; | ||
103 | unsigned char mask; | 104 | unsigned char mask; |
104 | 105 | ||
105 | if (irq >= IRQ_AMIGA_CIAB) { | 106 | if (irq >= IRQ_AMIGA_CIAB) { |
@@ -113,8 +114,10 @@ static void cia_enable_irq(unsigned int irq) | |||
113 | } | 114 | } |
114 | } | 115 | } |
115 | 116 | ||
116 | static void cia_disable_irq(unsigned int irq) | 117 | static void cia_irq_disable(struct irq_data *data) |
117 | { | 118 | { |
119 | unsigned int irq = data->irq; | ||
120 | |||
118 | if (irq >= IRQ_AMIGA_CIAB) | 121 | if (irq >= IRQ_AMIGA_CIAB) |
119 | cia_able_irq(&ciab_base, 1 << (irq - IRQ_AMIGA_CIAB)); | 122 | cia_able_irq(&ciab_base, 1 << (irq - IRQ_AMIGA_CIAB)); |
120 | else | 123 | else |
@@ -123,8 +126,8 @@ static void cia_disable_irq(unsigned int irq) | |||
123 | 126 | ||
124 | static struct irq_chip cia_irq_chip = { | 127 | static struct irq_chip cia_irq_chip = { |
125 | .name = "cia", | 128 | .name = "cia", |
126 | .irq_enable = cia_enable_irq, | 129 | .irq_enable = cia_irq_enable, |
127 | .irq_disable = cia_disable_irq, | 130 | .irq_disable = cia_irq_disable, |
128 | }; | 131 | }; |
129 | 132 | ||
130 | /* | 133 | /* |
@@ -133,9 +136,9 @@ static struct irq_chip cia_irq_chip = { | |||
133 | * into this chain. | 136 | * into this chain. |
134 | */ | 137 | */ |
135 | 138 | ||
136 | static void auto_enable_irq(unsigned int irq) | 139 | static void auto_irq_enable(struct irq_data *data) |
137 | { | 140 | { |
138 | switch (irq) { | 141 | switch (data->irq) { |
139 | case IRQ_AUTO_2: | 142 | case IRQ_AUTO_2: |
140 | amiga_custom.intena = IF_SETCLR | IF_PORTS; | 143 | amiga_custom.intena = IF_SETCLR | IF_PORTS; |
141 | break; | 144 | break; |
@@ -145,9 +148,9 @@ static void auto_enable_irq(unsigned int irq) | |||
145 | } | 148 | } |
146 | } | 149 | } |
147 | 150 | ||
148 | static void auto_disable_irq(unsigned int irq) | 151 | static void auto_irq_disable(struct irq_data *data) |
149 | { | 152 | { |
150 | switch (irq) { | 153 | switch (data->irq) { |
151 | case IRQ_AUTO_2: | 154 | case IRQ_AUTO_2: |
152 | amiga_custom.intena = IF_PORTS; | 155 | amiga_custom.intena = IF_PORTS; |
153 | break; | 156 | break; |
@@ -159,8 +162,8 @@ static void auto_disable_irq(unsigned int irq) | |||
159 | 162 | ||
160 | static struct irq_chip auto_irq_chip = { | 163 | static struct irq_chip auto_irq_chip = { |
161 | .name = "auto", | 164 | .name = "auto", |
162 | .irq_enable = auto_enable_irq, | 165 | .irq_enable = auto_irq_enable, |
163 | .irq_disable = auto_disable_irq, | 166 | .irq_disable = auto_irq_disable, |
164 | }; | 167 | }; |
165 | 168 | ||
166 | void __init cia_init_IRQ(struct ciabase *base) | 169 | void __init cia_init_IRQ(struct ciabase *base) |
@@ -173,7 +176,7 @@ void __init cia_init_IRQ(struct ciabase *base) | |||
173 | 176 | ||
174 | /* override auto int and install CIA handler */ | 177 | /* override auto int and install CIA handler */ |
175 | m68k_setup_irq_chip(&auto_irq_chip, base->handler_irq, 1); | 178 | m68k_setup_irq_chip(&auto_irq_chip, base->handler_irq, 1); |
176 | m68k_irq_startup(base->handler_irq); | 179 | m68k_irq_startup_irq(base->handler_irq); |
177 | if (request_irq(base->handler_irq, cia_handler, IRQF_SHARED, | 180 | if (request_irq(base->handler_irq, cia_handler, IRQF_SHARED, |
178 | base->name, base)) | 181 | base->name, base)) |
179 | pr_err("Couldn't register %s interrupt\n", base->name); | 182 | pr_err("Couldn't register %s interrupt\n", base->name); |