mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 22:54:05 +08:00
dl2k: add Sundance/Tamarack TC902x Gigabit Ethernet Adapter support
Actually, D-Link modified the VendorID/ProductID of the TC902x. The TC902x is the original chipset. Signed-off-by: Komuro <komurojun-mbn@nifty.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
b6aec32a77
commit
df950828b0
@ -1995,14 +1995,15 @@ config ACENIC_OMIT_TIGON_I
|
||||
The safe and default value for this is N.
|
||||
|
||||
config DL2K
|
||||
tristate "D-Link DL2000-based Gigabit Ethernet support"
|
||||
tristate "DL2000/TC902x-based Gigabit Ethernet support"
|
||||
depends on PCI
|
||||
select CRC32
|
||||
help
|
||||
This driver supports D-Link 2000-based gigabit ethernet cards, which
|
||||
includes
|
||||
This driver supports DL2000/TC902x-based Gigabit ethernet cards,
|
||||
which includes
|
||||
D-Link DGE-550T Gigabit Ethernet Adapter.
|
||||
D-Link DL2000-based Gigabit Ethernet Adapter.
|
||||
Sundance/Tamarack TC902x Gigabit Ethernet Adapter.
|
||||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called dl2k.
|
||||
|
@ -10,9 +10,9 @@
|
||||
(at your option) any later version.
|
||||
*/
|
||||
|
||||
#define DRV_NAME "D-Link DL2000-based linux driver"
|
||||
#define DRV_VERSION "v1.18"
|
||||
#define DRV_RELDATE "2006/06/27"
|
||||
#define DRV_NAME "DL2000/TC902x-based linux driver"
|
||||
#define DRV_VERSION "v1.19"
|
||||
#define DRV_RELDATE "2007/08/12"
|
||||
#include "dl2k.h"
|
||||
#include <linux/dma-mapping.h>
|
||||
|
||||
@ -339,17 +339,24 @@ parse_eeprom (struct net_device *dev)
|
||||
#ifdef MEM_MAPPING
|
||||
ioaddr = dev->base_addr;
|
||||
#endif
|
||||
/* Check CRC */
|
||||
crc = ~ether_crc_le (256 - 4, sromdata);
|
||||
if (psrom->crc != crc) {
|
||||
printk (KERN_ERR "%s: EEPROM data CRC error.\n", dev->name);
|
||||
return -1;
|
||||
if (np->pdev->vendor == PCI_VENDOR_ID_DLINK) { /* D-Link Only */
|
||||
/* Check CRC */
|
||||
crc = ~ether_crc_le (256 - 4, sromdata);
|
||||
if (psrom->crc != crc) {
|
||||
printk (KERN_ERR "%s: EEPROM data CRC error.\n",
|
||||
dev->name);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/* Set MAC address */
|
||||
for (i = 0; i < 6; i++)
|
||||
dev->dev_addr[i] = psrom->mac_addr[i];
|
||||
|
||||
if (np->pdev->vendor != PCI_VENDOR_ID_DLINK) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Parse Software Information Block */
|
||||
i = 0x30;
|
||||
psib = (u8 *) sromdata;
|
||||
|
@ -692,6 +692,7 @@ struct netdev_private {
|
||||
|
||||
static const struct pci_device_id rio_pci_tbl[] = {
|
||||
{0x1186, 0x4000, PCI_ANY_ID, PCI_ANY_ID, },
|
||||
{0x13f0, 0x1021, PCI_ANY_ID, PCI_ANY_ID, },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE (pci, rio_pci_tbl);
|
||||
|
Loading…
Reference in New Issue
Block a user