lkml.org 
[lkml]   [2022]   [Jul]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[RFC PATCH net-next 0/9] net: pcs: Add support for devices probed in the "usual" manner
    Date
    For a long time, PCSs have been tightly coupled with their MACs. For
    this reason, the MAC creates the "phy" or mdio device, and then passes
    it to the PCS to initialize. This has a few disadvantages:

    - Each MAC must re-implement the same steps to look up/create a PCS
    - The PCS cannot use functions tied to device lifetime, such as devm_*.
    - Generally, the PCS does not have easy access to its device tree node

    I'm not sure if these are terribly large disadvantages. In fact, I'm not
    sure if this series provides any benefit which could not be achieved
    with judicious use of helper functions. In any case, here it is.

    NB: Several (later) patches in this series should not be applied. See
    the notes in each commit for details on when they can be applied.


    Sean Anderson (9):
    dt-bindings: net: Add lynx PCS
    dt-bindings: net: Expand pcs-handle to an array
    net: pcs: Add helpers for registering and finding PCSs
    net: pcs: lynx: Convert to an mdio driver
    net: pcs: lynx: Use pcs_get_by_provider to get PCS
    net: pcs: lynx: Remove lynx_get_mdio_device and lynx_pcs_destroy
    arm64: dts: Add compatible strings for Lynx PCSs
    powerpc: dts: Add compatible strings for Lynx PCSs
    net: pcs: lynx: Remove remaining users of lynx_pcs_create

    .../bindings/net/ethernet-controller.yaml | 7 +-
    .../devicetree/bindings/net/fsl,lynx-pcs.yaml | 47 ++++
    MAINTAINERS | 1 +
    .../arm64/boot/dts/freescale/fsl-ls1088a.dtsi | 30 ++-
    .../arm64/boot/dts/freescale/fsl-ls208xa.dtsi | 48 ++--
    .../arm64/boot/dts/freescale/fsl-lx2160a.dtsi | 54 +++--
    .../dts/freescale/qoriq-fman3-0-10g-0.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-10g-1.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-1g-0.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-1g-1.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-1g-2.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-1g-3.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-1g-4.dtsi | 3 +-
    .../dts/freescale/qoriq-fman3-0-1g-5.dtsi | 3 +-
    .../fsl/qoriq-fman3-0-10g-0-best-effort.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi | 3 +-
    .../fsl/qoriq-fman3-0-10g-1-best-effort.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi | 3 +-
    .../boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi | 3 +-
    drivers/net/dsa/ocelot/Kconfig | 2 +
    drivers/net/dsa/ocelot/felix_vsc9959.c | 26 +-
    drivers/net/dsa/ocelot/seville_vsc9953.c | 26 +-
    drivers/net/ethernet/freescale/dpaa2/Kconfig | 1 +
    .../net/ethernet/freescale/dpaa2/dpaa2-mac.c | 43 +---
    drivers/net/ethernet/freescale/enetc/Kconfig | 1 +
    .../net/ethernet/freescale/enetc/enetc_pf.c | 25 +-
    drivers/net/pcs/Kconfig | 23 +-
    drivers/net/pcs/Makefile | 2 +
    drivers/net/pcs/core.c | 226 ++++++++++++++++++
    drivers/net/pcs/pcs-lynx.c | 76 ++++--
    drivers/of/property.c | 2 +
    include/linux/pcs-lynx.h | 6 +-
    include/linux/pcs.h | 33 +++
    include/linux/phylink.h | 6 +
    47 files changed, 566 insertions(+), 197 deletions(-)
    create mode 100644 Documentation/devicetree/bindings/net/fsl,lynx-pcs.yaml
    create mode 100644 drivers/net/pcs/core.c
    create mode 100644 include/linux/pcs.h

    --
    2.35.1.1320.gc452695387.dirty

    \
     
     \ /
      Last update: 2022-07-11 18:07    [W:4.208 / U:0.084 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site