X-Git-Url: http://git.ozo.com/?a=blobdiff_plain;f=package%2Fbroadcom-diag%2Fsrc%2Fdiag.h;h=52e84fa4bced76864cf647a2ce91f8d1d9ca27d4;hb=4a91835511c5ed10f6dab829697b1be6268fa638;hp=30791cffe3575091d1f31e07f7a5043e35a968df;hpb=2c4d27ff3bf2665454a8c742922ead6a3b7645d2;p=openwrt-10.03%2F.git diff --git a/package/broadcom-diag/src/diag.h b/package/broadcom-diag/src/diag.h index 30791cffe..52e84fa4b 100644 --- a/package/broadcom-diag/src/diag.h +++ b/package/broadcom-diag/src/diag.h @@ -21,14 +21,16 @@ * $Id:$ */ +#include #define MODULE_NAME "diag" -#define MAX_GPIO 8 +#define MAX_GPIO 16 #define FLASH_TIME HZ/6 enum polarity_t { REVERSE = 0, NORMAL = 1, + INPUT = 2, }; enum { @@ -66,15 +68,23 @@ struct platform_t { struct button_t buttons[MAX_GPIO]; u32 button_mask; u32 button_polarity; + void (*platform_init)(void); struct led_t leds[MAX_GPIO]; }; struct event_t { struct work_struct wq; - char buf[256]; - char *argv[3]; - char *envp[6]; + unsigned long seen; + char *name, *action; +#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,0) + struct sk_buff *skb; +#else + char *scratch; + char *argv[4]; + char *envp[7]; + u8 enr, anr; +#endif }; extern char *nvram_get(char *str); @@ -86,8 +96,13 @@ static struct platform_t platform; static void register_buttons(struct button_t *b); static void unregister_buttons(struct button_t *b); +#ifndef LINUX_2_4 +static void hotplug_button(struct work_struct *work); +static irqreturn_t button_handler(int irq, void *dev_id); +#else static void hotplug_button(struct event_t *event); static irqreturn_t button_handler(int irq, void *dev_id, struct pt_regs *regs); +#endif /* leds */