diff options
author | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2013-01-24 15:02:28 +0100 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2013-01-24 15:02:28 +0100 |
commit | f4db277923672fd0fb3ca0bb73b5e27e5c21e929 (patch) | |
tree | e666298aee3168720009bf7dfa8e64905cbdb14e /drivers | |
parent | 6f53b9349273a13ef02d1a5ad7e24ab1db900e7a (diff) |
igb: apalis_t30: no NVM and hard-coded MAC address hacks
Springville with a blank Flash uses a different PCI ID. Hack the driver
to load despite i210 data sheet claiming tools only, not for driver.
Hack the driver to skip NVM validation on Apalis T30 for now.
Hack the driver to use a hard-code MAC address on Apalis T30 for now.
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/igb/e1000_hw.h | 5 | ||||
-rw-r--r-- | drivers/net/igb/igb_main.c | 13 |
2 files changed, 18 insertions, 0 deletions
diff --git a/drivers/net/igb/e1000_hw.h b/drivers/net/igb/e1000_hw.h index 99f8c7756295..2c7a3e130dc8 100644 --- a/drivers/net/igb/e1000_hw.h +++ b/drivers/net/igb/e1000_hw.h @@ -63,7 +63,12 @@ struct e1000_hw; #define E1000_DEV_ID_I350_FIBER 0x1522 #define E1000_DEV_ID_I350_SERDES 0x1523 #define E1000_DEV_ID_I350_SGMII 0x1524 +#ifdef CONFIG_MACH_APALIS_T30 +/* Hack: Springville with a blank Flash (tools only, not for driver) */ +#define E1000_DEV_ID_I210_COPPER 0x1531 +#else #define E1000_DEV_ID_I210_COPPER 0x1533 +#endif #define E1000_DEV_ID_I210_COPPER_OEM1 0x1534 #define E1000_DEV_ID_I210_COPPER_IT 0x1535 #define E1000_DEV_ID_I210_FIBER 0x1536 diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c index 6d6998edb778..220183dfe33f 100644 --- a/drivers/net/igb/igb_main.c +++ b/drivers/net/igb/igb_main.c @@ -2006,6 +2006,8 @@ static int __devinit igb_probe(struct pci_dev *pdev, * known good starting state */ hw->mac.ops.reset_hw(hw); +#ifndef CONFIG_MACH_APALIS_T30 +/* Hack: skip NVM validation on Apalis T30 for now */ /* * make sure the NVM is good , i211 parts have special NVM that * doesn't contain a checksum @@ -2017,11 +2019,22 @@ static int __devinit igb_probe(struct pci_dev *pdev, goto err_eeprom; } } +#endif /* CONFIG_MACH_APALIS_T30 */ /* copy the MAC address out of the NVM */ if (hw->mac.ops.read_mac_addr(hw)) dev_err(&pdev->dev, "NVM Read Error\n"); +#ifdef CONFIG_MACH_APALIS_T30 + /* Hack: hard-code MAC address on Apalis T30 for now */ + hw->mac.addr[0] = 0x00; + hw->mac.addr[1] = 0x0e; + hw->mac.addr[2] = 0xc6; + hw->mac.addr[3] = 0x87; + hw->mac.addr[4] = 0x72; + hw->mac.addr[5] = 0x01; +#endif /* CONFIG_MACH_APALIS_T30 */ + memcpy(netdev->dev_addr, hw->mac.addr, netdev->addr_len); memcpy(netdev->perm_addr, hw->mac.addr, netdev->addr_len); |