1. 22 Aug, 2022 7 commits
  2. 19 Aug, 2022 28 commits
  3. 18 Aug, 2022 5 commits
    • Jakub Kicinski's avatar
      Merge branch 'add-dt-property-to-disable-hibernation-mode' · aa447a87
      Jakub Kicinski authored
      Wei Fang says:
      
      ====================
      Add DT property to disable hibernation mode
      
      The patches add the ability to disable the hibernation mode of AR803x
      PHYs. Hibernation mode defaults to enabled after hardware reset on
      these PHYs. If the AR803x PHYs enter hibernation mode, they will not
      provide any clock. For some MACs, they might need the clocks which
      provided by the PHYs to support their own hardware logic.
      So, the patches add the support to disable hibernation mode by adding
      a boolean:
      
              qca,disable-hibernation-mode
      
      If one wished to disable hibernation mode to better match with the
      specifical MAC, just add this property in the phy node of DT.
      ====================
      
      Link: https://lore.kernel.org/r/20220818030054.1010660-1-wei.fang@nxp.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      aa447a87
    • Wei Fang's avatar
      net: phy: at803x: add disable hibernation mode support · 9ecf0401
      Wei Fang authored
      When the cable is unplugged, the Atheros AR803x PHYs will enter
      hibernation mode after about 10 seconds if the hibernation mode
      is enabled and will not provide any clock to the MAC. But for
      some MACs, this feature might cause unexpected issues due to the
      logic of MACs.
      Taking SYNP MAC (stmmac) as an example, if the cable is unplugged
      and the "eth0" interface is down, the AR803x PHY will enter
      hibernation mode. Then perform the "ifconfig eth0 up" operation,
      the stmmac can't be able to complete the software reset operation
      and fail to init it's own DMA. Therefore, the "eth0" interface is
      failed to ifconfig up. Why does it cause this issue? The truth is
      that the software reset operation of the stmmac is designed to
      depend on the RX_CLK of PHY.
      So, this patch offers an option for the user to determine whether
      to disable the hibernation mode of AR803x PHYs.
      Signed-off-by: default avatarWei Fang <wei.fang@nxp.com>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      9ecf0401
    • Wei Fang's avatar
      dt-bindings: net: ar803x: add disable-hibernation-mode propetry · 2e7f0899
      Wei Fang authored
      The hibernation mode of Atheros AR803x PHYs defaults to be
      enabled after hardware reset. When the cable is unplugged,
      the PHY will enter hibernation mode after about 10 seconds
      and the PHY clocks will be stopped to save power.
      However, some MACs need the phy output clock for proper
      functioning of their logic. For instance, stmmac needs the
      RX_CLK of PHY for software reset to complete.
      Therefore, add a DT property to configure the PHY to disable
      this hardware hibernation mode.
      Signed-off-by: default avatarWei Fang <wei.fang@nxp.com>
      Reviewed-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      2e7f0899
    • Sergei Antonov's avatar
      net: moxa: MAC address reading, generating, validity checking · f4693b81
      Sergei Antonov authored
      This device does not remember its MAC address, so add a possibility
      to get it from the platform. If it fails, generate a random address.
      This will provide a MAC address early during boot without user space
      being involved.
      
      Also remove extra calls to is_valid_ether_addr().
      
      Made after suggestions by Andrew Lunn:
      1) Use eth_hw_addr_random() to assign a random MAC address during probe.
      2) Remove is_valid_ether_addr() from moxart_mac_open()
      3) Add a call to platform_get_ethdev_address() during probe
      4) Remove is_valid_ether_addr() from moxart_set_mac_address(). The core does this
      
      v1 -> v2:
      Handle EPROBE_DEFER returned from platform_get_ethdev_address().
      Move MAC reading code to the beginning of the probe function.
      Signed-off-by: default avatarSergei Antonov <saproj@gmail.com>
      Suggested-by: default avatarAndrew Lunn <andrew@lunn.ch>
      CC: Yang Yingliang <yangyingliang@huawei.com>
      CC: Pavel Skripkin <paskripkin@gmail.com>
      CC: Guobin Huang <huangguobin4@huawei.com>
      CC: Yang Wei <yang.wei9@zte.com.cn>
      CC: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Reviewed-by: default avatarVladimir Oltean <olteanv@gmail.com>
      Link: https://lore.kernel.org/r/20220818092317.529557-1-saproj@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      f4693b81
    • Jakub Kicinski's avatar
      Merge branch 'tcp-some-bug-fixes-for-tcp_read_skb' · 267ef48e
      Jakub Kicinski authored
      Cong Wang says:
      
      ====================
      tcp: some bug fixes for tcp_read_skb()
      
      This patchset contains 3 bug fixes and 1 minor refactor patch for
      tcp_read_skb(). V1 only had the first patch, as Eric prefers to fix all
      of them together, I have to group them together.
      ====================
      
      Link: https://lore.kernel.org/r/20220817195445.151609-1-xiyou.wangcong@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      267ef48e