1*717bd3dfSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
2*717bd3dfSKrzysztof Kozlowski%YAML 1.2
3*717bd3dfSKrzysztof Kozlowski---
4*717bd3dfSKrzysztof Kozlowski$id: http://devicetree.org/schemas/slimbus/qcom,slim.yaml#
5*717bd3dfSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
6*717bd3dfSKrzysztof Kozlowski
7*717bd3dfSKrzysztof Kozlowskititle: Qualcomm SoC SLIMbus controller
8*717bd3dfSKrzysztof Kozlowski
9*717bd3dfSKrzysztof Kozlowskimaintainers:
10*717bd3dfSKrzysztof Kozlowski  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
11*717bd3dfSKrzysztof Kozlowski  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
12*717bd3dfSKrzysztof Kozlowski
13*717bd3dfSKrzysztof Kozlowskidescription:
14*717bd3dfSKrzysztof Kozlowski  SLIMbus controller used when applications processor controls SLIMbus master
15*717bd3dfSKrzysztof Kozlowski  component.
16*717bd3dfSKrzysztof Kozlowski
17*717bd3dfSKrzysztof KozlowskiallOf:
18*717bd3dfSKrzysztof Kozlowski  - $ref: slimbus.yaml#
19*717bd3dfSKrzysztof Kozlowski
20*717bd3dfSKrzysztof Kozlowskiproperties:
21*717bd3dfSKrzysztof Kozlowski  compatible:
22*717bd3dfSKrzysztof Kozlowski    items:
23*717bd3dfSKrzysztof Kozlowski      - enum:
24*717bd3dfSKrzysztof Kozlowski          - qcom,apq8064-slim
25*717bd3dfSKrzysztof Kozlowski      - const: qcom,slim
26*717bd3dfSKrzysztof Kozlowski
27*717bd3dfSKrzysztof Kozlowski  reg:
28*717bd3dfSKrzysztof Kozlowski    items:
29*717bd3dfSKrzysztof Kozlowski      - description: Physical address of controller register blocks
30*717bd3dfSKrzysztof Kozlowski      - description: SLEW RATE register
31*717bd3dfSKrzysztof Kozlowski
32*717bd3dfSKrzysztof Kozlowski  reg-names:
33*717bd3dfSKrzysztof Kozlowski    items:
34*717bd3dfSKrzysztof Kozlowski      - const: ctrl
35*717bd3dfSKrzysztof Kozlowski      - const: slew
36*717bd3dfSKrzysztof Kozlowski
37*717bd3dfSKrzysztof Kozlowski  clocks:
38*717bd3dfSKrzysztof Kozlowski    items:
39*717bd3dfSKrzysztof Kozlowski      - description: Interface clock for this controller
40*717bd3dfSKrzysztof Kozlowski      - description: Interrupt for controller core's BAM
41*717bd3dfSKrzysztof Kozlowski
42*717bd3dfSKrzysztof Kozlowski  clock-names:
43*717bd3dfSKrzysztof Kozlowski    items:
44*717bd3dfSKrzysztof Kozlowski      - const: iface
45*717bd3dfSKrzysztof Kozlowski      - const: core
46*717bd3dfSKrzysztof Kozlowski
47*717bd3dfSKrzysztof Kozlowski  interrupts:
48*717bd3dfSKrzysztof Kozlowski    maxItems: 1
49*717bd3dfSKrzysztof Kozlowski
50*717bd3dfSKrzysztof Kozlowskirequired:
51*717bd3dfSKrzysztof Kozlowski  - compatible
52*717bd3dfSKrzysztof Kozlowski  - reg
53*717bd3dfSKrzysztof Kozlowski  - reg-names
54*717bd3dfSKrzysztof Kozlowski  - clocks
55*717bd3dfSKrzysztof Kozlowski  - clock-names
56*717bd3dfSKrzysztof Kozlowski  - interrupts
57*717bd3dfSKrzysztof Kozlowski
58*717bd3dfSKrzysztof KozlowskiunevaluatedProperties: false
59*717bd3dfSKrzysztof Kozlowski
60*717bd3dfSKrzysztof Kozlowskiexamples:
61*717bd3dfSKrzysztof Kozlowski  - |
62*717bd3dfSKrzysztof Kozlowski    #include <dt-bindings/clock/qcom,gcc-msm8960.h>
63*717bd3dfSKrzysztof Kozlowski    #include <dt-bindings/clock/qcom,lcc-msm8960.h>
64*717bd3dfSKrzysztof Kozlowski    #include <dt-bindings/interrupt-controller/arm-gic.h>
65*717bd3dfSKrzysztof Kozlowski
66*717bd3dfSKrzysztof Kozlowski    soc {
67*717bd3dfSKrzysztof Kozlowski        #address-cells = <1>;
68*717bd3dfSKrzysztof Kozlowski        #size-cells = <1>;
69*717bd3dfSKrzysztof Kozlowski        ranges;
70*717bd3dfSKrzysztof Kozlowski
71*717bd3dfSKrzysztof Kozlowski        slim@28080000 {
72*717bd3dfSKrzysztof Kozlowski            compatible = "qcom,apq8064-slim", "qcom,slim";
73*717bd3dfSKrzysztof Kozlowski            reg = <0x28080000 0x2000>, <0x80207c 4>;
74*717bd3dfSKrzysztof Kozlowski            reg-names = "ctrl", "slew";
75*717bd3dfSKrzysztof Kozlowski            interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
76*717bd3dfSKrzysztof Kozlowski            clocks = <&lcc SLIMBUS_SRC>, <&lcc AUDIO_SLIMBUS_CLK>;
77*717bd3dfSKrzysztof Kozlowski            clock-names = "iface", "core";
78*717bd3dfSKrzysztof Kozlowski            #address-cells = <2>;
79*717bd3dfSKrzysztof Kozlowski            #size-cells = <0>;
80*717bd3dfSKrzysztof Kozlowski
81*717bd3dfSKrzysztof Kozlowski            audio-codec@1,0 {
82*717bd3dfSKrzysztof Kozlowski                compatible = "slim217,60";
83*717bd3dfSKrzysztof Kozlowski                reg = <1 0>;
84*717bd3dfSKrzysztof Kozlowski            };
85*717bd3dfSKrzysztof Kozlowski        };
86*717bd3dfSKrzysztof Kozlowski    };
87