X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/b3f2bc9aaca1ccd16cfbf5ca78e137c419931a7b..29ec5d802c648afb89dd4f326bc4752f40ad7416:/package/switch/src/switch-robo.c diff --git a/package/switch/src/switch-robo.c b/package/switch/src/switch-robo.c index 28d8de326..779b89f61 100644 --- a/package/switch/src/switch-robo.c +++ b/package/switch/src/switch-robo.c @@ -296,7 +296,11 @@ static int robo_probe(char *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) { +#else + if ((robo.dev = dev_get_by_name(&init_net, devname)) == NULL) { +#endif printk("No such device\n"); return 1; } @@ -524,7 +528,8 @@ static int __init robo_init(void) 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]--;