|
@@ -2450,27 +2450,6 @@ static void rtl8153_runtime_enable(struct r8152 *tp, bool enable)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-static void rtl_phy_reset(struct r8152 *tp)
|
|
|
|
-{
|
|
|
|
- u16 data;
|
|
|
|
- int i;
|
|
|
|
-
|
|
|
|
- data = r8152_mdio_read(tp, MII_BMCR);
|
|
|
|
-
|
|
|
|
- /* don't reset again before the previous one complete */
|
|
|
|
- if (data & BMCR_RESET)
|
|
|
|
- return;
|
|
|
|
-
|
|
|
|
- data |= BMCR_RESET;
|
|
|
|
- r8152_mdio_write(tp, MII_BMCR, data);
|
|
|
|
-
|
|
|
|
- for (i = 0; i < 50; i++) {
|
|
|
|
- msleep(20);
|
|
|
|
- if ((r8152_mdio_read(tp, MII_BMCR) & BMCR_RESET) == 0)
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static void r8153_teredo_off(struct r8152 *tp)
|
|
static void r8153_teredo_off(struct r8152 *tp)
|
|
{
|
|
{
|
|
u32 ocp_data;
|
|
u32 ocp_data;
|
|
@@ -2850,7 +2829,6 @@ static int rtl8152_set_speed(struct r8152 *tp, u8 autoneg, u16 speed, u8 duplex)
|
|
u16 bmcr, anar, gbcr;
|
|
u16 bmcr, anar, gbcr;
|
|
int ret = 0;
|
|
int ret = 0;
|
|
|
|
|
|
- cancel_delayed_work_sync(&tp->schedule);
|
|
|
|
anar = r8152_mdio_read(tp, MII_ADVERTISE);
|
|
anar = r8152_mdio_read(tp, MII_ADVERTISE);
|
|
anar &= ~(ADVERTISE_10HALF | ADVERTISE_10FULL |
|
|
anar &= ~(ADVERTISE_10HALF | ADVERTISE_10FULL |
|
|
ADVERTISE_100HALF | ADVERTISE_100FULL);
|
|
ADVERTISE_100HALF | ADVERTISE_100FULL);
|
|
@@ -3069,9 +3047,6 @@ static void rtl_work_func_t(struct work_struct *work)
|
|
netif_carrier_ok(tp->netdev))
|
|
netif_carrier_ok(tp->netdev))
|
|
napi_schedule(&tp->napi);
|
|
napi_schedule(&tp->napi);
|
|
|
|
|
|
- if (test_and_clear_bit(PHY_RESET, &tp->flags))
|
|
|
|
- rtl_phy_reset(tp);
|
|
|
|
-
|
|
|
|
mutex_unlock(&tp->control);
|
|
mutex_unlock(&tp->control);
|
|
|
|
|
|
out1:
|
|
out1:
|
|
@@ -3135,8 +3110,6 @@ static int rtl8152_open(struct net_device *netdev)
|
|
if (res)
|
|
if (res)
|
|
goto out;
|
|
goto out;
|
|
|
|
|
|
- netif_carrier_off(netdev);
|
|
|
|
-
|
|
|
|
res = usb_autopm_get_interface(tp->intf);
|
|
res = usb_autopm_get_interface(tp->intf);
|
|
if (res < 0) {
|
|
if (res < 0) {
|
|
free_all_mem(tp);
|
|
free_all_mem(tp);
|