* Memory Share Driver (MEMSHARE) The Memshare driver implements a Kernel QMI service on the LA-APSS, which is responsible for providing contiguous physical memory to MPSS for use cases when the modem requires additional memory (e.g. GPS). Required properties for Memshare -Root Node- - compatible: Must be "qcom,memshare" Required properties for child nodes: - compatible: Must be "qcom,memshare-peripheral" - qcom,peripheral-size: Indicates the size (in bytes) required for that child. - qcom,client-id: Indicates the client id of the child node. - label: Indicates the peripheral information for the node. Should be one of the following: - modem /* Represent Modem Peripheral */ - adsp /* Represent ADSP Peripheral */ - wcnss /* Represent WCNSS Peripheral */ Optional properties for child nodes: - qcom,allocate-boot-time: Indicates whether clients needs boot time memory allocation. - qcom,allocate-on-request: Indicates memory allocation happens only upon client request Note: qcom,allocate-boot-time and qcom,allocate-on-request are mutually exclusive rite now. - qcom,guard-band: Indicates addition of a guard band memory allocation in addition to the client's memory region. Example 1: qcom,memshare { compatible = "qcom,memshare"; qcom,client_1 { compatible = "qcom,memshare-peripheral"; qcom,peripheral-size = <0x200000>; qcom,client-id = <0>; qcom,allocate-boot-time; label = "modem"; }; }; Example 2: qcom,memshare { compatible = "qcom,memshare"; qcom,client_3 { compatible = "qcom,memshare-peripheral"; qcom,peripheral-size = <0x500000>; qcom,client-id = <1>; qcom,allocate-on-request; qcom,guard-band; label = "modem"; }; };