aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sfc/qt202x_phy.c
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2009-11-23 11:06:30 -0500
committerDavid S. Miller <davem@davemloft.net>2009-11-24 13:58:53 -0500
commiteb50c0d67fe3c5513c717c2dee6d9771c51be703 (patch)
tree449f56f6c8fac242be9ac57663ad98128524b404 /drivers/net/sfc/qt202x_phy.c
parente775fb93a880d218ce0b3fd405278dd78f86c405 (diff)
sfc: Gather link state fields in struct efx_nic into new struct efx_link_state
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/qt202x_phy.c')
-rw-r--r--drivers/net/sfc/qt202x_phy.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/sfc/qt202x_phy.c b/drivers/net/sfc/qt202x_phy.c
index 73bc5ad227f4..8208ac0ffad7 100644
--- a/drivers/net/sfc/qt202x_phy.c
+++ b/drivers/net/sfc/qt202x_phy.c
@@ -182,13 +182,14 @@ static void qt202x_phy_poll(struct efx_nic *efx)
182{ 182{
183 int link_up = qt202x_link_ok(efx); 183 int link_up = qt202x_link_ok(efx);
184 /* Simulate a PHY event if link state has changed */ 184 /* Simulate a PHY event if link state has changed */
185 if (link_up != efx->link_up) 185 if (link_up != efx->link_state.up)
186 falcon_sim_phy_event(efx); 186 falcon_sim_phy_event(efx);
187} 187}
188 188
189static void qt202x_phy_reconfigure(struct efx_nic *efx) 189static void qt202x_phy_reconfigure(struct efx_nic *efx)
190{ 190{
191 struct qt202x_phy_data *phy_data = efx->phy_data; 191 struct qt202x_phy_data *phy_data = efx->phy_data;
192 struct efx_link_state *link_state = &efx->link_state;
192 193
193 if (efx->phy_type == PHY_TYPE_QT2025C) { 194 if (efx->phy_type == PHY_TYPE_QT2025C) {
194 /* There are several different register bits which can 195 /* There are several different register bits which can
@@ -215,10 +216,10 @@ static void qt202x_phy_reconfigure(struct efx_nic *efx)
215 efx_mdio_phy_reconfigure(efx); 216 efx_mdio_phy_reconfigure(efx);
216 217
217 phy_data->phy_mode = efx->phy_mode; 218 phy_data->phy_mode = efx->phy_mode;
218 efx->link_up = qt202x_link_ok(efx); 219 link_state->up = qt202x_link_ok(efx);
219 efx->link_speed = 10000; 220 link_state->speed = 10000;
220 efx->link_fd = true; 221 link_state->fd = true;
221 efx->link_fc = efx->wanted_fc; 222 link_state->fc = efx->wanted_fc;
222} 223}
223 224
224static void qt202x_phy_get_settings(struct efx_nic *efx, struct ethtool_cmd *ecmd) 225static void qt202x_phy_get_settings(struct efx_nic *efx, struct ethtool_cmd *ecmd)