Commit Graph

2 Commits

Author SHA1 Message Date
Ivan Vecera 2b0eb1a362 ethtool: add interface to interact with Ethernet Power Equipment
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2175237

commit 18ff0bcda6d1dd3d53b4ce3f03e61bf1a648f960
Author: Oleksij Rempel <linux@rempel-privat.de>
Date:   Mon Oct 3 08:52:00 2022 +0200

    ethtool: add interface to interact with Ethernet Power Equipment

    Add interface to support Power Sourcing Equipment. At current step it
    provides generic way to address all variants of PSE devices as defined
    in IEEE 802.3-2018 but support only objects specified for IEEE 802.3-2018 104.4
    PoDL Power Sourcing Equipment (PSE).

    Currently supported and mandatory objects are:
    IEEE 802.3-2018 30.15.1.1.3 aPoDLPSEPowerDetectionStatus
    IEEE 802.3-2018 30.15.1.1.2 aPoDLPSEAdminState
    IEEE 802.3-2018 30.15.1.2.1 acPoDLPSEAdminControl

    This is minimal interface needed to control PSE on each separate
    ethernet port but it provides not all mandatory objects specified in
    IEEE 802.3-2018.

    Since "PoDL PSE" and "PSE" have similar names, but some different values
    I decide to not merge them and keep separate naming schema. This should
    allow as to be as close to IEEE 802.3 spec as possible and avoid name
    conflicts in the future.

    This implementation is connected to PHYs instead of MACs because PSE
    auto classification can potentially interfere with PHY auto negotiation.
    So, may be some extra PHY related initialization will be needed.

    With WIP version of ethtools interaction with PSE capable link looks
    as following:

    $ ip l
    ...
    5: t1l1@eth0: <BROADCAST,MULTICAST> ..
    ...

    $ ethtool --show-pse t1l1
    PSE attributs for t1l1:
    PoDL PSE Admin State: disabled
    PoDL PSE Power Detection Status: disabled

    $ ethtool --set-pse t1l1 podl-pse-admin-control enable
    $ ethtool --show-pse t1l1
    PSE attributs for t1l1:
    PoDL PSE Admin State: enabled
    PoDL PSE Power Detection Status: delivering power

    Signed-off-by: kernel test robot <lkp@intel.com>
    Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
    Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Signed-off-by: Ivan Vecera <ivecera@redhat.com>
2023-03-31 18:02:49 +02:00
Ivan Vecera a4b6fe45fe net: add framework to support Ethernet PSE and PDs devices
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2175237

commit 3114b075eb2531dea31a961944309485d6a53040
Author: Oleksij Rempel <linux@rempel-privat.de>
Date:   Mon Oct 3 08:51:57 2022 +0200

    net: add framework to support Ethernet PSE and PDs devices

    This framework was create with intention to provide support for Ethernet PSE
    (Power Sourcing Equipment) and PDs (Powered Device).

    At current step this patch implements generic PSE support for PoDL (Power over
    Data Lines 802.3bu) specification with reserving name space for PD devices as
    well.

    This framework can be extended to support 802.3af and 802.3at "Power via the
    Media Dependent Interface" (or PoE/Power over Ethernet)

    Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>

Signed-off-by: Ivan Vecera <ivecera@redhat.com>
2023-03-31 18:02:49 +02:00