From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>,
Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>,
Alexey Klimov <alexey.klimov@linaro.org>,
andersson@kernel.org, konradybcio@kernel.org,
linux-arm-msm@vger.kernel.org
Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
srini@kernel.org, quic_ekangupt@quicinc.com,
krzysztof.kozlowski@linaro.org,
"Bharath Kumar (QUIC)" <quic_bkumar@quicinc.com>,
"Chenna Kesava Raju (QUIC)" <quic_chennak@quicinc.com>
Subject: Re: [PATCH] arm64: dts: qcom: sm8750: Add adsp fastrpc support
Date: Tue, 13 May 2025 15:09:52 +0200 [thread overview]
Message-ID: <3f346bdc-81a4-4620-9a31-25c41d591c58@oss.qualcomm.com> (raw)
In-Reply-To: <bb68da04-ef52-4172-8b6e-f4027bcc2786@oss.qualcomm.com>
On 5/9/25 5:42 AM, Ekansh Gupta wrote:
>
>
> On 5/9/2025 4:27 AM, Konrad Dybcio wrote:
>> On 5/9/25 12:20 AM, Alexey Klimov wrote:
>>> On Fri May 2, 2025 at 10:38 AM BST, Konrad Dybcio wrote:
>>>> On 5/2/25 3:15 AM, Alexey Klimov wrote:
>>>>> While at this, also add required memory region for fastrpc.
>>>>>
>>>>> Tested on sm8750-mtp device with adsprpdcd.
>>>>>
>>>>> Cc: Ekansh Gupta <quic_ekangupt@quicinc.com>
>>>>> Cc: Srinivas Kandagatla <srini@kernel.org>
>>>>> Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>>>> Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
>>>>> ---
>>>>> arch/arm64/boot/dts/qcom/sm8750.dtsi | 70 ++++++++++++++++++++++++++++
>>>>> 1 file changed, 70 insertions(+)
>>>>>
>>>>> diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
>>>>> index 149d2ed17641..48ee66125a89 100644
>>>>> --- a/arch/arm64/boot/dts/qcom/sm8750.dtsi
>>>>> +++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
>>>>> @@ -7,6 +7,7 @@
>>>>> #include <dt-bindings/clock/qcom,sm8750-gcc.h>
>>>>> #include <dt-bindings/clock/qcom,sm8750-tcsr.h>
>>>>> #include <dt-bindings/dma/qcom-gpi.h>
>>>>> +#include <dt-bindings/firmware/qcom,scm.h>
>>>>> #include <dt-bindings/interconnect/qcom,icc.h>
>>>>> #include <dt-bindings/interconnect/qcom,sm8750-rpmh.h>
>>>>> #include <dt-bindings/interrupt-controller/arm-gic.h>
>>>>> @@ -523,6 +524,14 @@ llcc_lpi_mem: llcc-lpi@ff800000 {
>>>>> reg = <0x0 0xff800000 0x0 0x800000>;
>>>>> no-map;
>>>>> };
>>>>> +
>>>>> + adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap {
>>>>> + compatible = "shared-dma-pool";
>>>>> + alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
>>>>> + alignment = <0x0 0x400000>;
>>>>> + size = <0x0 0xc00000>;
>>>>> + reusable;
>>>>> + };
>>>>> };
>>>>>
>>>>> smp2p-adsp {
>>>>> @@ -2237,6 +2246,67 @@ q6prmcc: clock-controller {
>>>>> };
>>>>> };
>>>>> };
>>>>> +
>>>>> + fastrpc {
>>>>> + compatible = "qcom,fastrpc";
>>>>> + qcom,glink-channels = "fastrpcglink-apps-dsp";
>>>>> + label = "adsp";
>>>>> + memory-region = <&adsp_rpc_remote_heap_mem>;
>>>> IIUC the driver only considers this on the sensor DSP
>>> Memory region is required for audio protection domain + adsprpdcd as far as I know.
>> next-20250508
>>
>> rmem_node = of_parse_phandle(rdev->of_node, "memory-region", 0);
>> if (domain_id == SDSP_DOMAIN_ID && rmem_node) {
>> // ...
>> }
>>
>> maybe some driver changes are still pending?
>
> Would like to add some more details here:
>
> Memory region is required for audio PD for dynamic loading and remote heap memory
> requirements. Some initial memory(~2MB) is allocated initially when audio daemon
> is getting attached[1] and this memory is added to audio PD memory pool.
>
> Additionally, if there is some additional memory requirement from audio PD, the
> PD can request for more memory using remote heap request[2]
>
> The support for SDSP was added sometime back[3] to support SDSP usecases on some old
> platform as there were no dedicated context banks for SDSP there. On recent platforms,
> context banks are available wherever SDSP is supported.
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/misc/fastrpc.c#n1273
> [2] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/misc/fastrpc.c#n1884
> [3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/misc/fastrpc.c?id=c3c0363bc72d4d0907a6d446d7424b3f022ce82a
Ok, this was mildly confusing given there's specific "normal" region
handling, but the DMA allocator takes care of this one
Konrad
next prev parent reply other threads:[~2025-05-13 13:09 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-02 1:15 Alexey Klimov
2025-05-02 2:16 ` Dmitry Baryshkov
2025-05-02 9:38 ` Konrad Dybcio
2025-05-08 22:20 ` Alexey Klimov
2025-05-08 22:57 ` Konrad Dybcio
2025-05-09 3:42 ` Ekansh Gupta
2025-05-09 19:49 ` Dmitry Baryshkov
2025-05-12 3:55 ` Ekansh Gupta
2025-05-12 15:55 ` Dmitry Baryshkov
2025-05-13 5:58 ` Ekansh Gupta
2025-05-13 13:09 ` Konrad Dybcio [this message]
2025-06-13 14:48 ` Alexey Klimov
2025-06-14 19:51 ` Konrad Dybcio
2025-05-02 10:51 ` Srinivas Kandagatla
2025-05-09 13:16 ` Alexey Klimov
2025-05-09 13:31 ` Srinivas Kandagatla
2025-05-09 18:02 ` Ekansh Gupta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3f346bdc-81a4-4620-9a31-25c41d591c58@oss.qualcomm.com \
--to=konrad.dybcio@oss.qualcomm.com \
--cc=alexey.klimov@linaro.org \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=ekansh.gupta@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=quic_bkumar@quicinc.com \
--cc=quic_chennak@quicinc.com \
--cc=quic_ekangupt@quicinc.com \
--cc=robh@kernel.org \
--cc=srini@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®