Merge tag 'usb-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / qcom / msm8939.dtsi
index b2e1f2f6c620ced38469fa449c16994c11c7f721..82d85ff61045d31c13b6b5874acd315399a8886e 100644 (file)
@@ -10,6 +10,7 @@
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/reset/qcom,gcc-msm8939.h>
+#include <dt-bindings/soc/qcom,apr.h>
 #include <dt-bindings/thermal/thermal.h>
 
 / {
                        #interrupt-cells = <4>;
                };
 
+               bam_dmux_dma: dma-controller@4044000 {
+                       compatible = "qcom,bam-v1.7.0";
+                       reg = <0x04044000 0x19000>;
+                       interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
+                       #dma-cells = <1>;
+                       qcom,ee = <0>;
+
+                       num-channels = <6>;
+                       qcom,num-ees = <1>;
+                       qcom,powered-remotely;
+
+                       status = "disabled";
+               };
+
                mpss: remoteproc@4080000 {
                        compatible = "qcom,msm8916-mss-pil";
                        reg = <0x04080000 0x100>, <0x04020000 0x040>;
                        qcom,halt-regs = <&tcsr 0x18000 0x19000 0x1a000>;
                        status = "disabled";
 
+                       bam_dmux: bam-dmux {
+                               compatible = "qcom,bam-dmux";
+
+                               interrupt-parent = <&hexagon_smsm>;
+                               interrupts = <1 IRQ_TYPE_EDGE_BOTH>, <11 IRQ_TYPE_EDGE_BOTH>;
+                               interrupt-names = "pc", "pc-ack";
+
+                               qcom,smem-states = <&apps_smsm 1>, <&apps_smsm 11>;
+                               qcom,smem-state-names = "pc", "pc-ack";
+
+                               dmas = <&bam_dmux_dma 4>, <&bam_dmux_dma 5>;
+                               dma-names = "tx", "rx";
+
+                               status = "disabled";
+                       };
+
                        mba {
                                memory-region = <&mba_mem>;
                        };
                                qcom,remote-pid = <1>;
 
                                label = "hexagon";
+
+                               apr: apr {
+                                       compatible = "qcom,apr-v2";
+                                       qcom,smd-channels = "apr_audio_svc";
+                                       qcom,domain = <APR_DOMAIN_ADSP>;
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
+                                       status = "disabled";
+
+                                       q6core: service@3 {
+                                               compatible = "qcom,q6core";
+                                               reg = <APR_SVC_ADSP_CORE>;
+                                       };
+
+                                       q6afe: service@4 {
+                                               compatible = "qcom,q6afe";
+                                               reg = <APR_SVC_AFE>;
+
+                                               q6afedai: dais {
+                                                       compatible = "qcom,q6afe-dais";
+                                                       #address-cells = <1>;
+                                                       #size-cells = <0>;
+                                                       #sound-dai-cells = <1>;
+                                               };
+                                       };
+
+                                       q6asm: service@7 {
+                                               compatible = "qcom,q6asm";
+                                               reg = <APR_SVC_ASM>;
+
+                                               q6asmdai: dais {
+                                                       compatible = "qcom,q6asm-dais";
+                                                       #address-cells = <1>;
+                                                       #size-cells = <0>;
+                                                       #sound-dai-cells = <1>;
+                                               };
+                                       };
+
+                                       q6adm: service@8 {
+                                               compatible = "qcom,q6adm";
+                                               reg = <APR_SVC_ADM>;
+
+                                               q6routing: routing {
+                                                       compatible = "qcom,q6adm-routing";
+                                                       #sound-dai-cells = <0>;
+                                               };
+                                       };
+                               };
                        };
                };
 
                        clock-names = "bam_clk";
                        #dma-cells = <1>;
                        qcom,ee = <0>;
+                       qcom,controlled-remotely;
                };
 
                blsp_uart1: serial@78af000 {
                        #address-cells = <1>;
                        #size-cells = <1>;
                        ranges;
+                       /* Necessary because firmware does not configure this correctly */
+                       clock-frequency = <19200000>;
 
                        frame@b121000 {
                                reg = <0x0b121000 0x1000>,