1. 17 Jun, 2016 36 commits
  2. 16 Jun, 2016 4 commits
    • David S. Miller's avatar
      Merge branch 'stmmac-wol' · b4eccef8
      David S. Miller authored
      Vincent Palatin says:
      
      ====================
      net: stmmac: dwmac-rk: fixes for Wake-on-Lan on RK3288
      
      In order to support Wake-On-Lan when using the RK3288 integrated MAC
      (with an external RGMII PHY), we need to avoid shutting down the regulator
      of the external PHY when the MAC is suspended as it's currently done in the MAC
      platform code.
      As a first step, create independant callbacks for suspend/resume rather than
      re-using exit/init callbacks. So the dwmac platform driver can behave differently
      on suspend where it might skip shutting the PHY and at module unloading.
      Then update the dwmac-rk driver to switch off the PHY regulator only if we are
      not planning to wake up from the LAN.
      Finally add the PMT interrupt to the MAC device tree configuration, so we can
      wake up the core from it when the PHY has received the magic packet.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b4eccef8
    • Vincent Palatin's avatar
      ARM: dts: rockchip: add interrupt for Wake-on-Lan on RK3288 · d5bfbeb8
      Vincent Palatin authored
      In order to use Wake-on-Lan on RK3288 integrated MAC, we need to wake-up
      the CPU on the PMT interrupt when the MAC and the PHY are in low power mode.
      Adding the interrupt declaration.
      Signed-off-by: default avatarVincent Palatin <vpalatin@chromium.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d5bfbeb8
    • Vincent Palatin's avatar
      net: stmmac: dwmac-rk: keep the PHY up for WoL · 229666c1
      Vincent Palatin authored
      When suspending the machine, do not shutdown the external PHY by cutting
      its regulator in the mac platform driver suspend code if Wake-on-Lan is enabled,
      else it cannot wake us up.
      In order to do this, split the suspend/resume callbacks from the
      init/exit callbacks, so we can condition the power-down on the lack of
      need to wake-up from the LAN but do it unconditionally when unloading the
      module.
      Signed-off-by: default avatarVincent Palatin <vpalatin@chromium.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      229666c1
    • Vincent Palatin's avatar
      net: stmmac: allow to split suspend/resume from init/exit callbacks · cecbc556
      Vincent Palatin authored
      Let the stmmac platform drivers provide dedicated suspend and resume
      callbacks rather than always re-using the init and exits callbacks.
      If the driver does not provide the suspend or resume callback, we fall
      back to the old behavior trying to use exit or init.
      
      This allows a specific platform to perform only a partial power-down on
      suspend if Wake-on-Lan is enabled but always perform the full shutdown
      sequence if the module is unloaded.
      Signed-off-by: default avatarVincent Palatin <vpalatin@chromium.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cecbc556