Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=df950828b0ee51ff63c49c67d561bfd3d6096788
Commit:     df950828b0ee51ff63c49c67d561bfd3d6096788
Parent:     b6aec32a7774a398c4a194ad6b6392528b5a7a5b
Author:     Komuro <[EMAIL PROTECTED]>
AuthorDate: Mon Aug 13 09:45:41 2007 +0900
Committer:  David S. Miller <[EMAIL PROTECTED]>
CommitDate: Wed Oct 10 16:50:42 2007 -0700

    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 <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
---
 drivers/net/Kconfig |    7 ++++---
 drivers/net/dl2k.c  |   23 +++++++++++++++--------
 drivers/net/dl2k.h  |    1 +
 3 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 502dd0e..eeac2f4 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -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.
diff --git a/drivers/net/dl2k.c b/drivers/net/dl2k.c
index 04e3710..ca21a18 100644
--- a/drivers/net/dl2k.c
+++ b/drivers/net/dl2k.c
@@ -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;
diff --git a/drivers/net/dl2k.h b/drivers/net/dl2k.h
index e443065..5b80177 100644
--- a/drivers/net/dl2k.h
+++ b/drivers/net/dl2k.h
@@ -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);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to