# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/bus/qcom,ssbi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Single-wire Serial Bus Interface (SSBI)

description:
  Some Qualcomm MSM devices contain a point-to-point serial bus used to
  communicate with a limited range of devices (mostly power management
  chips).

maintainers:
  - Andy Gross <agross@kernel.org>
  - Bjorn Andersson <andersson@kernel.org>

properties:
  compatible:
    const: qcom,ssbi

  reg:
    maxItems: 1

  qcom,controller-type:
    description:
      Indicates the SSBI bus variant the controller should use to talk
      with the slave device. The type chosen is determined by the attached
      slave.
    enum:
      - ssbi
      - ssbi2
      - pmic-arbiter

  pmic:
    $ref: /schemas/mfd/qcom-pm8xxx.yaml#

required:
  - compatible
  - reg
  - qcom,controller-type

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    ssbi@c00000 {
        compatible = "qcom,ssbi";
        reg = <0x00c00000 0x1000>;
        qcom,controller-type = "pmic-arbiter";

        pmic {
            compatible = "qcom,pm8821";
            interrupt-parent = <&msmgpio>;
            interrupts = <76 IRQ_TYPE_LEVEL_LOW>;
            #interrupt-cells = <2>;
            interrupt-controller;
            #address-cells = <1>;
            #size-cells = <0>;
        };
    };
...