Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1Qualcomm SLIMBus Non Generic Device (NGD) Controller binding
2
3SLIMBus NGD controller is a light-weight driver responsible for communicating
4with SLIMBus slaves directly over the bus using messaging interface and
5communicating with master component residing on ADSP for bandwidth and
6data-channel management
7
8Please 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
49Each subnode represents an instance of NGD, must contain the following
50properties:
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
67slim@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};