summaryrefslogtreecommitdiff
path: root/drivers/net/sky2.c
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2005-12-09 11:34:53 -0800
committerJeff Garzik <jgarzik@pobox.com>2005-12-12 15:27:19 -0500
commit92f965e8c5433408d5a3805c6882b657eb6cbdb1 (patch)
tree063db455feceaa73fdc3305c14e17cab838e6da1 /drivers/net/sky2.c
parentb1086eef813ecee09bd6b8ae364acf0fad065cba (diff)
downloadlwn-92f965e8c5433408d5a3805c6882b657eb6cbdb1.tar.gz
lwn-92f965e8c5433408d5a3805c6882b657eb6cbdb1.zip
[PATCH] sky2: don't die if we see chip rev 0xb5
There maybe new versions of Yukon2 in the future, so make the driver more robust to handle this. Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'drivers/net/sky2.c')
-rw-r--r--drivers/net/sky2.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index 7dc5b4821ae4..0f694a917fbd 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -128,17 +128,15 @@ MODULE_DEVICE_TABLE(pci, sky2_id_table);
static const unsigned txqaddr[] = { Q_XA1, Q_XA2 };
static const unsigned rxqaddr[] = { Q_R1, Q_R2 };
-static const char *yukon_name[] = {
- [CHIP_ID_YUKON_LITE - CHIP_ID_YUKON] = "Lite", /* 0xb0 */
- [CHIP_ID_YUKON_LP - CHIP_ID_YUKON] = "LP", /* 0xb2 */
- [CHIP_ID_YUKON_XL - CHIP_ID_YUKON] = "XL", /* 0xb3 */
- [CHIP_ID_YUKON_EC_U - CHIP_ID_YUKON] = "EC Ultra", /* 0xb4 */
-
- [CHIP_ID_YUKON_EC - CHIP_ID_YUKON] = "EC", /* 0xb6 */
- [CHIP_ID_YUKON_FE - CHIP_ID_YUKON] = "FE", /* 0xb7 */
+/* This driver supports yukon2 chipset only */
+static const char *yukon2_name[] = {
+ "XL", /* 0xb3 */
+ "EC Ultra", /* 0xb4 */
+ "UNKNOWN", /* 0xb5 */
+ "EC", /* 0xb6 */
+ "FE", /* 0xb7 */
};
-
/* Access to external PHY */
static int gm_phy_write(struct sky2_hw *hw, unsigned port, u16 reg, u16 val)
{
@@ -2951,7 +2949,7 @@ static int __devinit sky2_probe(struct pci_dev *pdev,
printk(KERN_INFO PFX "v%s addr 0x%lx irq %d Yukon-%s (0x%x) rev %d\n",
DRV_VERSION, pci_resource_start(pdev, 0), pdev->irq,
- yukon_name[hw->chip_id - CHIP_ID_YUKON],
+ yukon2_name[hw->chip_id - CHIP_ID_YUKON_XL],
hw->chip_id, hw->chip_rev);
dev = sky2_init_netdev(hw, 0, using_dac);