diff options
| -rw-r--r-- | drivers/net/pcnet32.c | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/drivers/net/pcnet32.c b/drivers/net/pcnet32.c index 31e6dd049859..549a07385884 100644 --- a/drivers/net/pcnet32.c +++ b/drivers/net/pcnet32.c | |||
| @@ -22,8 +22,8 @@ | |||
| 22 | *************************************************************************/ | 22 | *************************************************************************/ |
| 23 | 23 | ||
| 24 | #define DRV_NAME "pcnet32" | 24 | #define DRV_NAME "pcnet32" |
| 25 | #define DRV_VERSION "1.31b" | 25 | #define DRV_VERSION "1.31c" |
| 26 | #define DRV_RELDATE "06.Oct.2005" | 26 | #define DRV_RELDATE "01.Nov.2005" |
| 27 | #define PFX DRV_NAME ": " | 27 | #define PFX DRV_NAME ": " |
| 28 | 28 | ||
| 29 | static const char *version = | 29 | static const char *version = |
| @@ -262,6 +262,9 @@ static int homepna[MAX_UNITS]; | |||
| 262 | * to allow loopback test to work unchanged. | 262 | * to allow loopback test to work unchanged. |
| 263 | * v1.31b 06 Oct 2005 Don Fry changed alloc_ring to show name of device | 263 | * v1.31b 06 Oct 2005 Don Fry changed alloc_ring to show name of device |
| 264 | * if allocation fails | 264 | * if allocation fails |
| 265 | * v1.31c 01 Nov 2005 Don Fry Allied Telesyn 2700/2701 FX are 100Mbit only. | ||
| 266 | * Force 100Mbit FD if Auto (ASEL) is selected. | ||
| 267 | * See Bugzilla 2669 and 4551. | ||
| 265 | */ | 268 | */ |
| 266 | 269 | ||
| 267 | 270 | ||
| @@ -1612,12 +1615,18 @@ pcnet32_open(struct net_device *dev) | |||
| 1612 | val |= 0x10; | 1615 | val |= 0x10; |
| 1613 | lp->a.write_csr (ioaddr, 124, val); | 1616 | lp->a.write_csr (ioaddr, 124, val); |
| 1614 | 1617 | ||
| 1615 | /* Allied Telesyn AT 2700/2701 FX looses the link, so skip that */ | 1618 | /* Allied Telesyn AT 2700/2701 FX are 100Mbit only and do not negotiate */ |
| 1616 | if (lp->pci_dev->subsystem_vendor == PCI_VENDOR_ID_AT && | 1619 | if (lp->pci_dev->subsystem_vendor == PCI_VENDOR_ID_AT && |
| 1617 | (lp->pci_dev->subsystem_device == PCI_SUBDEVICE_ID_AT_2700FX || | 1620 | (lp->pci_dev->subsystem_device == PCI_SUBDEVICE_ID_AT_2700FX || |
| 1618 | lp->pci_dev->subsystem_device == PCI_SUBDEVICE_ID_AT_2701FX)) { | 1621 | lp->pci_dev->subsystem_device == PCI_SUBDEVICE_ID_AT_2701FX)) { |
| 1619 | printk(KERN_DEBUG "%s: Skipping PHY selection.\n", dev->name); | 1622 | if (lp->options & PCNET32_PORT_ASEL) { |
| 1620 | } else { | 1623 | lp->options = PCNET32_PORT_FD | PCNET32_PORT_100; |
| 1624 | if (netif_msg_link(lp)) | ||
| 1625 | printk(KERN_DEBUG "%s: Setting 100Mb-Full Duplex.\n", | ||
| 1626 | dev->name); | ||
| 1627 | } | ||
| 1628 | } | ||
| 1629 | { | ||
| 1621 | /* | 1630 | /* |
| 1622 | * 24 Jun 2004 according AMD, in order to change the PHY, | 1631 | * 24 Jun 2004 according AMD, in order to change the PHY, |
| 1623 | * DANAS (or DISPM for 79C976) must be set; then select the speed, | 1632 | * DANAS (or DISPM for 79C976) must be set; then select the speed, |
