diff options
author | Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> | 2009-06-04 12:02:24 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-06-07 08:20:26 -0400 |
commit | 794caeb259bc5d341bcc80dd37820073147a231c (patch) | |
tree | c932f796a96c6c7dcd6611ef2c8425b644ad0458 /drivers/net/ixgbe/ixgbe_main.c | |
parent | ae540af18597a441bf17a26389179465ea4b9c36 (diff) |
ixgbe: Add FW detection and warning for 82599 SFP+ adapters
82599 has a FW running that helps manage the internal SFI PHY. There are
also a number of pre-production samples of these SFI-based devices in the
field. This patch adds a check to look for the firmware running on all
SFP+ based adapters, and displays a warning to the system log if a
pre-production adapter is identified. The driver will continue loading
though, with no functional degradation.
Also remove an old function prototype from ixgbe_82599.c that isn't being
used.
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ixgbe/ixgbe_main.c')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_main.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/drivers/net/ixgbe/ixgbe_main.c b/drivers/net/ixgbe/ixgbe_main.c index ca7c5d508752..543a606f22cc 100644 --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c | |||
@@ -2728,6 +2728,15 @@ void ixgbe_reset(struct ixgbe_adapter *adapter) | |||
2728 | case IXGBE_ERR_MASTER_REQUESTS_PENDING: | 2728 | case IXGBE_ERR_MASTER_REQUESTS_PENDING: |
2729 | dev_err(&adapter->pdev->dev, "master disable timed out\n"); | 2729 | dev_err(&adapter->pdev->dev, "master disable timed out\n"); |
2730 | break; | 2730 | break; |
2731 | case IXGBE_ERR_EEPROM_VERSION: | ||
2732 | /* We are running on a pre-production device, log a warning */ | ||
2733 | dev_warn(&adapter->pdev->dev, "This device is a pre-production " | ||
2734 | "adapter/LOM. Please be aware there may be issues " | ||
2735 | "associated with your hardware. If you are " | ||
2736 | "experiencing problems please contact your Intel or " | ||
2737 | "hardware representative who provided you with this " | ||
2738 | "hardware.\n"); | ||
2739 | break; | ||
2731 | default: | 2740 | default: |
2732 | dev_err(&adapter->pdev->dev, "Hardware Error: %d\n", err); | 2741 | dev_err(&adapter->pdev->dev, "Hardware Error: %d\n", err); |
2733 | } | 2742 | } |
@@ -5608,8 +5617,17 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev, | |||
5608 | hw->eeprom.ops.read(hw, 0x29, &adapter->eeprom_version); | 5617 | hw->eeprom.ops.read(hw, 0x29, &adapter->eeprom_version); |
5609 | 5618 | ||
5610 | /* reset the hardware with the new settings */ | 5619 | /* reset the hardware with the new settings */ |
5611 | hw->mac.ops.start_hw(hw); | 5620 | err = hw->mac.ops.start_hw(hw); |
5612 | 5621 | ||
5622 | if (err == IXGBE_ERR_EEPROM_VERSION) { | ||
5623 | /* We are running on a pre-production device, log a warning */ | ||
5624 | dev_warn(&pdev->dev, "This device is a pre-production " | ||
5625 | "adapter/LOM. Please be aware there may be issues " | ||
5626 | "associated with your hardware. If you are " | ||
5627 | "experiencing problems please contact your Intel or " | ||
5628 | "hardware representative who provided you with this " | ||
5629 | "hardware.\n"); | ||
5630 | } | ||
5613 | strcpy(netdev->name, "eth%d"); | 5631 | strcpy(netdev->name, "eth%d"); |
5614 | err = register_netdev(netdev); | 5632 | err = register_netdev(netdev); |
5615 | if (err) | 5633 | if (err) |