* [PATCH v2 1/3] dt-bindings: net: pse-pd: Update regex pattern for ethernet-pse nodes
2023-05-30 8:37 [PATCH v2 0/3] Extend dt-bindings for PSE-PD controllers and update prtt1c dts Oleksij Rempel
@ 2023-05-30 8:37 ` Oleksij Rempel
2023-05-30 14:04 ` Krzysztof Kozlowski
2023-05-30 8:37 ` [PATCH v2 2/3] dt-bindings: net: pse-pd: Add "ethernet-pse-0" example to improve validation in podl-pse-regulator DT binding Oleksij Rempel
2023-05-30 8:37 ` [PATCH v2 3/3] ARM: dts: stm32: prtt1c: Add PoDL PSE regulator nodes Oleksij Rempel
2 siblings, 1 reply; 6+ messages in thread
From: Oleksij Rempel @ 2023-05-30 8:37 UTC (permalink / raw)
To: Maxime Coquelin, Alexandre Torgue, Rob Herring,
Krzysztof Kozlowski, Jérôme Pouiller
Cc: Oleksij Rempel, kernel, linux-kernel, linux-stm32,
linux-arm-kernel, devicetree, netdev
This patch modifies the regex pattern for the $nodename property in the
device tree bindings documentation for PSE-PD controllers. The updated
pattern allows for additional node names, including those with a hyphen
followed by a hexadecimal digit.
Before this change, the pattern ^ethernet-pse(@.*)?$ only allowed for
node names like "ethernet-pse" or "ethernet-pse@1". With the new pattern
node names like "ethernet-pse-1" are now also valid.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
---
.../devicetree/bindings/net/pse-pd/pse-controller.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
index b110abb42597..3548efc2191c 100644
--- a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
+++ b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
@@ -16,7 +16,7 @@ maintainers:
properties:
$nodename:
- pattern: "^ethernet-pse(@.*)?$"
+ pattern: "^ethernet-pse(@[0-9a-f]+|-([0-9a-f]+))?$"
"#pse-cells":
description:
--
2.39.2
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v2 1/3] dt-bindings: net: pse-pd: Update regex pattern for ethernet-pse nodes
2023-05-30 8:37 ` [PATCH v2 1/3] dt-bindings: net: pse-pd: Update regex pattern for ethernet-pse nodes Oleksij Rempel
@ 2023-05-30 14:04 ` Krzysztof Kozlowski
0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2023-05-30 14:04 UTC (permalink / raw)
To: Oleksij Rempel, Maxime Coquelin, Alexandre Torgue, Rob Herring,
Krzysztof Kozlowski, Jérôme Pouiller
Cc: kernel, linux-kernel, linux-stm32, linux-arm-kernel, devicetree,
netdev
On 30/05/2023 10:37, Oleksij Rempel wrote:
> This patch modifies the regex pattern for the $nodename property in the
Please do not use "This commit/patch", but imperative mood. See longer
explanation here:
https://elixir.bootlin.com/linux/v5.17.1/source/Documentation/process/submitting-patches.rst#L95
> device tree bindings documentation for PSE-PD controllers. The updated
> pattern allows for additional node names, including those with a hyphen
> followed by a hexadecimal digit.
>
> Before this change, the pattern ^ethernet-pse(@.*)?$ only allowed for
> node names like "ethernet-pse" or "ethernet-pse@1". With the new pattern
> node names like "ethernet-pse-1" are now also valid.
This part is duplicating first paragraph. What you should have here is
answer to why we need it.
>
> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> ---
> .../devicetree/bindings/net/pse-pd/pse-controller.yaml | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
> index b110abb42597..3548efc2191c 100644
> --- a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
> +++ b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
> @@ -16,7 +16,7 @@ maintainers:
>
> properties:
> $nodename:
> - pattern: "^ethernet-pse(@.*)?$"
> + pattern: "^ethernet-pse(@[0-9a-f]+|-([0-9a-f]+))?$"
No need for inner ()
Let's make -N suffix only decimal, as discussed here:
https://lore.kernel.org/all/20221123024153.GB1026269-robh@kernel.org/
I will send a patch for other files.
>
> "#pse-cells":
> description:
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2 2/3] dt-bindings: net: pse-pd: Add "ethernet-pse-0" example to improve validation in podl-pse-regulator DT binding
2023-05-30 8:37 [PATCH v2 0/3] Extend dt-bindings for PSE-PD controllers and update prtt1c dts Oleksij Rempel
2023-05-30 8:37 ` [PATCH v2 1/3] dt-bindings: net: pse-pd: Update regex pattern for ethernet-pse nodes Oleksij Rempel
@ 2023-05-30 8:37 ` Oleksij Rempel
2023-05-30 14:04 ` Krzysztof Kozlowski
2023-05-30 8:37 ` [PATCH v2 3/3] ARM: dts: stm32: prtt1c: Add PoDL PSE regulator nodes Oleksij Rempel
2 siblings, 1 reply; 6+ messages in thread
From: Oleksij Rempel @ 2023-05-30 8:37 UTC (permalink / raw)
To: Maxime Coquelin, Alexandre Torgue, Rob Herring,
Krzysztof Kozlowski, Jérôme Pouiller
Cc: Oleksij Rempel, kernel, linux-kernel, linux-stm32,
linux-arm-kernel, devicetree, netdev
This change adds a new example, "ethernet-pse-0", to the device tree
binding for podl-pse-regulator. This helps improve validation by
supporting more types of node names.
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
---
.../devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml b/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml
index 94a527e6aa1b..25d237e0f406 100644
--- a/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml
+++ b/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml
@@ -38,3 +38,9 @@ examples:
pse-supply = <®_t1l1>;
#pse-cells = <0>;
};
+ - |
+ ethernet-pse-0 {
+ compatible = "podl-pse-regulator";
+ pse-supply = <®_t1l1>;
+ #pse-cells = <0>;
+ };
--
2.39.2
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH v2 2/3] dt-bindings: net: pse-pd: Add "ethernet-pse-0" example to improve validation in podl-pse-regulator DT binding
2023-05-30 8:37 ` [PATCH v2 2/3] dt-bindings: net: pse-pd: Add "ethernet-pse-0" example to improve validation in podl-pse-regulator DT binding Oleksij Rempel
@ 2023-05-30 14:04 ` Krzysztof Kozlowski
0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2023-05-30 14:04 UTC (permalink / raw)
To: Oleksij Rempel, Maxime Coquelin, Alexandre Torgue, Rob Herring,
Krzysztof Kozlowski, Jérôme Pouiller
Cc: kernel, linux-kernel, linux-stm32, linux-arm-kernel, devicetree,
netdev
On 30/05/2023 10:37, Oleksij Rempel wrote:
> This change adds a new example, "ethernet-pse-0", to the device tree
> binding for podl-pse-regulator. This helps improve validation by
> supporting more types of node names.
>
> Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
> ---
> .../devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml b/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml
> index 94a527e6aa1b..25d237e0f406 100644
> --- a/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml
> +++ b/Documentation/devicetree/bindings/net/pse-pd/podl-pse-regulator.yaml
> @@ -38,3 +38,9 @@ examples:
> pse-supply = <®_t1l1>;
> #pse-cells = <0>;
> };
> + - |
> + ethernet-pse-0 {
It's the same example. No need for new one with different node names.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2 3/3] ARM: dts: stm32: prtt1c: Add PoDL PSE regulator nodes
2023-05-30 8:37 [PATCH v2 0/3] Extend dt-bindings for PSE-PD controllers and update prtt1c dts Oleksij Rempel
2023-05-30 8:37 ` [PATCH v2 1/3] dt-bindings: net: pse-pd: Update regex pattern for ethernet-pse nodes Oleksij Rempel
2023-05-30 8:37 ` [PATCH v2 2/3] dt-bindings: net: pse-pd: Add "ethernet-pse-0" example to improve validation in podl-pse-regulator DT binding Oleksij Rempel
@ 2023-05-30 8:37 ` Oleksij Rempel
2 siblings, 0 replies; 6+ messages in thread
From: Oleksij Rempel @ 2023-05-30 8:37 UTC (permalink / raw)
To: Maxime Coquelin, Alexandre Torgue, Rob Herring,
Krzysztof Kozlowski, Jérôme Pouiller
Cc: Oleksij Rempel, kernel, linux-kernel, linux-stm32,
linux-arm-kernel, devicetree, netdev
This commit introduces Power over Data Line (PoDL) Power Source
Equipment (PSE) regulator nodes to the PRTT1C devicetree. The addition
of these nodes enables support for PoDL in PRTT1C devices, allowing
power delivery and data transmission over a single twisted pair.
The new PoDL PSE regulator nodes provide voltage capability information
of the current board design, which can be used as a hint for system
administrators when configuring and managing power settings. This update
enhances the versatility and simplifies the power management of PRTT1C
devices while ensuring compatibility with connected Powered Devices
(PDs).
After applying this patch, the power delivery can be controlled from
user space with a patched [1] ethtool version using the following commands:
ethtool --set-pse t1l2 podl-pse-admin-control enable
to enable power delivery, and
ethtool --show-pse t1l2
to display the PoDL PSE settings.
By integrating PoDL PSE support into the PRTT1C devicetree, users can
benefit from streamlined power and data connections in their
deployments, improving overall system efficiency and reducing cabling
complexity.
[1] https://lore.kernel.org/all/20230317093024.1051999-1-o.rempel@pengutronix.de/
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
---
arch/arm/boot/dts/stm32mp151a-prtt1c.dts | 32 ++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/arch/arm/boot/dts/stm32mp151a-prtt1c.dts b/arch/arm/boot/dts/stm32mp151a-prtt1c.dts
index 58bb05a8c685..ca0d3329cfd7 100644
--- a/arch/arm/boot/dts/stm32mp151a-prtt1c.dts
+++ b/arch/arm/boot/dts/stm32mp151a-prtt1c.dts
@@ -23,6 +23,18 @@ clock_sja1105: clock-sja1105 {
clock-frequency = <25000000>;
};
+ pse_t1l1: ethernet-pse-1 {
+ compatible = "podl-pse-regulator";
+ pse-supply = <®_t1l1>;
+ #pse-cells = <0>;
+ };
+
+ pse_t1l2: ethernet-pse-2 {
+ compatible = "podl-pse-regulator";
+ pse-supply = <®_t1l2>;
+ #pse-cells = <0>;
+ };
+
mdio0: mdio {
compatible = "virtual,mdio-gpio";
#address-cells = <1>;
@@ -32,6 +44,24 @@ mdio0: mdio {
};
+ reg_t1l1: regulator-pse-t1l1 {
+ compatible = "regulator-fixed";
+ regulator-name = "pse-t1l1";
+ regulator-min-microvolt = <12000000>;
+ regulator-max-microvolt = <12000000>;
+ gpio = <&gpiog 13 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ reg_t1l2: regulator-pse-t1l2 {
+ compatible = "regulator-fixed";
+ regulator-name = "pse-t1l2";
+ regulator-min-microvolt = <12000000>;
+ regulator-max-microvolt = <12000000>;
+ gpio = <&gpiog 14 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
wifi_pwrseq: wifi-pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&gpiod 8 GPIO_ACTIVE_LOW>;
@@ -92,6 +122,7 @@ t1l1_phy: ethernet-phy@7 {
reset-gpios = <&gpiog 12 GPIO_ACTIVE_LOW>;
reset-assert-us = <10>;
reset-deassert-us = <35>;
+ pses = <&pse_t1l1>;
};
/* TI DP83TD510E */
@@ -102,6 +133,7 @@ t1l2_phy: ethernet-phy@10 {
reset-gpios = <&gpiog 11 GPIO_ACTIVE_LOW>;
reset-assert-us = <10>;
reset-deassert-us = <35>;
+ pses = <&pse_t1l2>;
};
/* Micrel KSZ9031 */
--
2.39.2
^ permalink raw reply related [flat|nested] 6+ messages in thread