lkml.org 
[lkml]   [2012]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH net-next 1/5] r8169: modify pll power function
    Date
    Adjust r810x_pll_power_down, r810x_pll_power_up, and r8168_pll_power_up.
    Always power up device during rtl_open. For r810x, turn off more power
    when the WOL is disabled.

    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    ---
    drivers/net/ethernet/realtek/r8169.c | 37 +++++++++++++++++++++++++++------
    1 files changed, 30 insertions(+), 7 deletions(-)

    diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
    index 27c358c..3edb996 100644
    --- a/drivers/net/ethernet/realtek/r8169.c
    +++ b/drivers/net/ethernet/realtek/r8169.c
    @@ -3508,15 +3508,45 @@ static void r810x_phy_power_up(struct rtl8169_private *tp)

    static void r810x_pll_power_down(struct rtl8169_private *tp)
    {
    + void __iomem *ioaddr = tp->mmio_addr;
    +
    if (rtl_wol_pll_power_down(tp))
    return;

    r810x_phy_power_down(tp);
    +
    + switch (tp->mac_version) {
    + case RTL_GIGA_MAC_VER_07:
    + case RTL_GIGA_MAC_VER_08:
    + case RTL_GIGA_MAC_VER_09:
    + case RTL_GIGA_MAC_VER_10:
    + case RTL_GIGA_MAC_VER_13:
    + case RTL_GIGA_MAC_VER_16:
    + break;
    + default:
    + RTL_W8(PMCH, RTL_R8(PMCH) & ~0x80);
    + break;
    + }
    }

    static void r810x_pll_power_up(struct rtl8169_private *tp)
    {
    + void __iomem *ioaddr = tp->mmio_addr;
    +
    r810x_phy_power_up(tp);
    +
    + switch (tp->mac_version) {
    + case RTL_GIGA_MAC_VER_07:
    + case RTL_GIGA_MAC_VER_08:
    + case RTL_GIGA_MAC_VER_09:
    + case RTL_GIGA_MAC_VER_10:
    + case RTL_GIGA_MAC_VER_13:
    + case RTL_GIGA_MAC_VER_16:
    + break;
    + default:
    + RTL_W8(PMCH, RTL_R8(PMCH) | 0x80);
    + break;
    + }
    }

    static void r8168_phy_power_up(struct rtl8169_private *tp)
    @@ -3620,13 +3650,6 @@ static void r8168_pll_power_up(struct rtl8169_private *tp)
    {
    void __iomem *ioaddr = tp->mmio_addr;

    - if ((tp->mac_version == RTL_GIGA_MAC_VER_27 ||
    - tp->mac_version == RTL_GIGA_MAC_VER_28 ||
    - tp->mac_version == RTL_GIGA_MAC_VER_31) &&
    - r8168dp_check_dash(tp)) {
    - return;
    - }
    -
    switch (tp->mac_version) {
    case RTL_GIGA_MAC_VER_25:
    case RTL_GIGA_MAC_VER_26:
    --
    1.7.7.6


    \
     
     \ /
      Last update: 2012-03-27 10:01    [W:0.022 / U:0.328 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site