switch: improve error messages
[openwrt.git] / package / switch / src / switch-core.h
index 5292469..a2114cf 100644 (file)
@@ -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);