X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/f52d66ff00b24111f87c274d3d7085ef2e1d27b1..a6ff6c1f36b886b61a08ac89996ee15340e6fc64:/package/switch/src/switch-core.h diff --git a/package/switch/src/switch-core.h b/package/switch/src/switch-core.h index 5292469c0..a2114cf92 100644 --- a/package/switch/src/switch-core.h +++ b/package/switch/src/switch-core.h @@ -9,30 +9,22 @@ #define SWITCH_MEDIA_100 2 #define SWITCH_MEDIA_FD 4 -#ifndef KERNEL_VERSION -#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) -#endif - -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) -#define LINUX_2_4 -#endif - typedef int (*switch_handler)(void *driver, char *buf, int nr); typedef struct { - char *name; + const char *name; switch_handler read, write; } switch_config; typedef struct { struct list_head list; - char *name; - char *version; - char *interface; + const char *name; + const char *version; + const char *interface; int cpuport; int ports; int vlans; - switch_config *driver_handlers, *port_handlers, *vlan_handlers; + const switch_config *driver_handlers, *port_handlers, *vlan_handlers; void *data; void *priv; } switch_driver; @@ -42,13 +34,14 @@ typedef struct { } switch_vlan_config; +extern int switch_device_registered (char* device); extern int switch_register_driver(switch_driver *driver); extern void switch_unregister_driver(char *name); extern switch_vlan_config *switch_parse_vlan(switch_driver *driver, char *buf); extern int switch_parse_media(char *buf); extern int switch_print_media(char *buf, int media); -static inline char *strdup(char *str) +static inline char *strdup(const char *str) { char *new = kmalloc(strlen(str) + 1, GFP_KERNEL); strcpy(new, str);