apex: Updated to version 1.5.6 (which includes the compiler inlining fixes).
[openwrt.git] / package / broadcom-diag / src / diag.c
index 2441ce9..7866b9f 100644 (file)
@@ -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);
                }
 
This page took 0.043994 seconds and 4 git commands to generate.