Thread (42 messages) 42 messages, 6 authors, 2025-03-04

Re: [PATCH net-next v5 06/12] net: pse-pd: Add support for budget evaluation strategies

flat view

From: Kory Maincent <kory.maincent@bootlin.com>
Date: 2025-02-27 14:57:31
Also in: linux-devicetree, linux-doc, lkml

On Thu, 27 Feb 2025 08:40:25 +0100
Oleksij Rempel [off-list ref] wrote:
On Wed, Feb 26, 2025 at 06:42:57PM -0800, Jakub Kicinski wrote:
quoted
On Wed, 26 Feb 2025 07:06:55 +0100 Oleksij Rempel wrote:  
quoted
Here is one example how it is done by HP switches:
https://arubanetworking.hpe.com/techdocs/AOS-CX/10.08/HTML/monitoring_6200/Content/Chp_PoE/PoE_cmds/pow-ove-eth-all-by.htm

switch(config)# interface 1/1/1    <---- per interface
switch(config-if)# power-over-ethernet allocate-by usage
switch(config-if)# power-over-ethernet allocate-by class

Cisco example:
https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus9000/sw/93x/power-over-ethernet/configuration/configuring-power-over-ethernet/m-configuring-power-over-ethernet.html

switch(config)# interface ethernet1/1   <---- per interface
switch(config-if)# power inline auto  
I don't see any mention of a domain in these docs.
This patchset is creating a concept of "domain" but does 
not expose it as an object.  
Ok, I see. @Köry, can you please provide regulator_summary with some
inlined comments to regulators related to the PSE components and PSE
related outputs of ethtool (or what ever tool you are using).

I wont to use this examples to answer.
On my side, I am not close to using sysfs. As we do all configurations through
ethtool I have assumed we should continue with ethtool.
I think we should set the port priority through ethtool, but indeed the PSE
power domain method get and set could be moved to sysfs as it is not something
relative to the port but to a group of ports. Ethtool should still report the
PSE power domain ID of a port to know which domain the port is.

@Oleksij here it is:

# cat /sys/kernel/debug/regulator/regulator_summary
 regulator                      use open bypass  opmode voltage current     min     max
---------------------------------------------------------------------------------------
 regulator-dummy                  5    4      0 unknown     0mV     0mA     0mV     0mV 
    d00e0000.sata-target          1                                 0mA     0mV     0mV
    d00e0000.sata-phy             1                                 0mA     0mV     0mV
    d00e0000.sata-ahci            1                                 0mA     0mV     0mV
    spi0.0-vcc                    1                                 0mA     0mV     0mV
 pse-reg                          1    4      0 unknown     0mV     0mA     0mV     0mV 
    pse-0-0020_pi0                0    1      0 unknown 53816mV  2369mA     0mV     0mV 
       0-0020-pse-0-0020_pi0      0                                 0mA     0mV     0mV
    pse-0-0020_pi2                0    1      0 unknown 53816mV  2369mA     0mV     0mV 
       0-0020-pse-0-0020_pi2      0                                 0mA     0mV     0mV
    pse-0-0020_pi7                0    1      0 unknown 53816mV  2369mA     0mV     0mV 
       0-0020-pse-0-0020_pi7      0                                 0mA     0mV     0mV
 pse-reg2                         1    2      0 unknown     0mV     0mA     0mV     0mV 
    pse-0-0020_pi1                0    0      0 unknown 53816mV  4738mA     0mV     0mV 
 vcc_sd1                          2    1      0 unknown  1800mV     0mA  1800mV  3300mV 
    d00d0000.mmc-vqmmc            1                                 0mA  1800mV  1950mV

# ./ynl/cli.py --spec netlink/specs/ethtool.yaml --no-schema --do pse-get --json
 '{"header":{"dev-name":"wan"}}'
{'c33-pse-admin-state': 2,
 'c33-pse-avail-pw-limit': 127500,
 'c33-pse-pw-d-status': 2,
 'c33-pse-pw-limit-ranges': [{'max': 99900, 'min': 2000}],
 'header': {'dev-index': 4, 'dev-name': 'wan'},
 'pse-budget-eval-strat': 2,
 'pse-prio': 0,
 'pse-prio-max': 8,
 'pse-pw-d-id': 1}

# ./ynl/cli.py --spec netlink/specs/ethtool.yaml --no-schema --do pse-set --json
 '{"header":{"dev-name":"wan"}, "pse-prio":1}'
None
# ./ynl/cli.py --spec netlink/specs/ethtool.yaml --no-schema --do pse-set --json
'{"header":{"dev-name":"wan"}, "c33-pse-avail-pw-limit":15000}'
None

Regards,
-- 
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help