1. 22 9月, 2020 1 次提交
  2. 20 9月, 2020 3 次提交
  3. 19 9月, 2020 1 次提交
  4. 12 9月, 2020 1 次提交
    • D
      net: phy: mchp: Add support for LAN8814 QUAD PHY · 1623ad8e
      Divya Koppera 提交于
      LAN8814 is a low-power, quad-port triple-speed (10BASE-T/100BASETX/1000BASE-T)
      Ethernet physical layer transceiver (PHY). It supports transmission and
      reception of data on standard CAT-5, as well as CAT-5e and CAT-6, unshielded
      twisted pair (UTP) cables.
      
      LAN8814 supports industry-standard QSGMII (Quad Serial Gigabit Media
      Independent Interface) and Q-USGMII (Quad Universal Serial Gigabit Media
      Independent Interface) providing chip-to-chip connection to four Gigabit
      Ethernet MACs using a single serialized link (differential pair) in each
      direction.
      
      The LAN8814 SKU supports high-accuracy timestamping functions to
      support IEEE-1588 solutions using Microchip Ethernet switches, as well as
      customer solutions based on SoCs and FPGAs.
      
      The LAN8804 SKU has same features as that of LAN8814 SKU except that it does
      not support 1588, SyncE, or Q-USGMII with PCH/MCH.
      
      This adds support for 10BASE-T, 100BASE-TX, and 1000BASE-T,
      QSGMII link with the MAC.
      
      Signed-off-by: Divya Koppera<divya.koppera@microchip.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1623ad8e
  5. 10 9月, 2020 4 次提交
  6. 04 9月, 2020 1 次提交
  7. 03 9月, 2020 1 次提交
  8. 01 9月, 2020 3 次提交
  9. 28 8月, 2020 2 次提交
  10. 27 8月, 2020 7 次提交
  11. 26 8月, 2020 1 次提交
  12. 24 8月, 2020 1 次提交
  13. 21 8月, 2020 1 次提交
  14. 20 8月, 2020 1 次提交
  15. 12 8月, 2020 1 次提交
    • M
      net: phy: marvell10g: fix null pointer dereference · 1b8ef142
      Marek Behún 提交于
      Commit c3e302ed ("net: phy: marvell10g: fix temperature sensor on 2110")
      added a check for PHY ID via phydev->drv->phy_id in a function which is
      called by devres at a time when phydev->drv is already set to null by
      phy_remove function.
      
      This null pointer dereference can be triggered via SFP subsystem with a
      SFP module containing this Marvell PHY. When the SFP interface is put
      down, the SFP subsystem removes the PHY.
      
      Fixes: c3e302ed ("net: phy: marvell10g: fix temperature sensor on 2110")
      Signed-off-by: NMarek Behún <marek.behun@nic.cz>
      Cc: Maxime Chevallier <maxime.chevallier@bootlin.com>
      Cc: Andrew Lunn <andrew@lunn.ch>
      Cc: Baruch Siach <baruch@tkos.co.il>
      Cc: Russell King <rmk+kernel@armlinux.org.uk>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1b8ef142
  16. 09 8月, 2020 1 次提交
  17. 04 8月, 2020 4 次提交
  18. 23 7月, 2020 1 次提交
    • V
      net: phy: fix check in get_phy_c45_ids · fb16d465
      Vladimir Oltean 提交于
      After the patch below, the iteration through the available MMDs is
      completely short-circuited, and devs_in_pkg remains set to the initial
      value of zero.
      
      Due to devs_in_pkg being zero, the rest of get_phy_c45_ids() is
      short-circuited too: the following loop never reaches below this point
      either (it executes "continue" for every device in package, failing to
      retrieve PHY ID for any of them):
      
      	/* Now probe Device Identifiers for each device present. */
      	for (i = 1; i < num_ids; i++) {
      		if (!(devs_in_pkg & (1 << i)))
      			continue;
      
      So c45_ids->device_ids remains populated with zeroes. This causes an
      Aquantia AQR412 PHY (same as any C45 PHY would, in fact) to be probed by
      the Generic PHY driver.
      
      The issue seems to be a case of submitting partially committed work (and
      therefore testing something other than was submitted).
      
      The intention of the patch was to delay exiting the loop until one more
      condition is reached (the devs_in_pkg read from hardware is either 0, OR
      mostly f's). So fix the patch to reflect that.
      
      Tested with traffic on a LS1028A-QDS, the PHY is now probed correctly
      using the Aquantia driver. The devs_in_pkg bit field is set to
      0xe000009a, and the MMDs that are present have the following IDs:
      
      [    5.600772] libphy: get_phy_c45_ids: device_ids[1]=0x3a1b662
      [    5.618781] libphy: get_phy_c45_ids: device_ids[3]=0x3a1b662
      [    5.630797] libphy: get_phy_c45_ids: device_ids[4]=0x3a1b662
      [    5.654535] libphy: get_phy_c45_ids: device_ids[7]=0x3a1b662
      [    5.791723] libphy: get_phy_c45_ids: device_ids[29]=0x3a1b662
      [    5.804050] libphy: get_phy_c45_ids: device_ids[30]=0x3a1b662
      [    5.816375] libphy: get_phy_c45_ids: device_ids[31]=0x0
      
      [    7.690237] mscc_felix 0000:00:00.5: PHY [0.5:00] driver [Aquantia AQR412] (irq=POLL)
      [    7.704739] mscc_felix 0000:00:00.5: PHY [0.5:01] driver [Aquantia AQR412] (irq=POLL)
      [    7.718918] mscc_felix 0000:00:00.5: PHY [0.5:02] driver [Aquantia AQR412] (irq=POLL)
      [    7.733044] mscc_felix 0000:00:00.5: PHY [0.5:03] driver [Aquantia AQR412] (irq=POLL)
      
      Fixes: bba238ed ("net: phy: continue searching for C45 MMDs even if first returned ffff:ffff")
      Reported-by: NColin King <colin.king@canonical.com>
      Reported-by: NIoana Ciornei <ioana.ciornei@nxp.com>
      Signed-off-by: NVladimir Oltean <vladimir.oltean@nxp.com>
      Reviewed-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fb16d465
  19. 22 7月, 2020 5 次提交