projects
/
openwrt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
clean NATIVE_TOOLCHAIN dependencies
[openwrt.git]
/
package
/
switch
/
src
/
switch-robo.c
diff --git
a/package/switch/src/switch-robo.c
b/package/switch/src/switch-robo.c
index
5bcd85b
..
779b89f
100644
(file)
--- a/
package/switch/src/switch-robo.c
+++ b/
package/switch/src/switch-robo.c
@@
-62,6
+62,10
@@
#define SIOCGETCPHYRD (SIOCDEVPRIVATE + 9)
#define SIOCSETCPHYWR (SIOCDEVPRIVATE + 10)
#define SIOCGETCPHYRD (SIOCDEVPRIVATE + 9)
#define SIOCSETCPHYWR (SIOCDEVPRIVATE + 10)
+/* linux 2.4 does not have 'bool' */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0)
+#define bool int
+#endif
/* Data structure for a Roboswitch device. */
struct robo_switch {
/* Data structure for a Roboswitch device. */
struct robo_switch {
@@
-292,7
+296,11
@@
static int robo_probe(char *devname)
printk(KERN_INFO PFX "Probing device %s: ", devname);
strcpy(robo.ifr.ifr_name, devname);
printk(KERN_INFO PFX "Probing device %s: ", devname);
strcpy(robo.ifr.ifr_name, devname);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24)
if ((robo.dev = dev_get_by_name(devname)) == NULL) {
if ((robo.dev = dev_get_by_name(devname)) == NULL) {
+#else
+ if ((robo.dev = dev_get_by_name(&init_net, devname)) == NULL) {
+#endif
printk("No such device\n");
return 1;
}
printk("No such device\n");
return 1;
}
@@
-520,7
+528,8
@@
static int __init robo_init(void)
device = strdup("ethX");
for (device[3] = '0'; (device[3] <= '3') && notfound; device[3]++) {
device = strdup("ethX");
for (device[3] = '0'; (device[3] <= '3') && notfound; device[3]++) {
- notfound = robo_probe(device);
+ if (! switch_device_registered (device))
+ notfound = robo_probe(device);
}
device[3]--;
}
device[3]--;
This page took
0.019879 seconds
and
4
git commands to generate.