Files
linux/Documentation/devicetree/bindings/usb/parade,ps8830.yaml
Neil Armstrong bd8c3ce6d7 dt-bindings: usb: switch: split out ports definition
The ports definition currently defined in the usb-switch.yaml
fits standards devices which are either recipient of altmode
muxing and orientation switching events or an element of the
USB Super Speed data lanes.

This doesn't necessarely fit combo PHYs like the Qualcomm
USB3/DP Combo which has a different ports representation.

Move the ports definition to a separate usb-switch-ports.yaml
and reference it next to the usb-switch.yaml, except for
the Qualcomm USB3/DP Combo PHY bindings.

Reported-by: Rob Herring <robh@kernel.org>
Closes: https://lore.kernel.org/all/175462129176.394940.16810637795278334342.robh@kernel.org/
Fixes: 3bad7fe227 ("dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp: Reference usb-switch.yaml to allow mode-switch")
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-10-13 09:37:28 +02:00

145 lines
3.1 KiB
YAML

# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/parade,ps8830.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Parade PS883x USB and DisplayPort Retimer
maintainers:
- Abel Vesa <abel.vesa@linaro.org>
properties:
compatible:
oneOf:
- items:
- const: parade,ps8833
- const: parade,ps8830
- const: parade,ps8830
reg:
maxItems: 1
clocks:
items:
- description: XO Clock
reset-gpios:
maxItems: 1
vdd-supply:
description: power supply (1.07V)
vdd33-supply:
description: power supply (3.3V)
vdd33-cap-supply:
description: power supply (3.3V)
vddar-supply:
description: power supply (1.07V)
vddat-supply:
description: power supply (1.07V)
vddio-supply:
description: power supply (1.2V or 1.8V)
orientation-switch: true
retimer-switch: true
ports:
$ref: /schemas/graph.yaml#/properties/ports
properties:
port@0:
$ref: /schemas/graph.yaml#/properties/port
description: Super Speed (SS) Output endpoint to the Type-C connector
port@1:
$ref: /schemas/graph.yaml#/$defs/port-base
description: Super Speed (SS) Input endpoint from the Super-Speed PHY
unevaluatedProperties: false
port@2:
$ref: /schemas/graph.yaml#/properties/port
description:
Sideband Use (SBU) AUX lines endpoint to the Type-C connector for the purpose of
handling altmode muxing and orientation switching.
required:
- compatible
- reg
- clocks
- reset-gpios
- vdd-supply
- vdd33-supply
- vdd33-cap-supply
- vddat-supply
- vddio-supply
- orientation-switch
- retimer-switch
allOf:
- $ref: usb-switch.yaml#
- $ref: usb-switch-ports.yaml#
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
typec-mux@8 {
compatible = "parade,ps8830";
reg = <0x8>;
clocks = <&clk_rtmr_xo>;
vdd-supply = <&vreg_rtmr_1p15>;
vdd33-supply = <&vreg_rtmr_3p3>;
vdd33-cap-supply = <&vreg_rtmr_3p3>;
vddar-supply = <&vreg_rtmr_1p15>;
vddat-supply = <&vreg_rtmr_1p15>;
vddio-supply = <&vreg_rtmr_1p8>;
reset-gpios = <&tlmm 10 GPIO_ACTIVE_LOW>;
retimer-switch;
orientation-switch;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
endpoint {
remote-endpoint = <&typec_con_ss>;
};
};
port@1 {
reg = <1>;
endpoint {
remote-endpoint = <&usb_phy_ss>;
};
};
port@2 {
reg = <2>;
endpoint {
remote-endpoint = <&typec_dp_aux>;
};
};
};
};
};
...