diff options
author | David Howells <dhowells@redhat.com> | 2006-11-22 09:57:56 -0500 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2006-11-22 09:57:56 -0500 |
commit | c4028958b6ecad064b1a6303a6a5906d4fe48d73 (patch) | |
tree | 1c4c89652c62a75da09f9b9442012007e4ac6250 /sound/aoa/core/snd-aoa-gpio-feature.c | |
parent | 65f27f38446e1976cc98fd3004b110fedcddd189 (diff) |
WorkStruct: make allyesconfig
Fix up for make allyesconfig.
Signed-Off-By: David Howells <dhowells@redhat.com>
Diffstat (limited to 'sound/aoa/core/snd-aoa-gpio-feature.c')
-rw-r--r-- | sound/aoa/core/snd-aoa-gpio-feature.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/sound/aoa/core/snd-aoa-gpio-feature.c b/sound/aoa/core/snd-aoa-gpio-feature.c index 40eb47eccf9a..2b03bc798bcb 100644 --- a/sound/aoa/core/snd-aoa-gpio-feature.c +++ b/sound/aoa/core/snd-aoa-gpio-feature.c | |||
@@ -195,9 +195,10 @@ static void ftr_gpio_all_amps_restore(struct gpio_runtime *rt) | |||
195 | ftr_gpio_set_lineout(rt, (s>>2)&1); | 195 | ftr_gpio_set_lineout(rt, (s>>2)&1); |
196 | } | 196 | } |
197 | 197 | ||
198 | static void ftr_handle_notify(void *data) | 198 | static void ftr_handle_notify(struct work_struct *work) |
199 | { | 199 | { |
200 | struct gpio_notification *notif = data; | 200 | struct gpio_notification *notif = |
201 | container_of(work, struct gpio_notification, work.work); | ||
201 | 202 | ||
202 | mutex_lock(¬if->mutex); | 203 | mutex_lock(¬if->mutex); |
203 | if (notif->notify) | 204 | if (notif->notify) |
@@ -253,12 +254,9 @@ static void ftr_gpio_init(struct gpio_runtime *rt) | |||
253 | 254 | ||
254 | ftr_gpio_all_amps_off(rt); | 255 | ftr_gpio_all_amps_off(rt); |
255 | rt->implementation_private = 0; | 256 | rt->implementation_private = 0; |
256 | INIT_WORK(&rt->headphone_notify.work, ftr_handle_notify, | 257 | INIT_DELAYED_WORK(&rt->headphone_notify.work, ftr_handle_notify); |
257 | &rt->headphone_notify); | 258 | INIT_DELAYED_WORK(&rt->line_in_notify.work, ftr_handle_notify); |
258 | INIT_WORK(&rt->line_in_notify.work, ftr_handle_notify, | 259 | INIT_DELAYED_WORK(&rt->line_out_notify.work, ftr_handle_notify); |
259 | &rt->line_in_notify); | ||
260 | INIT_WORK(&rt->line_out_notify.work, ftr_handle_notify, | ||
261 | &rt->line_out_notify); | ||
262 | mutex_init(&rt->headphone_notify.mutex); | 260 | mutex_init(&rt->headphone_notify.mutex); |
263 | mutex_init(&rt->line_in_notify.mutex); | 261 | mutex_init(&rt->line_in_notify.mutex); |
264 | mutex_init(&rt->line_out_notify.mutex); | 262 | mutex_init(&rt->line_out_notify.mutex); |
@@ -287,7 +285,7 @@ static irqreturn_t ftr_handle_notify_irq(int xx, void *data) | |||
287 | { | 285 | { |
288 | struct gpio_notification *notif = data; | 286 | struct gpio_notification *notif = data; |
289 | 287 | ||
290 | schedule_work(¬if->work); | 288 | schedule_delayed_work(¬if->work, 0); |
291 | 289 | ||
292 | return IRQ_HANDLED; | 290 | return IRQ_HANDLED; |
293 | } | 291 | } |