1# 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: 23 oneOf: 24 - items: 25 - enum: 26 - qcom,qcm6490-pmic-glink 27 - qcom,sc8180x-pmic-glink 28 - qcom,sc8280xp-pmic-glink 29 - qcom,sm8350-pmic-glink 30 - qcom,sm8450-pmic-glink 31 - qcom,sm8550-pmic-glink 32 - const: qcom,pmic-glink 33 - items: 34 - enum: 35 - qcom,sm8650-pmic-glink 36 - qcom,x1e80100-pmic-glink 37 - const: qcom,sm8550-pmic-glink 38 - const: qcom,pmic-glink 39 40 '#address-cells': 41 const: 1 42 43 '#size-cells': 44 const: 0 45 46 orientation-gpios: 47 description: Array of input gpios for the Type-C connector orientation indication. 48 The GPIO indication is used to detect the orientation of the Type-C connector. 49 The array should contain a gpio entry for each PMIC Glink connector, in reg order. 50 It is defined that GPIO active level means "CC2" or Reversed/Flipped orientation. 51 52patternProperties: 53 '^connector@\d$': 54 $ref: /schemas/connector/usb-connector.yaml# 55 required: 56 - reg 57 58required: 59 - compatible 60 61allOf: 62 - if: 63 not: 64 properties: 65 compatible: 66 contains: 67 enum: 68 - qcom,sm8450-pmic-glink 69 - qcom,sm8550-pmic-glink 70 - qcom,x1e80100-pmic-glink 71 then: 72 properties: 73 orientation-gpios: false 74 75additionalProperties: false 76 77examples: 78 - |+ 79 pmic-glink { 80 compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink"; 81 82 #address-cells = <1>; 83 #size-cells = <0>; 84 85 connector@0 { 86 compatible = "usb-c-connector"; 87 reg = <0>; 88 power-role = "dual"; 89 data-role = "dual"; 90 91 ports { 92 #address-cells = <1>; 93 #size-cells = <0>; 94 95 port@0 { 96 reg = <0>; 97 endpoint { 98 remote-endpoint = <&usb_role>; 99 }; 100 }; 101 102 port@1 { 103 reg = <1>; 104 endpoint { 105 remote-endpoint = <&ss_phy_out>; 106 }; 107 }; 108 109 port@2 { 110 reg = <2>; 111 endpoint { 112 remote-endpoint = <&sbu_mux>; 113 }; 114 }; 115 }; 116 }; 117 }; 118... 119 120