diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2007-05-26 15:54:22 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2007-05-26 15:54:22 +0000 |
commit | 3237230249938eff87bc40954b754c89af0f0a3e (patch) | |
tree | b68fa8ddb7a992704072c3112637c5cce0d4f58a /package/broadcom-diag/src | |
parent | 8f83153369a227fe0531a8cbcdb53d76fba45756 (diff) | |
download | upstream-3237230249938eff87bc40954b754c89af0f0a3e.tar.gz upstream-3237230249938eff87bc40954b754c89af0f0a3e.tar.bz2 upstream-3237230249938eff87bc40954b754c89af0f0a3e.zip |
bcm47xx compile fix for .21, thanks to noz
SVN-Revision: 7337
Diffstat (limited to 'package/broadcom-diag/src')
-rw-r--r-- | package/broadcom-diag/src/diag.c | 10 | ||||
-rw-r--r-- | package/broadcom-diag/src/diag.h | 4 |
2 files changed, 14 insertions, 0 deletions
diff --git a/package/broadcom-diag/src/diag.c b/package/broadcom-diag/src/diag.c index 2441ce9dda..7866b9f798 100644 --- a/package/broadcom-diag/src/diag.c +++ b/package/broadcom-diag/src/diag.c @@ -675,8 +675,14 @@ static void unregister_buttons(struct button_t *b) gpio_set_irqenable(0, button_handler); } +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) +static void hotplug_button(struct work_struct *work) +{ + struct event_t *event = container_of(work, struct event_t, wq); +#else static void hotplug_button(struct event_t *event) { +#endif #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) call_usermodehelper (event->argv[0], event->argv, event->envp, 1); #else @@ -724,7 +730,11 @@ static irqreturn_t button_handler(int irq, void *dev_id, struct pt_regs *regs) scratch += sprintf (scratch, "SEEN=%ld", (jiffies - b->seen)/HZ) + 1; event->envp[i] = 0; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) + INIT_WORK(&event->wq, (void *)(void *)hotplug_button); +#else INIT_WORK(&event->wq, (void *)(void *)hotplug_button, (void *)event); +#endif schedule_work(&event->wq); } diff --git a/package/broadcom-diag/src/diag.h b/package/broadcom-diag/src/diag.h index dcc122ad2b..9b6dc36336 100644 --- a/package/broadcom-diag/src/diag.h +++ b/package/broadcom-diag/src/diag.h @@ -88,7 +88,11 @@ static struct platform_t platform; static void register_buttons(struct button_t *b); static void unregister_buttons(struct button_t *b); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) +static void hotplug_button(struct work_struct *work); +#else static void hotplug_button(struct event_t *event); +#endif static irqreturn_t button_handler(int irq, void *dev_id, struct pt_regs *regs); /* leds */ |