|
@@ -1611,23 +1611,8 @@ static u32 __rtl8169_get_wol(struct rtl8169_private *tp)
|
|
|
if (options & LinkUp)
|
|
|
wolopts |= WAKE_PHY;
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_34:
|
|
|
- case RTL_GIGA_MAC_VER_35:
|
|
|
- case RTL_GIGA_MAC_VER_36:
|
|
|
- case RTL_GIGA_MAC_VER_37:
|
|
|
- case RTL_GIGA_MAC_VER_38:
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_34 ... RTL_GIGA_MAC_VER_38:
|
|
|
+ case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_51:
|
|
|
if (rtl_eri_read(tp, 0xdc, ERIAR_EXGMAC) & MagicPacket_v2)
|
|
|
wolopts |= WAKE_MAGIC;
|
|
|
break;
|
|
@@ -1688,23 +1673,8 @@ static void __rtl8169_set_wol(struct rtl8169_private *tp, u32 wolopts)
|
|
|
RTL_W8(tp, Cfg9346, Cfg9346_Unlock);
|
|
|
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_34:
|
|
|
- case RTL_GIGA_MAC_VER_35:
|
|
|
- case RTL_GIGA_MAC_VER_36:
|
|
|
- case RTL_GIGA_MAC_VER_37:
|
|
|
- case RTL_GIGA_MAC_VER_38:
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_34 ... RTL_GIGA_MAC_VER_38:
|
|
|
+ case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_51:
|
|
|
tmp = ARRAY_SIZE(cfg) - 1;
|
|
|
if (wolopts & WAKE_MAGIC)
|
|
|
rtl_w0w1_eri(tp,
|
|
@@ -4623,18 +4593,7 @@ static void rtl_init_mdio_ops(struct rtl8169_private *tp)
|
|
|
ops->write = r8168dp_2_mdio_write;
|
|
|
ops->read = r8168dp_2_mdio_read;
|
|
|
break;
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_51:
|
|
|
ops->write = r8168g_mdio_write;
|
|
|
ops->read = r8168g_mdio_read;
|
|
|
break;
|
|
@@ -4679,21 +4638,7 @@ static void rtl_wol_suspend_quirk(struct rtl8169_private *tp)
|
|
|
case RTL_GIGA_MAC_VER_32:
|
|
|
case RTL_GIGA_MAC_VER_33:
|
|
|
case RTL_GIGA_MAC_VER_34:
|
|
|
- case RTL_GIGA_MAC_VER_37:
|
|
|
- case RTL_GIGA_MAC_VER_38:
|
|
|
- case RTL_GIGA_MAC_VER_39:
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_37 ... RTL_GIGA_MAC_VER_51:
|
|
|
RTL_W32(tp, RxConfig, RTL_R32(tp, RxConfig) |
|
|
|
AcceptBroadcast | AcceptMulticast | AcceptMyPhys);
|
|
|
break;
|
|
@@ -4719,18 +4664,7 @@ static void r8168_phy_power_up(struct rtl8169_private *tp)
|
|
|
switch (tp->mac_version) {
|
|
|
case RTL_GIGA_MAC_VER_11:
|
|
|
case RTL_GIGA_MAC_VER_12:
|
|
|
- case RTL_GIGA_MAC_VER_17:
|
|
|
- case RTL_GIGA_MAC_VER_18:
|
|
|
- case RTL_GIGA_MAC_VER_19:
|
|
|
- case RTL_GIGA_MAC_VER_20:
|
|
|
- case RTL_GIGA_MAC_VER_21:
|
|
|
- case RTL_GIGA_MAC_VER_22:
|
|
|
- case RTL_GIGA_MAC_VER_23:
|
|
|
- case RTL_GIGA_MAC_VER_24:
|
|
|
- case RTL_GIGA_MAC_VER_25:
|
|
|
- case RTL_GIGA_MAC_VER_26:
|
|
|
- case RTL_GIGA_MAC_VER_27:
|
|
|
- case RTL_GIGA_MAC_VER_28:
|
|
|
+ case RTL_GIGA_MAC_VER_17 ... RTL_GIGA_MAC_VER_28:
|
|
|
case RTL_GIGA_MAC_VER_31:
|
|
|
rtl_writephy(tp, 0x0e, 0x0000);
|
|
|
break;
|
|
@@ -4753,18 +4687,7 @@ static void r8168_phy_power_down(struct rtl8169_private *tp)
|
|
|
|
|
|
case RTL_GIGA_MAC_VER_11:
|
|
|
case RTL_GIGA_MAC_VER_12:
|
|
|
- case RTL_GIGA_MAC_VER_17:
|
|
|
- case RTL_GIGA_MAC_VER_18:
|
|
|
- case RTL_GIGA_MAC_VER_19:
|
|
|
- case RTL_GIGA_MAC_VER_20:
|
|
|
- case RTL_GIGA_MAC_VER_21:
|
|
|
- case RTL_GIGA_MAC_VER_22:
|
|
|
- case RTL_GIGA_MAC_VER_23:
|
|
|
- case RTL_GIGA_MAC_VER_24:
|
|
|
- case RTL_GIGA_MAC_VER_25:
|
|
|
- case RTL_GIGA_MAC_VER_26:
|
|
|
- case RTL_GIGA_MAC_VER_27:
|
|
|
- case RTL_GIGA_MAC_VER_28:
|
|
|
+ case RTL_GIGA_MAC_VER_17 ... RTL_GIGA_MAC_VER_28:
|
|
|
case RTL_GIGA_MAC_VER_31:
|
|
|
rtl_writephy(tp, 0x0e, 0x0200);
|
|
|
default:
|
|
@@ -4788,15 +4711,7 @@ static void r8168_pll_power_down(struct rtl8169_private *tp)
|
|
|
r8168_phy_power_down(tp);
|
|
|
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_25:
|
|
|
- case RTL_GIGA_MAC_VER_26:
|
|
|
- case RTL_GIGA_MAC_VER_27:
|
|
|
- case RTL_GIGA_MAC_VER_28:
|
|
|
- case RTL_GIGA_MAC_VER_29:
|
|
|
- case RTL_GIGA_MAC_VER_30:
|
|
|
- case RTL_GIGA_MAC_VER_31:
|
|
|
- case RTL_GIGA_MAC_VER_32:
|
|
|
- case RTL_GIGA_MAC_VER_33:
|
|
|
+ case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_33:
|
|
|
case RTL_GIGA_MAC_VER_37:
|
|
|
case RTL_GIGA_MAC_VER_39:
|
|
|
case RTL_GIGA_MAC_VER_43:
|
|
@@ -4822,15 +4737,7 @@ static void r8168_pll_power_down(struct rtl8169_private *tp)
|
|
|
static void r8168_pll_power_up(struct rtl8169_private *tp)
|
|
|
{
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_25:
|
|
|
- case RTL_GIGA_MAC_VER_26:
|
|
|
- case RTL_GIGA_MAC_VER_27:
|
|
|
- case RTL_GIGA_MAC_VER_28:
|
|
|
- case RTL_GIGA_MAC_VER_29:
|
|
|
- case RTL_GIGA_MAC_VER_30:
|
|
|
- case RTL_GIGA_MAC_VER_31:
|
|
|
- case RTL_GIGA_MAC_VER_32:
|
|
|
- case RTL_GIGA_MAC_VER_33:
|
|
|
+ case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_33:
|
|
|
case RTL_GIGA_MAC_VER_37:
|
|
|
case RTL_GIGA_MAC_VER_39:
|
|
|
case RTL_GIGA_MAC_VER_43:
|
|
@@ -4889,45 +4796,16 @@ static void rtl_pll_power_up(struct rtl8169_private *tp)
|
|
|
static void rtl_init_rxcfg(struct rtl8169_private *tp)
|
|
|
{
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_01:
|
|
|
- case RTL_GIGA_MAC_VER_02:
|
|
|
- case RTL_GIGA_MAC_VER_03:
|
|
|
- case RTL_GIGA_MAC_VER_04:
|
|
|
- case RTL_GIGA_MAC_VER_05:
|
|
|
- case RTL_GIGA_MAC_VER_06:
|
|
|
- case RTL_GIGA_MAC_VER_10:
|
|
|
- case RTL_GIGA_MAC_VER_11:
|
|
|
- case RTL_GIGA_MAC_VER_12:
|
|
|
- case RTL_GIGA_MAC_VER_13:
|
|
|
- case RTL_GIGA_MAC_VER_14:
|
|
|
- case RTL_GIGA_MAC_VER_15:
|
|
|
- case RTL_GIGA_MAC_VER_16:
|
|
|
- case RTL_GIGA_MAC_VER_17:
|
|
|
+ case RTL_GIGA_MAC_VER_01 ... RTL_GIGA_MAC_VER_06:
|
|
|
+ case RTL_GIGA_MAC_VER_10 ... RTL_GIGA_MAC_VER_17:
|
|
|
RTL_W32(tp, RxConfig, RX_FIFO_THRESH | RX_DMA_BURST);
|
|
|
break;
|
|
|
- case RTL_GIGA_MAC_VER_18:
|
|
|
- case RTL_GIGA_MAC_VER_19:
|
|
|
- case RTL_GIGA_MAC_VER_20:
|
|
|
- case RTL_GIGA_MAC_VER_21:
|
|
|
- case RTL_GIGA_MAC_VER_22:
|
|
|
- case RTL_GIGA_MAC_VER_23:
|
|
|
- case RTL_GIGA_MAC_VER_24:
|
|
|
+ case RTL_GIGA_MAC_VER_18 ... RTL_GIGA_MAC_VER_24:
|
|
|
case RTL_GIGA_MAC_VER_34:
|
|
|
case RTL_GIGA_MAC_VER_35:
|
|
|
RTL_W32(tp, RxConfig, RX128_INT_EN | RX_MULTI_EN | RX_DMA_BURST);
|
|
|
break;
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_51:
|
|
|
RTL_W32(tp, RxConfig, RX128_INT_EN | RX_MULTI_EN | RX_DMA_BURST | RX_EARLY_OFF);
|
|
|
break;
|
|
|
default:
|
|
@@ -5064,18 +4942,7 @@ static void rtl_init_jumbo_ops(struct rtl8169_private *tp)
|
|
|
* No action needed for jumbo frames with 8169.
|
|
|
* No jumbo for 810x at all.
|
|
|
*/
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_51:
|
|
|
default:
|
|
|
ops->disable = NULL;
|
|
|
ops->enable = NULL;
|
|
@@ -5438,20 +5305,8 @@ static void rtl_init_csi_ops(struct rtl8169_private *tp)
|
|
|
struct csi_ops *ops = &tp->csi_ops;
|
|
|
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_01:
|
|
|
- case RTL_GIGA_MAC_VER_02:
|
|
|
- case RTL_GIGA_MAC_VER_03:
|
|
|
- case RTL_GIGA_MAC_VER_04:
|
|
|
- case RTL_GIGA_MAC_VER_05:
|
|
|
- case RTL_GIGA_MAC_VER_06:
|
|
|
- case RTL_GIGA_MAC_VER_10:
|
|
|
- case RTL_GIGA_MAC_VER_11:
|
|
|
- case RTL_GIGA_MAC_VER_12:
|
|
|
- case RTL_GIGA_MAC_VER_13:
|
|
|
- case RTL_GIGA_MAC_VER_14:
|
|
|
- case RTL_GIGA_MAC_VER_15:
|
|
|
- case RTL_GIGA_MAC_VER_16:
|
|
|
- case RTL_GIGA_MAC_VER_17:
|
|
|
+ case RTL_GIGA_MAC_VER_01 ... RTL_GIGA_MAC_VER_06:
|
|
|
+ case RTL_GIGA_MAC_VER_10 ... RTL_GIGA_MAC_VER_17:
|
|
|
ops->write = NULL;
|
|
|
ops->read = NULL;
|
|
|
break;
|
|
@@ -7843,20 +7698,10 @@ static void rtl_hw_init_8168ep(struct rtl8169_private *tp)
|
|
|
static void rtl_hw_initialize(struct rtl8169_private *tp)
|
|
|
{
|
|
|
switch (tp->mac_version) {
|
|
|
- case RTL_GIGA_MAC_VER_40:
|
|
|
- case RTL_GIGA_MAC_VER_41:
|
|
|
- case RTL_GIGA_MAC_VER_42:
|
|
|
- case RTL_GIGA_MAC_VER_43:
|
|
|
- case RTL_GIGA_MAC_VER_44:
|
|
|
- case RTL_GIGA_MAC_VER_45:
|
|
|
- case RTL_GIGA_MAC_VER_46:
|
|
|
- case RTL_GIGA_MAC_VER_47:
|
|
|
- case RTL_GIGA_MAC_VER_48:
|
|
|
+ case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
|
|
|
rtl_hw_init_8168g(tp);
|
|
|
break;
|
|
|
- case RTL_GIGA_MAC_VER_49:
|
|
|
- case RTL_GIGA_MAC_VER_50:
|
|
|
- case RTL_GIGA_MAC_VER_51:
|
|
|
+ case RTL_GIGA_MAC_VER_49 ... RTL_GIGA_MAC_VER_51:
|
|
|
rtl_hw_init_8168ep(tp);
|
|
|
break;
|
|
|
default:
|