diff mbox series

[v2,1/3] arm64: dts: qcom: sc7280: Add memory region for audiopd

Message ID 20250516110029.1637270-2-quic_lxu5@quicinc.com
State New
Headers show
Series [v2,1/3] arm64: dts: qcom: sc7280: Add memory region for audiopd | expand

Commit Message

Ling Xu May 16, 2025, 11 a.m. UTC
Add reserved memory region and VMIDs for audio PD dynamic loading and
remote heap memory requirements.

Signed-off-by: Ling Xu <quic_lxu5@quicinc.com>
---
 arch/arm64/boot/dts/qcom/sc7280.dtsi | 11 +++++++++++
 1 file changed, 11 insertions(+)

Comments

Ling Xu May 20, 2025, 6:41 a.m. UTC | #1
在 5/17/2025 5:47 AM, Dmitry Baryshkov 写道:
> On Fri, May 16, 2025 at 04:30:27PM +0530, Ling Xu wrote:
>> Add reserved memory region and VMIDs for audio PD dynamic loading and
>> remote heap memory requirements.
> 
> Why? Was it not working without this heap?

yes, it will not working without this heap.
Memory region is required for audio PD for dynamic loading and remote heap memory
requirements. For more info, please refer below patches, it has provided a more
detailed explanation.
https://lore.kernel.org/all/bb68da04-ef52-4172-8b6e-f4027bcc2786@oss.qualcomm.com/
https://lore.kernel.org/all/effea02f-6ffb-42e9-87df-081caafab728@oss.qualcomm.com/

>>
>> Signed-off-by: Ling Xu <quic_lxu5@quicinc.com>
>> ---
>>  arch/arm64/boot/dts/qcom/sc7280.dtsi | 11 +++++++++++
>>  1 file changed, 11 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
>> index 8e86d75cc6b4..d9af79ff8c4e 100644
>> --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
>> @@ -188,6 +188,14 @@ rmtfs_mem: rmtfs@9c900000 {
>>  			qcom,client-id = <1>;
>>  			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
>>  		};
>> +
>> +		adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap {
>> +			compatible = "shared-dma-pool";
>> +			size = <0x0 0x800000>;
>> +			alignment = <0x0 0x100000>;
>> +			alloc-ranges = <0x0 0x80000000 0x0 0x40000000>;
>> +			no-map;
>> +		};
>>  	};
>>  
>>  	cpus {
>> @@ -3863,6 +3871,9 @@ fastrpc {
>>  					qcom,glink-channels = "fastrpcglink-apps-dsp";
>>  					label = "adsp";
>>  					qcom,non-secure-domain;
>> +					memory-region = <&adsp_rpc_remote_heap_mem>;
>> +					qcom,vmids = <QCOM_SCM_VMID_LPASS>,
>> +							  <QCOM_SCM_VMID_ADSP_HEAP>;

Thanks. Will modify this.

> Please align '<' vertically.
> 
>>  					#address-cells = <1>;
>>  					#size-cells = <0>;
>>  
>> -- 
>> 2.34.1
>>
>
Dmitry Baryshkov May 20, 2025, 1:53 p.m. UTC | #2
On Tue, May 20, 2025 at 02:41:22PM +0800, Ling Xu wrote:
> 在 5/17/2025 5:47 AM, Dmitry Baryshkov 写道:
> > On Fri, May 16, 2025 at 04:30:27PM +0530, Ling Xu wrote:
> >> Add reserved memory region and VMIDs for audio PD dynamic loading and
> >> remote heap memory requirements.
> > 
> > Why? Was it not working without this heap?
> 
> yes, it will not working without this heap.
> Memory region is required for audio PD for dynamic loading and remote heap memory
> requirements. For more info, please refer below patches, it has provided a more
> detailed explanation.
> https://lore.kernel.org/all/bb68da04-ef52-4172-8b6e-f4027bcc2786@oss.qualcomm.com/
> https://lore.kernel.org/all/effea02f-6ffb-42e9-87df-081caafab728@oss.qualcomm.com/

This triggers a bunch of questions:

- What is audio PD?

- Is it a required component?

- For which platforms ?

- What happens if there is a memory region, but it is not used by the
  driver (SM8650, SM8550).

> 
> >>
> >> Signed-off-by: Ling Xu <quic_lxu5@quicinc.com>
> >> ---
> >>  arch/arm64/boot/dts/qcom/sc7280.dtsi | 11 +++++++++++
> >>  1 file changed, 11 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >> index 8e86d75cc6b4..d9af79ff8c4e 100644
> >> --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >> +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >> @@ -188,6 +188,14 @@ rmtfs_mem: rmtfs@9c900000 {
> >>  			qcom,client-id = <1>;
> >>  			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
> >>  		};
> >> +
> >> +		adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap {
> >> +			compatible = "shared-dma-pool";
> >> +			size = <0x0 0x800000>;
> >> +			alignment = <0x0 0x100000>;
> >> +			alloc-ranges = <0x0 0x80000000 0x0 0x40000000>;
> >> +			no-map;
> >> +		};
> >>  	};
> >>  
> >>  	cpus {
> >> @@ -3863,6 +3871,9 @@ fastrpc {
> >>  					qcom,glink-channels = "fastrpcglink-apps-dsp";
> >>  					label = "adsp";
> >>  					qcom,non-secure-domain;
> >> +					memory-region = <&adsp_rpc_remote_heap_mem>;
> >> +					qcom,vmids = <QCOM_SCM_VMID_LPASS>,
> >> +							  <QCOM_SCM_VMID_ADSP_HEAP>;
> 
> Thanks. Will modify this.
> 
> > Please align '<' vertically.
> > 
> >>  					#address-cells = <1>;
> >>  					#size-cells = <0>;
> >>  
> >> -- 
> >> 2.34.1
> >>
> > 
> 
> -- 
> Thx and BRs,
> Ling Xu
>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
index 8e86d75cc6b4..d9af79ff8c4e 100644
--- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
@@ -188,6 +188,14 @@  rmtfs_mem: rmtfs@9c900000 {
 			qcom,client-id = <1>;
 			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
 		};
+
+		adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap {
+			compatible = "shared-dma-pool";
+			size = <0x0 0x800000>;
+			alignment = <0x0 0x100000>;
+			alloc-ranges = <0x0 0x80000000 0x0 0x40000000>;
+			no-map;
+		};
 	};
 
 	cpus {
@@ -3863,6 +3871,9 @@  fastrpc {
 					qcom,glink-channels = "fastrpcglink-apps-dsp";
 					label = "adsp";
 					qcom,non-secure-domain;
+					memory-region = <&adsp_rpc_remote_heap_mem>;
+					qcom,vmids = <QCOM_SCM_VMID_LPASS>,
+							  <QCOM_SCM_VMID_ADSP_HEAP>;
 					#address-cells = <1>;
 					#size-cells = <0>;