diff options
Diffstat (limited to 'drivers/net/dl2k.c')
-rw-r--r-- | drivers/net/dl2k.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/drivers/net/dl2k.c b/drivers/net/dl2k.c index 04e3710c9082..ca21a1888ffa 100644 --- a/drivers/net/dl2k.c +++ b/drivers/net/dl2k.c | |||
@@ -10,9 +10,9 @@ | |||
10 | (at your option) any later version. | 10 | (at your option) any later version. |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #define DRV_NAME "D-Link DL2000-based linux driver" | 13 | #define DRV_NAME "DL2000/TC902x-based linux driver" |
14 | #define DRV_VERSION "v1.18" | 14 | #define DRV_VERSION "v1.19" |
15 | #define DRV_RELDATE "2006/06/27" | 15 | #define DRV_RELDATE "2007/08/12" |
16 | #include "dl2k.h" | 16 | #include "dl2k.h" |
17 | #include <linux/dma-mapping.h> | 17 | #include <linux/dma-mapping.h> |
18 | 18 | ||
@@ -339,17 +339,24 @@ parse_eeprom (struct net_device *dev) | |||
339 | #ifdef MEM_MAPPING | 339 | #ifdef MEM_MAPPING |
340 | ioaddr = dev->base_addr; | 340 | ioaddr = dev->base_addr; |
341 | #endif | 341 | #endif |
342 | /* Check CRC */ | 342 | if (np->pdev->vendor == PCI_VENDOR_ID_DLINK) { /* D-Link Only */ |
343 | crc = ~ether_crc_le (256 - 4, sromdata); | 343 | /* Check CRC */ |
344 | if (psrom->crc != crc) { | 344 | crc = ~ether_crc_le (256 - 4, sromdata); |
345 | printk (KERN_ERR "%s: EEPROM data CRC error.\n", dev->name); | 345 | if (psrom->crc != crc) { |
346 | return -1; | 346 | printk (KERN_ERR "%s: EEPROM data CRC error.\n", |
347 | dev->name); | ||
348 | return -1; | ||
349 | } | ||
347 | } | 350 | } |
348 | 351 | ||
349 | /* Set MAC address */ | 352 | /* Set MAC address */ |
350 | for (i = 0; i < 6; i++) | 353 | for (i = 0; i < 6; i++) |
351 | dev->dev_addr[i] = psrom->mac_addr[i]; | 354 | dev->dev_addr[i] = psrom->mac_addr[i]; |
352 | 355 | ||
356 | if (np->pdev->vendor != PCI_VENDOR_ID_DLINK) { | ||
357 | return 0; | ||
358 | } | ||
359 | |||
353 | /* Parse Software Information Block */ | 360 | /* Parse Software Information Block */ |
354 | i = 0x30; | 361 | i = 0x30; |
355 | psib = (u8 *) sromdata; | 362 | psib = (u8 *) sromdata; |