0001 Qualcomm SLIMBus Non Generic Device (NGD) Controller binding
0002
0003 SLIMBus NGD controller is a light-weight driver responsible for communicating
0004 with SLIMBus slaves directly over the bus using messaging interface and
0005 communicating with master component residing on ADSP for bandwidth and
0006 data-channel management
0007
0008 Please refer to slimbus/bus.txt for details of the common SLIMBus bindings.
0009
0010 - compatible:
0011 Usage: required
0012 Value type: <stringlist>
0013 Definition: must be "qcom,slim-ngd-v<MAJOR>.<MINOR>.<STEP>"
0014 must be one of the following.
0015 "qcom,slim-ngd-v1.5.0" for MSM8996
0016 "qcom,slim-ngd-v2.1.0" for SDM845
0017
0018 - reg:
0019 Usage: required
0020 Value type: <prop-encoded-array>
0021 Definition: must specify the base address and size of the controller
0022 register space.
0023 - dmas
0024 Usage: required
0025 Value type: <array of phandles>
0026 Definition: List of rx and tx dma channels
0027
0028 - dma-names
0029 Usage: required
0030 Value type: <stringlist>
0031 Definition: must be "rx" and "tx".
0032
0033 - interrupts:
0034 Usage: required
0035 Value type: <prop-encoded-array>
0036 Definition: must list controller IRQ.
0037
0038 #address-cells
0039 Usage: required
0040 Value type: <u32>
0041 Definition: Should be 1, reflecting the instance id of ngd.
0042
0043 #size-cells
0044 Usage: required
0045 Value type: <u32>
0046 Definition: Should be 0
0047
0048 = NGD Devices
0049 Each subnode represents an instance of NGD, must contain the following
0050 properties:
0051
0052 - reg:
0053 Usage: required
0054 Value type: <u32>
0055 Definition: Should be instance id of ngd.
0056
0057 #address-cells
0058 Usage: required
0059 Refer to slimbus/bus.txt for details of the common SLIMBus bindings.
0060
0061 #size-cells
0062 Usage: required
0063 Refer to slimbus/bus.txt for details of the common SLIMBus bindings.
0064
0065 = EXAMPLE
0066
0067 slim@91c0000 {
0068 compatible = "qcom,slim-ngd-v1.5.0";
0069 reg = <0x91c0000 0x2c000>;
0070 interrupts = <0 163 0>;
0071 dmas = <&slimbam 3>, <&slimbam 4>;
0072 dma-names = "rx", "tx";
0073 #address-cells = <1>;
0074 #size-cells = <0>;
0075 ngd@1 {
0076 reg = <1>;
0077 #address-cells = <1>;
0078 #size-cells = <1>;
0079 codec@1 {
0080 compatible = "slim217,1a0";
0081 reg = <1 0>;
0082 };
0083 };
0084 };