* [PATCH] dt-bindings: phy: Convert Broadcom SATA PHY to YAML
@ 2020-11-22 3:29 Florian Fainelli
2020-11-30 15:34 ` Vinod Koul
0 siblings, 1 reply; 2+ messages in thread
From: Florian Fainelli @ 2020-11-22 3:29 UTC (permalink / raw)
To: linux-kernel
Cc: Florian Fainelli, Vinod Koul, Kishon Vijay Abraham I,
Rob Herring,
open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS
Update the Broadcom SATA PHY Device Tree binding to a YAML format.
Suggested-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
This is based on phy/next and it depends on the following commit:
https://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy.git/commit/?h=next&id=6d3b3f88423e4edc0fad5853c10558b42e1a91dd
it would make sense to have Vinod apply this change.
.../bindings/phy/brcm,sata-phy.yaml | 148 ++++++++++++++++++
.../devicetree/bindings/phy/brcm-sata-phy.txt | 61 --------
2 files changed, 148 insertions(+), 61 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
delete mode 100644 Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
diff --git a/Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml b/Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
new file mode 100644
index 000000000000..979b7419dc69
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
@@ -0,0 +1,148 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/phy/brcm,sata-phy.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Broadcom SATA3 PHY
+
+maintainers:
+ - Florian Fainelli <f.fainelli@gmail.com>
+
+properties:
+ $nodename:
+ pattern: "^sata[-|_]phy(@.*)?$"
+
+ compatible:
+ oneOf:
+ - items:
+ - enum:
+ - brcm,bcm7216-sata-phy
+ - brcm,bcm7425-sata-phy
+ - brcm,bcm7445-sata-phy
+ - brcm,bcm63138-sata-phy
+ - const: brcm,phy-sata3
+ - items:
+ - const: brcm,iproc-nsp-sata-phy
+ - items:
+ - const: brcm,iproc-ns2-sata-phy
+ - items:
+ - const: brcm,iproc-sr-sata-phy
+
+ reg:
+ minItems: 1
+ maxItems: 2
+
+ reg-names:
+ minItems: 1
+ maxItems: 2
+ items:
+ - const: phy
+ - const: phy-ctrl
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+patternProperties:
+ "^sata-phy@[0-9]+$":
+ type: object
+ description: |
+ Each port's PHY should be represented as a sub-node.
+
+ properties:
+ reg:
+ description: The SATA PHY port number
+ maxItems: 1
+
+ "#phy-cells":
+ const: 0
+
+ "brcm,enable-ssc":
+ $ref: /schemas/types.yaml#/definitions/flag
+ description: |
+ Use spread spectrum clocking (SSC) on this port
+ This property is not applicable for "brcm,iproc-ns2-sata-phy",
+ "brcm,iproc-nsp-sata-phy" and "brcm,iproc-sr-sata-phy".
+
+ "brcm,rxaeq-mode":
+ $ref: /schemas/types.yaml#/definitions/string
+ description:
+ String that indicates the desired RX equalizer mode.
+ enum:
+ - off
+ - auto
+ - manual
+
+ "brcm,rxaeq-value":
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: |
+ When 'brcm,rxaeq-mode' is set to "manual", provides the RX
+ equalizer value that should be used.
+ minimum: 0
+ maximum: 63
+
+ "brcm,tx-amplitude-millivolt":
+ description: |
+ Transmit amplitude voltage in millivolt.
+ $ref: /schemas/types.yaml#/definitions/uint32
+ enum: [400, 500, 600, 800]
+
+ required:
+ - reg
+ - "#phy-cells"
+
+ additionalProperties: false
+
+if:
+ properties:
+ compatible:
+ items:
+ const: brcm,iproc-ns2-sata-phy
+then:
+ properties:
+ reg:
+ maxItems: 2
+ reg-names:
+ items:
+ - const: "phy"
+ - const: "phy-ctrl"
+else:
+ properties:
+ reg:
+ maxItems: 1
+ reg-names:
+ maxItems: 1
+ items:
+ - const: "phy"
+
+required:
+ - compatible
+ - "#address-cells"
+ - "#size-cells"
+ - reg
+ - reg-names
+
+additionalProperties: false
+
+examples:
+ - |
+ sata-phy@f0458100 {
+ compatible = "brcm,bcm7445-sata-phy", "brcm,phy-sata3";
+ reg = <0xf0458100 0x1e00>;
+ reg-names = "phy";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ sata-phy@0 {
+ reg = <0>;
+ #phy-cells = <0>;
+ };
+
+ sata-phy@1 {
+ reg = <1>;
+ #phy-cells = <0>;
+ };
+ };
diff --git a/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt b/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
deleted file mode 100644
index e5abbace93a3..000000000000
--- a/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
+++ /dev/null
@@ -1,61 +0,0 @@
-* Broadcom SATA3 PHY
-
-Required properties:
-- compatible: should be one or more of
- "brcm,bcm7216-sata-phy"
- "brcm,bcm7425-sata-phy"
- "brcm,bcm7445-sata-phy"
- "brcm,iproc-ns2-sata-phy"
- "brcm,iproc-nsp-sata-phy"
- "brcm,phy-sata3"
- "brcm,iproc-sr-sata-phy"
- "brcm,bcm63138-sata-phy"
-- address-cells: should be 1
-- size-cells: should be 0
-- reg: register ranges for the PHY PCB interface
-- reg-names: should be "phy" and "phy-ctrl"
- The "phy-ctrl" registers are only required for
- "brcm,iproc-ns2-sata-phy" and "brcm,iproc-sr-sata-phy".
-
-Sub-nodes:
- Each port's PHY should be represented as a sub-node.
-
-Sub-nodes required properties:
-- reg: the PHY number
-- phy-cells: generic PHY binding; must be 0
-
-Sub-nodes optional properties:
-- brcm,enable-ssc: use spread spectrum clocking (SSC) on this port
- This property is not applicable for "brcm,iproc-ns2-sata-phy",
- "brcm,iproc-nsp-sata-phy" and "brcm,iproc-sr-sata-phy".
-
-- brcm,rxaeq-mode: string that indicates the desired RX equalizer
- mode, possible values are:
- "off" (equivalent to not specifying the property)
- "auto"
- "manual" (brcm,rxaeq-value is used in that case)
-
-- brcm,rxaeq-value: when 'rxaeq-mode' is set to "manual", provides the RX
- equalizer value that should be used. Allowed range is 0..63.
-
-- brcm,tx-amplitude-millivolt: transmit amplitude voltage in millivolt.
- Possible values are 400, 500, 600 or 800 mV.
-
-Example
- sata-phy@f0458100 {
- compatible = "brcm,bcm7445-sata-phy", "brcm,phy-sata3";
- reg = <0xf0458100 0x1e00>, <0xf045804c 0x10>;
- reg-names = "phy";
- #address-cells = <1>;
- #size-cells = <0>;
-
- sata-phy@0 {
- reg = <0>;
- #phy-cells = <0>;
- };
-
- sata-phy@1 {
- reg = <1>;
- #phy-cells = <0>;
- };
- };
--
2.25.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] dt-bindings: phy: Convert Broadcom SATA PHY to YAML
2020-11-22 3:29 [PATCH] dt-bindings: phy: Convert Broadcom SATA PHY to YAML Florian Fainelli
@ 2020-11-30 15:34 ` Vinod Koul
0 siblings, 0 replies; 2+ messages in thread
From: Vinod Koul @ 2020-11-30 15:34 UTC (permalink / raw)
To: Florian Fainelli
Cc: linux-kernel, Kishon Vijay Abraham I, Rob Herring,
open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS
Hi Florian,
On 21-11-20, 19:29, Florian Fainelli wrote:
> Update the Broadcom SATA PHY Device Tree binding to a YAML format.
>
> Suggested-by: Vinod Koul <vkoul@kernel.org>
> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
I am getting these warns:
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:19:9: [warning] wrong indentation: expected 10 but found 8 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:20:12: [warning] wrong indentation: expected 12 but found 11 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:26:9: [warning] wrong indentation: expected 10 but found 8 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:28:9: [warning] wrong indentation: expected 10 but found 8 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:30:9: [warning] wrong indentation: expected 10 but found 8 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:51:6: [warning] wrong indentation: expected 4 but found 5 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:71:11: [warning] wrong indentation: expected 9 but found 10 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:80:11: [warning] wrong indentation: expected 9 but found 10 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml:88:11: [warning] wrong indentation: expected 9 but found 10 (indentation)
Documentation/devicetree/bindings/phy/brcm,sata-phy.example.dt.yaml: sata-phy@f0458100: '#phy-cells' is a required property
From schema: /usr/local/lib/python3.8/site-packages/dtschema/schemas/phy/phy-provider.yaml
> ---
> This is based on phy/next and it depends on the following commit:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy.git/commit/?h=next&id=6d3b3f88423e4edc0fad5853c10558b42e1a91dd
>
> it would make sense to have Vinod apply this change.
>
> .../bindings/phy/brcm,sata-phy.yaml | 148 ++++++++++++++++++
> .../devicetree/bindings/phy/brcm-sata-phy.txt | 61 --------
> 2 files changed, 148 insertions(+), 61 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
> delete mode 100644 Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
>
> diff --git a/Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml b/Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
> new file mode 100644
> index 000000000000..979b7419dc69
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/phy/brcm,sata-phy.yaml
> @@ -0,0 +1,148 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/phy/brcm,sata-phy.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Broadcom SATA3 PHY
> +
> +maintainers:
> + - Florian Fainelli <f.fainelli@gmail.com>
> +
> +properties:
> + $nodename:
> + pattern: "^sata[-|_]phy(@.*)?$"
> +
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - brcm,bcm7216-sata-phy
> + - brcm,bcm7425-sata-phy
> + - brcm,bcm7445-sata-phy
> + - brcm,bcm63138-sata-phy
> + - const: brcm,phy-sata3
> + - items:
> + - const: brcm,iproc-nsp-sata-phy
> + - items:
> + - const: brcm,iproc-ns2-sata-phy
> + - items:
> + - const: brcm,iproc-sr-sata-phy
> +
> + reg:
> + minItems: 1
> + maxItems: 2
> +
> + reg-names:
> + minItems: 1
> + maxItems: 2
> + items:
> + - const: phy
> + - const: phy-ctrl
> +
> + "#address-cells":
> + const: 1
> +
> + "#size-cells":
> + const: 0
> +
> +patternProperties:
> + "^sata-phy@[0-9]+$":
> + type: object
> + description: |
> + Each port's PHY should be represented as a sub-node.
> +
> + properties:
> + reg:
> + description: The SATA PHY port number
> + maxItems: 1
> +
> + "#phy-cells":
> + const: 0
> +
> + "brcm,enable-ssc":
> + $ref: /schemas/types.yaml#/definitions/flag
> + description: |
> + Use spread spectrum clocking (SSC) on this port
> + This property is not applicable for "brcm,iproc-ns2-sata-phy",
> + "brcm,iproc-nsp-sata-phy" and "brcm,iproc-sr-sata-phy".
> +
> + "brcm,rxaeq-mode":
> + $ref: /schemas/types.yaml#/definitions/string
> + description:
> + String that indicates the desired RX equalizer mode.
> + enum:
> + - off
> + - auto
> + - manual
> +
> + "brcm,rxaeq-value":
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description: |
> + When 'brcm,rxaeq-mode' is set to "manual", provides the RX
> + equalizer value that should be used.
> + minimum: 0
> + maximum: 63
> +
> + "brcm,tx-amplitude-millivolt":
> + description: |
> + Transmit amplitude voltage in millivolt.
> + $ref: /schemas/types.yaml#/definitions/uint32
> + enum: [400, 500, 600, 800]
> +
> + required:
> + - reg
> + - "#phy-cells"
> +
> + additionalProperties: false
> +
> +if:
> + properties:
> + compatible:
> + items:
> + const: brcm,iproc-ns2-sata-phy
> +then:
> + properties:
> + reg:
> + maxItems: 2
> + reg-names:
> + items:
> + - const: "phy"
> + - const: "phy-ctrl"
> +else:
> + properties:
> + reg:
> + maxItems: 1
> + reg-names:
> + maxItems: 1
> + items:
> + - const: "phy"
> +
> +required:
> + - compatible
> + - "#address-cells"
> + - "#size-cells"
> + - reg
> + - reg-names
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + sata-phy@f0458100 {
> + compatible = "brcm,bcm7445-sata-phy", "brcm,phy-sata3";
> + reg = <0xf0458100 0x1e00>;
> + reg-names = "phy";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + sata-phy@0 {
> + reg = <0>;
> + #phy-cells = <0>;
> + };
> +
> + sata-phy@1 {
> + reg = <1>;
> + #phy-cells = <0>;
> + };
> + };
> diff --git a/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt b/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
> deleted file mode 100644
> index e5abbace93a3..000000000000
> --- a/Documentation/devicetree/bindings/phy/brcm-sata-phy.txt
> +++ /dev/null
> @@ -1,61 +0,0 @@
> -* Broadcom SATA3 PHY
> -
> -Required properties:
> -- compatible: should be one or more of
> - "brcm,bcm7216-sata-phy"
> - "brcm,bcm7425-sata-phy"
> - "brcm,bcm7445-sata-phy"
> - "brcm,iproc-ns2-sata-phy"
> - "brcm,iproc-nsp-sata-phy"
> - "brcm,phy-sata3"
> - "brcm,iproc-sr-sata-phy"
> - "brcm,bcm63138-sata-phy"
> -- address-cells: should be 1
> -- size-cells: should be 0
> -- reg: register ranges for the PHY PCB interface
> -- reg-names: should be "phy" and "phy-ctrl"
> - The "phy-ctrl" registers are only required for
> - "brcm,iproc-ns2-sata-phy" and "brcm,iproc-sr-sata-phy".
> -
> -Sub-nodes:
> - Each port's PHY should be represented as a sub-node.
> -
> -Sub-nodes required properties:
> -- reg: the PHY number
> -- phy-cells: generic PHY binding; must be 0
> -
> -Sub-nodes optional properties:
> -- brcm,enable-ssc: use spread spectrum clocking (SSC) on this port
> - This property is not applicable for "brcm,iproc-ns2-sata-phy",
> - "brcm,iproc-nsp-sata-phy" and "brcm,iproc-sr-sata-phy".
> -
> -- brcm,rxaeq-mode: string that indicates the desired RX equalizer
> - mode, possible values are:
> - "off" (equivalent to not specifying the property)
> - "auto"
> - "manual" (brcm,rxaeq-value is used in that case)
> -
> -- brcm,rxaeq-value: when 'rxaeq-mode' is set to "manual", provides the RX
> - equalizer value that should be used. Allowed range is 0..63.
> -
> -- brcm,tx-amplitude-millivolt: transmit amplitude voltage in millivolt.
> - Possible values are 400, 500, 600 or 800 mV.
> -
> -Example
> - sata-phy@f0458100 {
> - compatible = "brcm,bcm7445-sata-phy", "brcm,phy-sata3";
> - reg = <0xf0458100 0x1e00>, <0xf045804c 0x10>;
> - reg-names = "phy";
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - sata-phy@0 {
> - reg = <0>;
> - #phy-cells = <0>;
> - };
> -
> - sata-phy@1 {
> - reg = <1>;
> - #phy-cells = <0>;
> - };
> - };
> --
> 2.25.1
--
~Vinod
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-11-30 15:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-22 3:29 [PATCH] dt-bindings: phy: Convert Broadcom SATA PHY to YAML Florian Fainelli
2020-11-30 15:34 ` Vinod Koul
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.