Merge branch 'spectre' of git://git.armlinux.org.uk/~rmk/linux-arm
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / slimbus / slim-ngd-qcom-ctrl.txt
1 Qualcomm SLIMBus Non Generic Device (NGD) Controller binding
2
3 SLIMBus NGD controller is a light-weight driver responsible for communicating
4 with SLIMBus slaves directly over the bus using messaging interface and
5 communicating with master component residing on ADSP for bandwidth and
6 data-channel management
7
8 Please refer to slimbus/bus.txt for details of the common SLIMBus bindings.
9
10 - compatible:
11         Usage: required
12         Value type: <stringlist>
13         Definition: must be "qcom,slim-ngd-v<MAJOR>.<MINOR>.<STEP>"
14         must be one of the following.
15         "qcom,slim-ngd-v1.5.0" for MSM8996
16         "qcom,slim-ngd-v2.1.0" for SDM845
17
18 - reg:
19         Usage: required
20         Value type: <prop-encoded-array>
21         Definition: must specify the base address and size of the controller
22                     register space.
23 - dmas
24         Usage: required
25         Value type: <array of phandles>
26         Definition: List of rx and tx dma channels
27
28 - dma-names
29         Usage: required
30         Value type: <stringlist>
31         Definition: must be "rx" and "tx".
32
33 - interrupts:
34         Usage: required
35         Value type: <prop-encoded-array>
36         Definition: must list controller IRQ.
37
38 #address-cells
39         Usage: required
40         Value type: <u32>
41         Definition: Should be 1, reflecting the instance id of ngd.
42
43 #size-cells
44         Usage: required
45         Value type: <u32>
46         Definition: Should be 0
47
48 = NGD Devices
49 Each subnode represents an instance of NGD, must contain the following
50 properties:
51
52 - reg:
53         Usage: required
54         Value type: <u32>
55         Definition: Should be instance id of ngd.
56
57 #address-cells
58         Usage: required
59         Refer to slimbus/bus.txt for details of the common SLIMBus bindings.
60
61 #size-cells
62         Usage: required
63         Refer to slimbus/bus.txt for details of the common SLIMBus bindings.
64
65 = EXAMPLE
66
67 slim@91c0000 {
68         compatible = "qcom,slim-ngd-v1.5.0";
69         reg = <0x91c0000 0x2c000>;
70         interrupts = <0 163 0>;
71         dmas =  <&slimbam 3>, <&slimbam 4>;
72         dma-names = "rx", "tx";
73         #address-cells = <1>;
74         #size-cells = <0>;
75         ngd@1 {
76                 reg = <1>;
77                 #address-cells = <1>;
78                 #size-cells = <1>;
79                 codec@1 {
80                         compatible = "slim217,1a0";
81                         reg  = <1 0>;
82                 };
83         };
84 };