96 lines
2.2 KiB
YAML
96 lines
2.2 KiB
YAML
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/soc/qcom/qcom,pmic-glink.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: Qualcomm PMIC GLINK firmware interface for battery management, USB
|
||
|
Type-C and other things.
|
||
|
|
||
|
maintainers:
|
||
|
- Bjorn Andersson <andersson@kernel.org>
|
||
|
|
||
|
description:
|
||
|
The PMIC GLINK service, running on a coprocessor on some modern Qualcomm
|
||
|
platforms and implement USB Type-C handling and battery management. This
|
||
|
binding describes the component in the OS used to communicate with the
|
||
|
firmware and connect it's resources to those described in the Devicetree,
|
||
|
particularly the USB Type-C controllers relationship with USB and DisplayPort
|
||
|
components.
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
items:
|
||
|
- enum:
|
||
|
- qcom,sc8180x-pmic-glink
|
||
|
- qcom,sc8280xp-pmic-glink
|
||
|
- qcom,sm8350-pmic-glink
|
||
|
- const: qcom,pmic-glink
|
||
|
|
||
|
'#address-cells':
|
||
|
const: 1
|
||
|
|
||
|
'#size-cells':
|
||
|
const: 0
|
||
|
|
||
|
patternProperties:
|
||
|
'^connector@\d$':
|
||
|
$ref: /schemas/connector/usb-connector.yaml#
|
||
|
|
||
|
properties:
|
||
|
reg: true
|
||
|
|
||
|
required:
|
||
|
- reg
|
||
|
|
||
|
unevaluatedProperties: false
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |+
|
||
|
pmic-glink {
|
||
|
compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink";
|
||
|
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
connector@0 {
|
||
|
compatible = "usb-c-connector";
|
||
|
reg = <0>;
|
||
|
power-role = "dual";
|
||
|
data-role = "dual";
|
||
|
|
||
|
ports {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
port@0 {
|
||
|
reg = <0>;
|
||
|
endpoint {
|
||
|
remote-endpoint = <&usb_role>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
port@1 {
|
||
|
reg = <1>;
|
||
|
endpoint {
|
||
|
remote-endpoint = <&ss_phy_out>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
port@2 {
|
||
|
reg = <2>;
|
||
|
endpoint {
|
||
|
remote-endpoint = <&sbu_mux>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
...
|
||
|
|