xref: /freebsd/sys/contrib/device-tree/Bindings/bus/qcom,ssbi.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1*aa1a8ff2SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*aa1a8ff2SEmmanuel Vadot%YAML 1.2
3*aa1a8ff2SEmmanuel Vadot---
4*aa1a8ff2SEmmanuel Vadot$id: http://devicetree.org/schemas/bus/qcom,ssbi.yaml#
5*aa1a8ff2SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*aa1a8ff2SEmmanuel Vadot
7*aa1a8ff2SEmmanuel Vadottitle: Qualcomm Single-wire Serial Bus Interface (SSBI)
8*aa1a8ff2SEmmanuel Vadot
9*aa1a8ff2SEmmanuel Vadotdescription:
10*aa1a8ff2SEmmanuel Vadot  Some Qualcomm MSM devices contain a point-to-point serial bus used to
11*aa1a8ff2SEmmanuel Vadot  communicate with a limited range of devices (mostly power management
12*aa1a8ff2SEmmanuel Vadot  chips).
13*aa1a8ff2SEmmanuel Vadot
14*aa1a8ff2SEmmanuel Vadotmaintainers:
15*aa1a8ff2SEmmanuel Vadot  - Andy Gross <agross@kernel.org>
16*aa1a8ff2SEmmanuel Vadot  - Bjorn Andersson <andersson@kernel.org>
17*aa1a8ff2SEmmanuel Vadot
18*aa1a8ff2SEmmanuel Vadotproperties:
19*aa1a8ff2SEmmanuel Vadot  compatible:
20*aa1a8ff2SEmmanuel Vadot    const: qcom,ssbi
21*aa1a8ff2SEmmanuel Vadot
22*aa1a8ff2SEmmanuel Vadot  reg:
23*aa1a8ff2SEmmanuel Vadot    maxItems: 1
24*aa1a8ff2SEmmanuel Vadot
25*aa1a8ff2SEmmanuel Vadot  qcom,controller-type:
26*aa1a8ff2SEmmanuel Vadot    description:
27*aa1a8ff2SEmmanuel Vadot      Indicates the SSBI bus variant the controller should use to talk
28*aa1a8ff2SEmmanuel Vadot      with the slave device. The type chosen is determined by the attached
29*aa1a8ff2SEmmanuel Vadot      slave.
30*aa1a8ff2SEmmanuel Vadot    enum:
31*aa1a8ff2SEmmanuel Vadot      - ssbi
32*aa1a8ff2SEmmanuel Vadot      - ssbi2
33*aa1a8ff2SEmmanuel Vadot      - pmic-arbiter
34*aa1a8ff2SEmmanuel Vadot
35*aa1a8ff2SEmmanuel Vadot  pmic:
36*aa1a8ff2SEmmanuel Vadot    $ref: /schemas/mfd/qcom-pm8xxx.yaml#
37*aa1a8ff2SEmmanuel Vadot
38*aa1a8ff2SEmmanuel Vadotrequired:
39*aa1a8ff2SEmmanuel Vadot  - compatible
40*aa1a8ff2SEmmanuel Vadot  - reg
41*aa1a8ff2SEmmanuel Vadot  - qcom,controller-type
42*aa1a8ff2SEmmanuel Vadot
43*aa1a8ff2SEmmanuel VadotadditionalProperties: false
44*aa1a8ff2SEmmanuel Vadot
45*aa1a8ff2SEmmanuel Vadotexamples:
46*aa1a8ff2SEmmanuel Vadot  - |
47*aa1a8ff2SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
48*aa1a8ff2SEmmanuel Vadot    ssbi@c00000 {
49*aa1a8ff2SEmmanuel Vadot        compatible = "qcom,ssbi";
50*aa1a8ff2SEmmanuel Vadot        reg = <0x00c00000 0x1000>;
51*aa1a8ff2SEmmanuel Vadot        qcom,controller-type = "pmic-arbiter";
52*aa1a8ff2SEmmanuel Vadot
53*aa1a8ff2SEmmanuel Vadot        pmic {
54*aa1a8ff2SEmmanuel Vadot            compatible = "qcom,pm8821";
55*aa1a8ff2SEmmanuel Vadot            interrupt-parent = <&msmgpio>;
56*aa1a8ff2SEmmanuel Vadot            interrupts = <76 IRQ_TYPE_LEVEL_LOW>;
57*aa1a8ff2SEmmanuel Vadot            #interrupt-cells = <2>;
58*aa1a8ff2SEmmanuel Vadot            interrupt-controller;
59*aa1a8ff2SEmmanuel Vadot            #address-cells = <1>;
60*aa1a8ff2SEmmanuel Vadot            #size-cells = <0>;
61*aa1a8ff2SEmmanuel Vadot        };
62*aa1a8ff2SEmmanuel Vadot    };
63*aa1a8ff2SEmmanuel Vadot...
64