Changeset 13509 for src/router/services/sysinit/sysinit-x86.c
- Timestamp:
- 12/23/09 20:47:05 (3 years ago)
- File:
-
- 1 edited
-
src/router/services/sysinit/sysinit-x86.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/router/services/sysinit/sysinit-x86.c
r13343 r13509 52 52 #include <linux/sockios.h> 53 53 #include <linux/mii.h> 54 55 static int detect(char *devicename) 56 { 57 FILE *tmp = fopen("/tmp/devices", "rb"); 58 59 if (tmp == NULL) { 60 system2("/sbin/lspci>/tmp/devices"); 61 } else 62 fclose(tmp); 63 char devcall[128]; 64 int res; 65 66 sprintf(devcall, "cat /tmp/devices|/bin/grep \"%s\"|/bin/wc -l", 67 devicename); 68 FILE *in = popen(devcall, "rb"); 69 70 fscanf(in, "%d", &res); 71 pclose(in); 72 return res > 0 ? 1 : 0; 73 } 54 #include "devices/ethernet.c" 74 55 75 56 static int getdiscindex(void) // works only for squashfs … … 206 187 */ 207 188 208 if (detect("Rhine-")) // VIA Rhine-I, Rhine-II, Rhine-III 209 insmod("via-rhine"); 210 if (detect("VT6120")) // VIA Rhine-I, Rhine-II, Rhine-III 211 insmod("via-velocity"); 212 else if (detect("VT6121")) // VIA Rhine-I, Rhine-II, Rhine-III 213 insmod("via-velocity"); 214 else if (detect("VT6122")) // VIA Rhine-I, Rhine-II, Rhine-III 215 insmod("via-velocity"); 216 217 if (detect("DP8381")) 218 insmod("natsemi"); 219 if (detect("PCnet32")) // vmware? 220 insmod("pcnet32"); 221 if (detect("Tigon3")) // Broadcom 222 insmod("tg3"); 223 else if (detect("NetXtreme")) // Broadcom 224 insmod("tg3"); 225 if (detect("NetXtreme II")) // Broadcom 226 insmod("bnx2"); 227 if (detect("BCM44")) // Broadcom 228 insmod("b44"); 229 230 if (detect("EtherExpress PRO/100")) // intel 100 mbit 231 insmod("e100"); 232 else if (detect("PRO/100")) // intel 100 mbit 233 insmod("e100"); 234 else if (detect("8280")) // intel 100 mbit 235 insmod("e100"); 236 else if (detect("Ethernet Pro 100")) // intel 100 mbit 237 insmod("e100"); 238 else if (detect("8255")) // intel 100 mbit 239 insmod("eepro100"); 240 241 if (detect("PRO/1000")) // Intel Gigabit 242 { 243 insmod("e1000"); 244 insmod("e1000e"); 245 } else if (detect("82541")) // Intel Gigabit 246 { 247 insmod("e1000"); 248 insmod("e1000e"); 249 } else if (detect("82547")) // Intel Gigabit 250 { 251 insmod("e1000"); 252 insmod("e1000e"); 253 } else if (detect("82546")) // Intel Gigabit 254 { 255 insmod("e1000"); 256 insmod("e1000e"); 257 } else if (detect("82545")) // Intel Gigabit / VMWare 64 bit mode 258 { 259 insmod("e1000"); 260 insmod("e1000e"); 261 } else if (detect("82543")) // Intel Gigabit / VMWare 64 bit mode 262 { 263 insmod("e1000"); 264 insmod("e1000e"); 265 } else if (detect("82572")) // Intel Gigabit 266 { 267 insmod("e1000"); 268 insmod("e1000e"); 269 } 270 if (detect("Tolapai")) // Realtek 8169 Adapter (various notebooks) 271 { 272 insmod("e1000"); 273 insmod("e1000e"); 274 insmod("e1000gcu"); 275 insmod("e1000gbe"); 276 } 277 else if (detect("EP80579")) // Realtek 8169 Adapter (various notebooks) 278 { 279 insmod("e1000"); 280 insmod("e1000e"); 281 insmod("e1000gcu"); 282 insmod("e1000gbe"); 283 } 284 if (detect("RTL-8110")) // Realtek 8169 Adapter (various notebooks) 285 insmod("r8169"); 286 else if (detect("RTL-8111")) // Realtek 8169 Adapter (various notebooks) 287 insmod("r8169"); 288 else if (detect("RTL8111")) // Realtek 8169 Adapter (various notebooks) 289 insmod("r8169"); 290 else if (detect("RTL-8169")) // Realtek 8169 Adapter (various 291 // notebooks) 292 insmod("r8169"); 293 else if (detect("Linksys Gigabit")) 294 insmod("r8169"); 295 else if (detect("RTL8101")) // Realtek 8169 Adapter (various 296 // notebooks) 297 insmod("r8169"); 298 299 if (detect("Happy Meal")) 300 insmod("sunhme"); 301 302 if (detect("8139")) // Realtek 8139 Adapter (various notebooks) 303 insmod("8139too"); 304 if (detect("DFE-690TXD")) // Realtek 8139 Adapter (various 305 // notebooks) 306 insmod("8139too"); 307 else if (detect("SMC2-1211TX")) // Realtek 8139 Adapter (various 308 // notebooks) 309 insmod("8139too"); 310 else if (detect("Robotics")) // Realtek 8139 Adapter (various 311 // notebooks) 312 insmod("8139too"); 313 314 if (detect("nForce2 Ethernet")) // nForce2 315 insmod("forcedeth"); 316 else if (detect("nForce3 Ethernet")) // nForce3 317 insmod("forcedeth"); 318 else if (detect("nForce Ethernet")) // nForce 319 insmod("forcedeth"); 320 else if (detect("CK804 Ethernet")) // nForce 321 insmod("forcedeth"); 322 else if (detect("CK8S Ethernet")) // nForce 323 insmod("forcedeth"); 324 else if (detect("MCP04 Ethernet")) // nForce 325 insmod("forcedeth"); 326 else if (detect("MCP2A Ethernet")) // nForce 327 insmod("forcedeth"); 328 else if (detect("MCP51 Ethernet")) // nForce 329 insmod("forcedeth"); 330 else if (detect("MCP55 Ethernet")) // nForce 331 insmod("forcedeth"); 332 else if (detect("MCP61 Ethernet")) // nForce 333 insmod("forcedeth"); 334 else if (detect("MCP65 Ethernet")) // nForce 335 insmod("forcedeth"); 336 else if (detect("MCP67 Ethernet")) // nForce 337 insmod("forcedeth"); 338 else if (detect("MCP67 Gigabit")) // nForce 339 insmod("forcedeth"); 340 else if (detect("MCP73 Ethernet")) // nForce 341 insmod("forcedeth"); 342 else if (detect("MCP77 Ethernet")) // nForce 343 insmod("forcedeth"); 344 else if (detect("MCP79 Ethernet")) // nForce 345 insmod("forcedeth"); 346 347 if (detect("Sundance")) // Dlink fibre 348 insmod("sundance"); 349 else if (detect("DL10050")) 350 insmod("sundance"); 351 352 if (detect("88E8001")) // Marvell Yukon 353 insmod("sk98lin"); 354 else if (detect("RDK-")) 355 insmod("sk98lin"); 356 else if (detect("SK-98")) 357 insmod("sk98lin"); 358 else if (detect("3c940")) 359 insmod("sk98lin"); 360 else if (detect("Marvell")) 361 insmod("sk98lin"); 362 363 if (detect("RTL-8029")) // Old Realtek PCI NE2000 clone (10M only) 364 { 365 insmod("8390"); 366 insmod("ne2k-pci"); 367 } 368 369 if (detect("3c905")) // 3Com 370 insmod("3c59x"); 371 else if (detect("3c555")) // 3Com 372 insmod("3c59x"); 373 else if (detect("3c556")) // 3Com 374 insmod("3c59x"); 375 else if (detect("ScSOHO100")) // 3Com 376 insmod("3c59x"); 377 else if (detect("Hurricane")) // 3Com 378 insmod("3c59x"); 379 380 if (detect("LNE100TX")) // liteon / linksys 381 insmod("tulip"); 382 else if (detect("FasterNet")) 383 insmod("tulip"); 384 else if (detect("ADMtek NC100")) 385 insmod("tulip"); 386 else if (detect("910-A1")) 387 insmod("tulip"); 388 else if (detect("tulip")) 389 insmod("tulip"); 390 else if (detect("DECchip 21142")) 391 insmod("tulip"); 392 else if (detect("MX987x5")) 393 insmod("tulip"); 394 395 if (detect("DGE-530T")) 396 insmod("skge"); 397 else if (detect("D-Link Gigabit")) 398 insmod("skge"); 399 400 if (detect("SiS900")) // Sis 900 401 insmod("sis900"); 402 189 detect_ethernet_devices(); 403 190 eval("ifconfig", "eth0", "0.0.0.0", "up"); 404 191 eval("ifconfig", "eth1", "0.0.0.0", "up"); … … 459 246 // insmod("lm77"); 460 247 #endif 461 if (detect("SafeXcel-1141")) {462 insmod("ocf");463 insmod("cryptodev");464 insmod("safe");465 nvram_set("use_crypto", "1");466 } else467 nvram_set("use_crypto", "0");468 248 469 249 nvram_set("wl0_ifname", "ath0");
Note: See TracChangeset
for help on using the changeset viewer.
