TI Keystone DSP Memory Mapping Device ===================================== Binding status: Unstable - ABI compatibility may be broken in the future The Keystone DSP Memory Mapping Device is a device node used to represent the memory regions that can be mapped into userspace for providing direct user-mode access to regions for the purposes of shared memory communication with the DSP remote processor devices on the SoC. It can also be used for supporting user-space based loading of the DSP remoteproc devices. Required properties: -------------------- - compatible : Should be "ti,keystone-dsp-mem" - reg : An array of memory regions (DDR), each region represented by a tuple of the region's start address and the size of the region. SRAM usage (Optional): ---------------------- The on-chip Multicore Shared Memory (MSM) RAM can also be exposed to userspace by defining specific child nodes under the corresponding parent SRAM node. The generic SRAM binding is as per the binding document Documentation/devicetree/bindings/misc/sram.txt. Following properties should be used in each corresponding child node for the userspace mapping usecase: - compatible : Should be "ti,keystone-dsp-msm-ram" - reg : Should contain a pair of values for the address and size of the region, following the parent-child ranges convention. Example: -------- /* K2HK EVM */ soc { mpm_mem: dspmem { compatible = "ti,keystone-dsp-mem"; reg = <0xa0000000 0x20000000>; /* DDR Memory */ }; msm_ram: msmram@0c000000 { compatible = "mmio-sram"; reg = <0x0c000000 0x600000>; ranges = <0x0 0x0c000000 0x600000>; #address-cells = <1>; #size-cells = <1>; sram-mpm@0 { compatible = "ti,keystone-dsp-msm-ram"; reg = <0x0 0x80000>; }; }; };