Skip to content
Permalink
Yangbo-Lu/ptp-…
Switch branches/tags

Commits on Jun 16, 2021

  1. MAINTAINERS: add entry for PTP virtual clock driver

    Add entry for PTP virtual clock driver.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  2. selftests/net: timestamping: support binding PHC

    Support binding PHC of PTP vclock for timestamping.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  3. net: socket: support hardware timestamp conversion to PHC bound

    This patch is to support hardware timestamp conversion to
    PHC bound. This applies to both RX and TX since their skb
    handling (for TX, it's skb clone in error queue) all goes
    through __sock_recv_timestamp.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  4. net: sock: extend SO_TIMESTAMPING for PHC binding

    Since PTP virtual clock support is added, there can be
    several PTP virtual clocks based on one PTP physical
    clock for timestamping.
    
    This patch is to extend SO_TIMESTAMPING API to support
    PHC (PTP Hardware Clock) binding by adding a new flag
    SOF_TIMESTAMPING_BIND_PHC. When PTP virtual clocks are
    in use, user space can configure to bind one for
    timestamping, but PTP physical clock is not supported
    and not needed to bind.
    
    This patch is preparation for timestamp conversion from
    raw timestamp to a specific PTP virtual clock time in
    core net.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  5. ptp: add kernel API ptp_convert_timestamp()

    Add kernel API ptp_convert_timestamp() to convert raw hardware timestamp
    to a specified ptp vclock time.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  6. ethtool: add a new command for getting PHC virtual clocks

    Add an interface for getting PHC (PTP Hardware Clock)
    virtual clocks, which are based on PHC physical clock
    providing hardware timestamp to network packets.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  7. ptp: add kernel API ptp_get_vclocks_index()

    Add kernel API ptp_get_vclocks_index() to get all ptp
    vclocks index on pclock.
    
    This is preparation for supporting ptp vclocks info query
    through ethtool.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  8. ptp: track available ptp vclocks information

    Track available ptp vclocks information. Record index values
    of available ptp vclocks during registering and unregistering.
    
    This is preparation for supporting ptp vclocks info query
    through ethtool.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  9. ptp: support ptp physical/virtual clocks conversion

    Support ptp physical/virtual clocks conversion via sysfs.
    There will be a new attribute n_vclocks under ptp physical
    clock sysfs.
    
    - In default, the value is 0 meaning only ptp physical clock
      is in use.
    - Setting the value can create corresponding number of ptp
      virtual clocks to use. But current physical clock is guaranteed
      to stay free running.
    - Setting the value back to 0 can delete virtual clocks and back
      use physical clock again.
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021
  10. ptp: add ptp virtual clock driver framework

    This patch is to add ptp virtual clock driver framework
    utilizing timecounter/cyclecounter.
    
    The patch just exports two essential APIs for PTP driver.
    
    - ptp_vclock_register()
    - ptp_vclock_unregister()
    
    Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
    yangbolu1991 authored and intel-lab-lkp committed Jun 16, 2021

Commits on Jun 14, 2021

  1. net: wwan: Fix WWAN config symbols

    There is not strong reason to have both WWAN and WWAN_CORE symbols,
    Let's build the WWAN core framework when WWAN is selected, in the
    same way as for other subsystems.
    
    This fixes issue with mhi_net selecting WWAN_CORE without WWAN and
    reported by kernel test robot:
    
    Kconfig warnings: (for reference only)
       WARNING: unmet direct dependencies detected for WWAN_CORE
       Depends on NETDEVICES && WWAN
       Selected by
       - MHI_NET && NETDEVICES && NET_CORE && MHI_BUS
    
    Fixes: 9a44c1c ("net: Add a WWAN subsystem")
    Reported-by: kernel test robot <lkp@intel.com>
    Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Loic Poulain authored and davem330 committed Jun 14, 2021
  2. net: flow_dissector: fix RPS on DSA masters

    After the blamed patch, __skb_flow_dissect() on the DSA master stopped
    adjusting for the length of the DSA headers. This is because it was told
    to adjust only if the needed_headroom is zero, aka if there is no DSA
    header. Of course, the adjustment should be done only if there _is_ a
    DSA header.
    
    Modify the comment too so it is clearer.
    
    Fixes: 4e50025 ("net: dsa: generalize overhead for taggers that use both headers and trailers")
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jun 14, 2021
  3. net: dsa: sja1105: constify the sja1105_regs structures

    The struct sja1105_regs tables are not modified during the runtime of
    the driver, so they can be made constant. In fact, struct sja1105_info
    already holds a const pointer to these.
    
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jun 14, 2021
  4. Merge branch 'tja1103-improvewmentsa'

    Vladimir Oltean says:
    
    ====================
    Fixes and improvements to TJA1103 PHY driver
    
    This series contains:
    - an erratum workaround for the TJA1103 PHY integrated in SJA1110
    - an adaptation of the driver so it prints less unnecessary information
      when probing on SJA1110
    - a PTP RX timestamping bug fix and a clarification patch
    
    Targeting net-next since the PHY support is currently in net-next only.
    
    Changes in v3:
    Added one more patch which improves the readability of
    nxp_c45_reconstruct_ts.
    
    Changes in v2:
    Added a comment to the hardware workaround procedure.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jun 14, 2021
  5. net: phy: nxp-c45-tja11xx: enable MDIO write access to the master/sla…

    …ve registers
    
    The SJA1110 switch integrates TJA1103 PHYs, but in SJA1110 switch rev B
    silicon, there is a bug in that the registers for selecting the 100base-T1
    autoneg master/slave roles are not writable.
    
    To enable write access to the master/slave registers, these additional
    PHY writes are necessary during initialization.
    
    The issue has been corrected in later SJA1110 silicon versions and is
    not present in the standalone PHY variants, but applying the workaround
    unconditionally in the driver should not do any harm.
    
    Suggested-by: Radu Pirea (NXP OSS) <radu-nicolae.pirea@oss.nxp.com>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jun 14, 2021
  6. net: phy: nxp-c45-tja11xx: fix potential RX timestamp wraparound

    The reconstruction procedure for partial timestamps reads the current
    PTP time and fills in the low 2 bits of the second portion, as well as
    the nanoseconds portion, from the actual hardware packet timestamp.
    Critically, the reconstruction procedure works because it assumes that
    the current PTP time is strictly larger than the hardware timestamp was:
    it detects a 2-bit wraparound of the 'seconds' portion by checking whether
    the 'seconds' portion of the partial hardware timestamp is larger than
    the 'seconds' portion of the current time. That can only happen if the
    hardware timestamp was captured by the PHY during the last phase of a
    'modulo 4 seconds' interval, and the current PTP time was read by the
    driver during the initial phase of the next 'modulo 4 seconds' interval.
    
    The partial RX timestamps are added to priv->rx_queue in
    nxp_c45_rxtstamp() and they are processed potentially in parallel by the
    aux worker thread in nxp_c45_do_aux_work(). This means that it is
    possible for nxp_c45_do_aux_work() to process more than one RX timestamp
    during the same schedule.
    
    There is one premature optimization that will cause issues: for RX
    timestamping, the driver reads the current time only once, and it uses
    that to reconstruct all PTP RX timestamps in the queue. For the second
    and later timestamps, this will be an issue if we are processing two RX
    timestamps which are to the left and to the right, respectively, of a
    4-bit wraparound of the 'seconds' portion of the PTP time, and the
    current PTP time is also pre-wraparound.
    
     0.000000000        4.000000000        8.000000000        12.000000000
     |..................|..................|..................|............>
                     ^ ^ ^ ^                                            time
                     | | | |
                     | | | process hwts 1 and hwts 2
                     | | |
                     | | hwts 2
                     | |
                     | read current PTP time
                     |
                     hwts 1
    
    What will happen in that case is that hwts 2 (post-wraparound) will use
    a stale current PTP time that is pre-wraparound.
    But nxp_c45_reconstruct_ts will not detect this condition, because it is
    not coded up for it, so it will reconstruct hwts 2 with a current time
    from the previous 4 second interval (i.e. 0.something instead of
    4.something).
    
    This is solvable by making sure that the full 64-bit current time is
    always read after the PHY has taken the partial RX timestamp. We do this
    by reading the current PTP time for every timestamp in the RX queue.
    
    Fixes: 514def5 ("phy: nxp-c45-tja11xx: add timestamping support")
    Cc: Richard Cochran <richardcochran@gmail.com>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jun 14, 2021
  7. net: phy: nxp-c45-tja11xx: express timestamp wraparound interval in t…

    …erms of TS_SEC_MASK
    
    nxp_c45_reconstruct_ts() takes a partial hardware timestamp in @hwts,
    with 2 bits of the 'seconds' portion, and a full PTP time in @ts.
    
    It patches in the lower bits of @hwts into @ts, and to ensure that the
    reconstructed timestamp is correct, it checks whether the lower 2 bits
    of @hwts are not in fact higher than the lower 2 bits of @ts. This is
    not logically possible because, according to the calling convention, @ts
    was collected later in time than @hwts, but due to two's complement
    arithmetic it can actually happen, because the current PTP time might
    have wrapped around between when @hwts was collected and when @ts was,
    yielding the lower 2 bits of @ts smaller than those of @hwts.
    
    To correct for that situation which is expected to happen under normal
    conditions, the driver subtracts exactly one wraparound interval from
    the reconstructed timestamp, since the upper bits of that need to
    correspond to what the upper bits of @hwts were, not to what the upper
    bits of @ts were.
    
    Readers might be confused because the driver denotes the amount of bits
    that the partial hardware timestamp has to offer as TS_SEC_MASK
    (timestamp mask for seconds). But it subtracts a seemingly unrelated
    BIT(2), which is in fact more subtle: if the hardware timestamp provides
    2 bits of partial 'seconds' timestamp, then the wraparound interval is
    2^2 == BIT(2).
    
    But nonetheless, it is better to express the wraparound interval in
    terms of a definition we already have, so replace BIT(2) with
    1 + GENMASK(1, 0) which produces the same result but is clearer.
    
    Suggested-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
    Cc: Richard Cochran <richardcochran@gmail.com>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jun 14, 2021
  8. net: phy: nxp-c45-tja11xx: demote the "no PTP support" message to debug

    The SJA1110 switch integrates these PHYs, and they do not have support
    for timestamping. This message becomes quite overwhelming:
    
    [   10.056596] NXP C45 TJA1103 spi1.0-base-t1:01: the phy does not support PTP
    [   10.112625] NXP C45 TJA1103 spi1.0-base-t1:02: the phy does not support PTP
    [   10.167461] NXP C45 TJA1103 spi1.0-base-t1:03: the phy does not support PTP
    [   10.223510] NXP C45 TJA1103 spi1.0-base-t1:04: the phy does not support PTP
    [   10.278239] NXP C45 TJA1103 spi1.0-base-t1:05: the phy does not support PTP
    [   10.332663] NXP C45 TJA1103 spi1.0-base-t1:06: the phy does not support PTP
    [   15.390828] NXP C45 TJA1103 spi1.2-base-t1:01: the phy does not support PTP
    [   15.445224] NXP C45 TJA1103 spi1.2-base-t1:02: the phy does not support PTP
    [   15.499673] NXP C45 TJA1103 spi1.2-base-t1:03: the phy does not support PTP
    [   15.554074] NXP C45 TJA1103 spi1.2-base-t1:04: the phy does not support PTP
    [   15.608516] NXP C45 TJA1103 spi1.2-base-t1:05: the phy does not support PTP
    [   15.662996] NXP C45 TJA1103 spi1.2-base-t1:06: the phy does not support PTP
    
    So reduce its log level to debug.
    
    Cc: Richard Cochran <richardcochran@gmail.com>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    vladimiroltean authored and davem330 committed Jun 14, 2021
  9. Merge branch 'Ingenic-SOC-mac-support'

    Zhou Yanjie says:
    
    ====================
    Add Ingenic SoCs MAC support.
    
    v2->v3:
    1.Add "ingenic,mac.yaml" for Ingenic SoCs.
    2.Change tx clk delay and rx clk delay from hardware value to ps.
    3.return -EINVAL when a unsupported value is encountered when
      parsing the binding.
    4.Simplify the code of the RGMII part of X2000 SoC according to
      Andrew Lunn’s suggestion.
    5.Follow the example of "dwmac-mediatek.c" to improve the code
      that handles delays according to Andrew Lunn’s suggestion.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jun 14, 2021
  10. net: stmmac: Add Ingenic SoCs MAC support.

    Add support for Ingenic SoC MAC glue layer support for the stmmac
    device driver. This driver is used on for the MAC ethernet controller
    found in the JZ4775 SoC, the X1000 SoC, the X1600 SoC, the X1830 SoC,
    and the X2000 SoC.
    
    Signed-off-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    XBurst authored and davem330 committed Jun 14, 2021
  11. dt-bindings: dwmac: Add bindings for new Ingenic SoCs.

    Add the dwmac bindings for the JZ4775 SoC, the X1000 SoC,
    the X1600 SoC, the X1830 SoC and the X2000 SoC from Ingenic.
    
    Signed-off-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    XBurst authored and davem330 committed Jun 14, 2021
  12. Merge branch 'marvell-prestera-devlink'

    Oleksandr Mazur says:
    
    ====================
    Marvell Prestera driver implementation of devlink functionality.
    
    This patch series implement Prestera Switchdev driver devlink traps,
    that are registered within the driver, as well as extend current devlink
    functionality by adding new hard drop statistics counter, that could be
    retrieved on-demand: the counter shows number of packets that have been
    dropped by the underlying device and haven't been passed to the devlink
    subsystem.
    
    The core prestera-devlink functionality is implemented in the prestera_devlink.c.
    
    The patch series also extends the existing devlink kernel API:
     - devlink: add trap_drop_counter_get callback for driver to register - make it possible
       to keep track of how many packets have been dropped (hard) by the switch device, before
       the packets even made it to the devlink subsystem (e.g. dropped due to RXDMA buffer
       overflow).
    
    The core features that extend current functionality of prestera Switchdev driver:
     - add logic for driver traps and drops registration (also traps with DROP action).
     - add documentation for prestera driver traps and drops group.
    
    PATCH v2:
     1) Rebase whole series on top of latest mater;
     2) Remove storm control-related patches, as they're out of devlink
        scope;
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jun 14, 2021
  13. documentation: networking: devlink: add prestera switched driver Docu…

    …mentation
    
    Add documentation for the devlink feature prestera switchdev driver supports:
    add description for the support of the driver-specific devlink traps
    (include both traps with action TRAP and action DROP);
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  14. net: marvell: prestera: devlink: add traps with DROP action

    Add traps that have init_action being set to DROP.
    Add 'trap_drop_counter_get' (devlink API) callback implementation,
    that is used to get number of packets that have been dropped by the HW
    (traps with action 'DROP').
    Add new FW command CPU_CODE_COUNTERS_GET.
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  15. net: marvell: prestera: devlink: add traps/groups implementation

    Add devlink traps registration (with corresponding groups) for
    all the traffic types that driver traps to the CPU;
    prestera_rxtx: report each packet trapped to the CPU (RX) to the
    prestera_devlink;
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  16. testing: selftests: drivers: net: netdevsim: devlink: add test case f…

    …or hard drop statistics
    
    Add hard drop counter check testcase, to make sure netdevsim driver
    properly handles the devlink hard drop counters get/set callbacks.
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  17. drivers: net: netdevsim: add devlink trap_drop_counter_get implementa…

    …tion
    
    Whenever query statistics is issued for trap with DROP action,
    devlink subsystem would also fill-in statistics 'dropped' field.
    In case if device driver did't register callback for hard drop
    statistics querying, 'dropped' field will be omitted and not filled.
    Add trap_drop_counter_get callback implementation to the netdevsim.
    Add new test cases for netdevsim, to test both the callback
    functionality, as well as drop statistics alteration check.
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  18. testing: selftests: net: forwarding: add devlink-required functionali…

    …ty to test (hard) dropped stats field
    
    Add devlink_trap_drop_packets_get function, as well as test that are
    used to verify devlink (hard) dropped stats functionality works.
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  19. net: core: devlink: add dropped stats traps field

    Whenever query statistics is issued for trap, devlink subsystem
    would also fill-in statistics 'dropped' field. This field indicates
    the number of packets HW dropped and failed to report to the device driver,
    and thus - to the devlink subsystem itself.
    In case if device driver didn't register callback for hard drop
    statistics querying, 'dropped' field will be omitted and not filled.
    
    Signed-off-by: Oleksandr Mazur <oleksandr.mazur@plvision.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Oleksandr Mazur authored and davem330 committed Jun 14, 2021
  20. net: wwan: iosm: Remove DEBUG flag

    Author forgot to remove that flag.
    
    Fixes: f7af616 ("net: iosm: infrastructure")
    Reported-by: Leon Romanovsky <leon@kernel.org>
    Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
    Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Loic Poulain authored and davem330 committed Jun 14, 2021
  21. ibmvnic: fix send_request_map incompatible argument

    The 3rd argument is u32 by function definition while it is __be32
    by function declaration.
    
    Signed-off-by: Lijun Pan <lijunp213@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Lijun Pan authored and davem330 committed Jun 14, 2021
  22. Merge branch 'ksz886x-cable-test'

    Oleksij Rempel says:
    
    ====================
    provide cable test support for the ksz886x switch
    
    changes v5:
    - drop resume() patch
    - add Reviewed-by tags.
    - rework dsa_slave_phy_connect() patch
    
    changes v4:
    - use fallthrough;
    - use EOPNOTSUPP instead of ENOTSUPP
    - drop flags variable in dsa_slave_phy_connect patch
    - extend description for the "net: phy: micrel: apply resume errat"
      patch
    - fix "use consistent alignments" patch
    
    changes v3:
    - remove RFC tag
    
    changes v2:
    - use generic MII_* defines where possible
    - rework phylink validate
    - remove phylink get state function
    - reorder cabletest patches to make PHY flag patch in the right order
    - fix MDI-X detection
    
    This patches provide support for cable testing on the ksz886x switches.
    Since it has one special port, we needed to add phylink with validation
    and extra quirk for the PHY to signal, that one port will not provide
    valid cable testing reports.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jun 14, 2021
  23. net: phy: micrel: ksz886x/ksz8081: add cabletest support

    This patch support for cable test for the ksz886x switches and the
    ksz8081 PHY.
    
    The patch was tested on a KSZ8873RLL switch with following results:
    
    - port 1:
      - provides invalid values, thus return -ENOTSUPP
        (Errata: DS80000830A: "LinkMD does not work on Port 1",
         http://ww1.microchip.com/downloads/en/DeviceDoc/KSZ8873-Errata-DS80000830A.pdf)
    
    - port 2:
      - can detect distance
      - can detect open on each wire of pair A (wire 1 and 2)
      - can detect open only on one wire of pair B (only wire 3)
      - can detect short between wires of a pair (wires 1 + 2 or 3 + 6)
      - short between pairs is detected as open.
        For example short between wires 2 + 3 is detected as open.
    
    Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    olerem authored and davem330 committed Jun 14, 2021
  24. net: dsa: dsa_slave_phy_connect(): extend phy's flags with port speci…

    …fic phy flags
    
    The current get_phy_flags() is only processed when we connect to a PHY
    via a designed phy-handle property via phylink_of_phy_connect(), but if
    we fallback on the internal MDIO bus created by a switch and take the
    dsa_slave_phy_connect() path then we would not be processing that flag
    and using it at PHY connection time.
    
    Suggested-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    olerem authored and davem330 committed Jun 14, 2021
  25. net: dsa: microchip: ksz8795: add LINK_MD register support

    Add mapping for LINK_MD register to enable cable testing functionality.
    
    Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    olerem authored and davem330 committed Jun 14, 2021
Older