blob: 61df97ffe1e409b49c35e4c219d85a98ca563e74 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/soc/qcom/qcom,pmic-glink.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm PMIC GLINK firmware interface for battery management, USB
8 Type-C and other things.
9
10maintainers:
11 - Bjorn Andersson <andersson@kernel.org>
12
13description:
14 The PMIC GLINK service, running on a coprocessor on some modern Qualcomm
15 platforms and implement USB Type-C handling and battery management. This
16 binding describes the component in the OS used to communicate with the
17 firmware and connect it's resources to those described in the Devicetree,
18 particularly the USB Type-C controllers relationship with USB and DisplayPort
19 components.
20
21properties:
22 compatible:
Tom Rini93743d22024-04-01 09:08:13 -040023 oneOf:
24 - items:
25 - enum:
26 - qcom,sc8180x-pmic-glink
27 - qcom,sc8280xp-pmic-glink
28 - qcom,sm8350-pmic-glink
29 - qcom,sm8450-pmic-glink
30 - qcom,sm8550-pmic-glink
31 - const: qcom,pmic-glink
32 - items:
33 - enum:
34 - qcom,sm8650-pmic-glink
35 - const: qcom,sm8550-pmic-glink
36 - const: qcom,pmic-glink
Tom Rini53633a82024-02-29 12:33:36 -050037
38 '#address-cells':
39 const: 1
40
41 '#size-cells':
42 const: 0
43
44 orientation-gpios:
45 description: Array of input gpios for the Type-C connector orientation indication.
46 The GPIO indication is used to detect the orientation of the Type-C connector.
47 The array should contain a gpio entry for each PMIC Glink connector, in reg order.
48 It is defined that GPIO active level means "CC2" or Reversed/Flipped orientation.
49
50patternProperties:
51 '^connector@\d$':
52 $ref: /schemas/connector/usb-connector.yaml#
53 required:
54 - reg
55
56required:
57 - compatible
58
59allOf:
60 - if:
61 not:
62 properties:
63 compatible:
64 contains:
65 enum:
66 - qcom,sm8450-pmic-glink
67 - qcom,sm8550-pmic-glink
68 then:
69 properties:
70 orientation-gpios: false
71
72additionalProperties: false
73
74examples:
75 - |+
76 pmic-glink {
77 compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink";
78
79 #address-cells = <1>;
80 #size-cells = <0>;
81
82 connector@0 {
83 compatible = "usb-c-connector";
84 reg = <0>;
85 power-role = "dual";
86 data-role = "dual";
87
88 ports {
89 #address-cells = <1>;
90 #size-cells = <0>;
91
92 port@0 {
93 reg = <0>;
94 endpoint {
95 remote-endpoint = <&usb_role>;
96 };
97 };
98
99 port@1 {
100 reg = <1>;
101 endpoint {
102 remote-endpoint = <&ss_phy_out>;
103 };
104 };
105
106 port@2 {
107 reg = <2>;
108 endpoint {
109 remote-endpoint = <&sbu_mux>;
110 };
111 };
112 };
113 };
114 };
115...
116