diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2008-12-13 00:34:54 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-12-13 00:57:44 -0500 |
commit | 84ae48fe4c1fe8b79fac015df6ad0b0937a7ae37 (patch) | |
tree | 56450dfbaf06080003f516eb390cbc178b5d063a /drivers/net/sfc/efx.c | |
parent | 2f7f573095132240916a8780cd5ef648c0ad7281 (diff) |
sfc: Restore phy_flash_cfg module parameter
This is needed for recovery in case a PHY firmware upgrade is aborted.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/efx.c')
-rw-r--r-- | drivers/net/sfc/efx.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/sfc/efx.c b/drivers/net/sfc/efx.c index 127b4da0a5e7..15ae2fcf6416 100644 --- a/drivers/net/sfc/efx.c +++ b/drivers/net/sfc/efx.c | |||
@@ -129,6 +129,10 @@ static unsigned int rss_cpus; | |||
129 | module_param(rss_cpus, uint, 0444); | 129 | module_param(rss_cpus, uint, 0444); |
130 | MODULE_PARM_DESC(rss_cpus, "Number of CPUs to use for Receive-Side Scaling"); | 130 | MODULE_PARM_DESC(rss_cpus, "Number of CPUs to use for Receive-Side Scaling"); |
131 | 131 | ||
132 | static int phy_flash_cfg; | ||
133 | module_param(phy_flash_cfg, int, 0644); | ||
134 | MODULE_PARM_DESC(phy_flash_cfg, "Set PHYs into reflash mode initially"); | ||
135 | |||
132 | /************************************************************************** | 136 | /************************************************************************** |
133 | * | 137 | * |
134 | * Utility functions and prototypes | 138 | * Utility functions and prototypes |
@@ -609,6 +613,9 @@ static int efx_probe_port(struct efx_nic *efx) | |||
609 | if (rc) | 613 | if (rc) |
610 | goto err; | 614 | goto err; |
611 | 615 | ||
616 | if (phy_flash_cfg) | ||
617 | efx->phy_mode = PHY_MODE_SPECIAL; | ||
618 | |||
612 | /* Sanity check MAC address */ | 619 | /* Sanity check MAC address */ |
613 | if (is_valid_ether_addr(efx->mac_address)) { | 620 | if (is_valid_ether_addr(efx->mac_address)) { |
614 | memcpy(efx->net_dev->dev_addr, efx->mac_address, ETH_ALEN); | 621 | memcpy(efx->net_dev->dev_addr, efx->mac_address, ETH_ALEN); |