xref: /freebsd/sys/contrib/device-tree/Bindings/slimbus/slim-ngd-qcom-ctrl.txt (revision f7c32ed617858bcd22f8d1b03199099d50125721)
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};
85