Skip to contentSkip to conversation

better ali1563 integrated ethernet support

PATCH Dave Jones 2 participants 3 messages May 12, 2003 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

Dave Jones

author
#1 lore raw
Quoted 20 lines · Linux Kernel

ChangeSet 1.1111, 2003/05/11 14:24:44-04:00, [email protected]

[PATCH] better ali1563 integrated ethernet support

it turns out the tulip driver is a much better driver for the integrated ali1563 ethernet than the dmfe driver... the dmfe driver gets tx timeouts every ~15s and can't receive over 5MB/s. but with the small tulip patch below i'm seeing 11MB/s+ in both directions without problems.

diff -Nru a/drivers/net/tulip/tulip_core.c b/drivers/net/tulip/tulip_core.c

drivers/net/tulip/tulip_core.c +1 -0
@@ -223,6 +223,7 @@
 	{ 0x1626, 0x8410, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
 	{ 0x1737, 0xAB09, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
 	{ 0x17B3, 0xAB08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, COMET },
+ 	{ 0x10b9, 0x5261, PCI_ANY_ID, PCI_ANY_ID, 0, 0, DM910X },	/* ALi 1563 integrated ethernet */
 	{ } /* terminate list */
 };
 MODULE_DEVICE_TABLE(pci, tulip_pci_tbl);

...

drivers/net/tulip/tulip_core.c

Quoted 7 lines
 #if defined(__sparc__)
         /* DM9102A needs 32-dword alignment/burst length on sparc - chip bug? */
drivers/net/tulip/tulip_core.c +2 -1
-        if (pdev->vendor == 0x1282 && pdev->device == 0x9102)
+	if ((pdev->vendor == 0x1282 && pdev->device == 0x9102)
+		|| (pdev->vendor == 0x10b9 && pdev->device == 0x5261))
                 csr0 = (csr0 & ~0xff00) | 0xe000;
 #endif

Integrated ALi 1563 on a sparc ?

Dave

#2 lore raw
Quoted 9 lines · Dave Jones

Review

Quoted 7 lines
 #if defined(__sparc__)
         /* DM9102A needs 32-dword alignment/burst length on sparc - chip bug? */
(quoted diff) +2 -1
-        if (pdev->vendor == 0x1282 && pdev->device == 0x9102)
+	if ((pdev->vendor == 0x1282 && pdev->device == 0x9102)
+		|| (pdev->vendor == 0x10b9 && pdev->device == 0x5261))
                 csr0 = (csr0 & ~0xff00) | 0xe000;
 #endif

Integrated ALi 1563 on a sparc ?

oh duh i didn't even look hard at that... i just went and made sure any 9102 bug tests were copied, in case the ali1563 was a bug-for-bug clone :) 1563 is a hypertransport device... so i doubt it'll show up on a sparc. oops.

-dean

author
#3 lore raw
Quoted 8 lines · dean gaudet
Quoted 8 lines
Quoted 7 lines
 #if defined(__sparc__)
         /* DM9102A needs 32-dword alignment/burst length on sparc - chip bug? */
(quoted diff) +2 -1
-        if (pdev->vendor == 0x1282 && pdev->device == 0x9102)
+	if ((pdev->vendor == 0x1282 && pdev->device == 0x9102)
+		|| (pdev->vendor == 0x10b9 && pdev->device == 0x5261))
                 csr0 = (csr0 & ~0xff00) | 0xe000;
 #endif
Quoted 6 lines
Quoted 1 line

Integrated ALi 1563 on a sparc ?

oh duh i didn't even look hard at that... i just went and made sure any 9102 bug tests were copied, in case the ali1563 was a bug-for-bug clone :) 1563 is a hypertransport device... so i doubt it'll show up on a sparc. oops.

For completeness, we should probably remove the entry from the dmfe pci_device_id table too.

Dave