| // SPDX-License-Identifier: GPL-2.0-only |
| /* |
| * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. |
| */ |
| |
| &pcie2_rp { |
| #address-cells = <5>; |
| #size-cells = <0>; |
| |
| mhi_0: qcom,mhi@0 { |
| reg = <0 0 0 0 0 >; |
| |
| /* controller specific configuration */ |
| qcom,smmu-cfg = <0x1d>; |
| qcom,addr-win = <0x0 0x20000000 0x0 0x3fffffff>; |
| qcom,iommu-dma = "disabled"; |
| |
| esoc-names = "mdm"; |
| esoc-0 = <&mdm0>; |
| |
| /* mhi bus specific settings */ |
| mhi,max-channels = <110>; |
| mhi,timeout = <2000>; |
| |
| mhi_channels: mhi_channels { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| mhi_chan@0 { |
| reg = <0>; |
| label = "LOOPBACK"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@1 { |
| reg = <1>; |
| label = "LOOPBACK"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@2 { |
| reg = <2>; |
| label = "SAHARA"; |
| mhi,num-elements = <128>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x2>; |
| }; |
| |
| mhi_chan@3 { |
| reg = <3>; |
| label = "SAHARA"; |
| mhi,num-elements = <128>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x2>; |
| }; |
| |
| mhi_chan@4 { |
| reg = <4>; |
| label = "DIAG"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@5 { |
| reg = <5>; |
| label = "DIAG"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@8 { |
| reg = <8>; |
| label = "QDSS"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@9 { |
| reg = <9>; |
| label = "QDSS"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@10 { |
| reg = <10>; |
| label = "EFS"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@11 { |
| reg = <11>; |
| label = "EFS"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@14 { |
| reg = <14>; |
| label = "QMI0"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@15 { |
| reg = <15>; |
| label = "QMI0"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@16 { |
| reg = <16>; |
| label = "QMI1"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@17 { |
| reg = <17>; |
| label = "QMI1"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@18 { |
| reg = <18>; |
| label = "IP_CTRL"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@19 { |
| reg = <19>; |
| label = "IP_CTRL"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| mhi,auto-queue; |
| }; |
| |
| mhi_chan@20 { |
| reg = <20>; |
| label = "IPCR"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <1>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| mhi,auto-start; |
| }; |
| |
| mhi_chan@21 { |
| reg = <21>; |
| label = "IPCR"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| mhi,auto-queue; |
| mhi,auto-start; |
| }; |
| |
| mhi_chan@22 { |
| reg = <22>; |
| label = "TF"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@23 { |
| reg = <23>; |
| label = "TF"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <2>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@25 { |
| reg = <25>; |
| label = "BL"; |
| mhi,num-elements = <32>; |
| mhi,event-ring = <1>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x2>; |
| mhi,auto-queue; |
| mhi,auto-start; |
| }; |
| |
| mhi_chan@26 { |
| reg = <26>; |
| label = "DCI"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@27 { |
| reg = <27>; |
| label = "DCI"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@32 { |
| reg = <32>; |
| label = "DUN"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@33 { |
| reg = <33>; |
| label = "DUN"; |
| mhi,num-elements = <64>; |
| mhi,event-ring = <3>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@50 { |
| reg = <50>; |
| label = "ADSP_0"; |
| mhi,event-ring = <4>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@51 { |
| reg = <51>; |
| label = "ADSP_1"; |
| mhi,event-ring = <4>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@52 { |
| reg = <52>; |
| label = "SLPI_0"; |
| mhi,event-ring = <5>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@53 { |
| reg = <53>; |
| label = "SLPI_1"; |
| mhi,event-ring = <5>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@70 { |
| reg = <70>; |
| label = "ADSP_2"; |
| mhi,event-ring = <4>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@71 { |
| reg = <71>; |
| label = "ADSP_3"; |
| mhi,event-ring = <4>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@72 { |
| reg = <72>; |
| label = "SLPI_2"; |
| mhi,event-ring = <5>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@73 { |
| reg = <73>; |
| label = "SLPI_3"; |
| mhi,event-ring = <5>; |
| mhi,chan-dir = <0>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@80 { |
| reg = <80>; |
| label = "AUDIO_VOICE_0"; |
| mhi,event-ring = <0>; |
| mhi,chan-dir = <0>; |
| mhi,ee = <0x4>; |
| mhi,data-type = <3>; |
| mhi,offload-chan; |
| status = "ok"; |
| }; |
| |
| mhi_chan@100 { |
| reg = <100>; |
| label = "IP_HW0"; |
| mhi,num-elements = <512>; |
| mhi,event-ring = <6>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <1>; |
| mhi,doorbell-mode = <3>; |
| mhi,ee = <0x4>; |
| mhi,db-mode-switch; |
| }; |
| |
| mhi_chan@101 { |
| reg = <101>; |
| label = "IP_HW0"; |
| mhi,num-elements = <512>; |
| mhi,event-ring = <7>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <4>; |
| mhi,doorbell-mode = <3>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@102 { |
| reg = <102>; |
| label = "IP_HW_ADPL"; |
| mhi,event-ring = <8>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| mhi,lpm-notify; |
| }; |
| |
| mhi_chan@103 { |
| reg = <103>; |
| label = "IP_HW_QDSS"; |
| mhi,num-elements = <128>; |
| mhi,event-ring = <9>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <0>; |
| mhi,doorbell-mode = <2>; |
| mhi,ee = <0x4>; |
| }; |
| |
| mhi_chan@104 { |
| reg = <104>; |
| label = "IP_HW0_RSC"; |
| mhi,num-elements = <512>; |
| mhi,local-elements = <3078>; |
| mhi,event-ring = <7>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <5>; |
| mhi,doorbell-mode = <3>; |
| mhi,ee = <0x4>; |
| mhi,chan-type = <3>; |
| }; |
| |
| mhi_chan@107 { |
| reg = <107>; |
| label = "IP_HW_MHIP_1"; |
| mhi,event-ring = <10>; |
| mhi,chan-dir = <1>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| }; |
| |
| mhi_chan@108 { |
| reg = <108>; |
| label = "IP_HW_MHIP_1"; |
| mhi,event-ring = <11>; |
| mhi,chan-dir = <2>; |
| mhi,data-type = <3>; |
| mhi,ee = <0x4>; |
| mhi,offload-chan; |
| mhi,lpm-notify; |
| }; |
| }; |
| |
| mhi_events: mhi_events { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| mhi_event@0 { |
| reg = <0>; |
| mhi,num-elements = <32>; |
| mhi,intmod = <1>; |
| mhi,msi = <1>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| mhi,data-type = <1>; |
| }; |
| |
| mhi_event@1 { |
| mhi,num-elements = <256>; |
| mhi,intmod = <1>; |
| mhi,msi = <2>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| }; |
| |
| mhi_event@2 { |
| mhi,num-elements = <256>; |
| mhi,intmod = <1>; |
| mhi,msi = <3>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| }; |
| |
| mhi_event@3 { |
| mhi,num-elements = <256>; |
| mhi,intmod = <1>; |
| mhi,msi = <4>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| }; |
| |
| mhi_event@4 { |
| mhi,num-elements = <512>; |
| mhi,intmod = <5>; |
| mhi,msi = <0>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,client-manage; |
| mhi,offload; |
| }; |
| |
| mhi_event@5 { |
| mhi,num-elements = <512>; |
| mhi,intmod = <5>; |
| mhi,msi = <0>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,client-manage; |
| mhi,offload; |
| }; |
| |
| mhi_event@6 { |
| mhi,num-elements = <1024>; |
| mhi,intmod = <5>; |
| mhi,msi = <5>; |
| mhi,chan = <100>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,hw-ev; |
| }; |
| |
| mhi_event@7 { |
| mhi,num-elements = <1024>; |
| mhi,intmod = <5>; |
| mhi,msi = <6>; |
| mhi,chan = <101>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,hw-ev; |
| mhi,client-manage; |
| }; |
| |
| mhi_event@8 { |
| mhi,num-elements = <0>; |
| mhi,intmod = <0>; |
| mhi,msi = <0>; |
| mhi,chan = <102>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,hw-ev; |
| mhi,client-manage; |
| mhi,offload; |
| }; |
| |
| mhi_event@9 { |
| mhi,num-elements = <1024>; |
| mhi,intmod = <5>; |
| mhi,msi = <7>; |
| mhi,chan = <103>; |
| mhi,priority = <1>; |
| mhi,brstmode = <2>; |
| mhi,hw-ev; |
| }; |
| |
| mhi_event@10 { |
| mhi,num-elements = <0>; |
| mhi,intmod = <0>; |
| mhi,msi = <0>; |
| mhi,chan = <107>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,hw-ev; |
| mhi,client-manage; |
| mhi,offload; |
| }; |
| |
| mhi_event@11 { |
| mhi,num-elements = <0>; |
| mhi,intmod = <0>; |
| mhi,msi = <0>; |
| mhi,chan = <108>; |
| mhi,priority = <1>; |
| mhi,brstmode = <3>; |
| mhi,hw-ev; |
| mhi,client-manage; |
| mhi,offload; |
| }; |
| }; |
| |
| mhi_devices: mhi_devices { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| mhi_netdev_0: mhi_rmnet@0 { |
| reg = <0x0>; |
| mhi,chan = "IP_HW0"; |
| mhi,interface-name = "rmnet_mhi"; |
| mhi,mru = <0x4000>; |
| mhi,chain-skb; |
| }; |
| |
| mhi_rmnet@1 { |
| reg = <0x1>; |
| mhi,chan = "IP_HW0_RSC"; |
| mhi,mru = <0x8000>; |
| mhi,rsc-parent = <&mhi_netdev_0>; |
| }; |
| |
| mhi_qdss_dev_0 { |
| mhi,chan = "QDSS"; |
| mhi,default-channel; |
| }; |
| |
| mhi_qdss_dev_1 { |
| mhi,chan = "IP_HW_QDSS"; |
| }; |
| |
| mhi_qrtr { |
| mhi,chan = "IPCR"; |
| qcom,net-id = <3>; |
| }; |
| |
| mhi_subsys_adsp_0: mhi_dev@2 { |
| reg = <0x2>; |
| mhi,chan = "ADSP_0"; |
| mhi,max-devices = <4>; |
| }; |
| |
| mhi_subsys_slpi_0: mhi_dev@3 { |
| reg = <0x3>; |
| mhi,chan = "SLPI_0"; |
| mhi,max-devices = <4>; |
| }; |
| }; |
| }; |
| }; |