[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a139f921-0f82-4d4b-6407-e0ad6807bb55@linaro.org>
Date: Tue, 14 Feb 2023 08:28:24 -0600
From: Alex Elder <elder@...aro.org>
To: Mukesh Ojha <quic_mojha@...cinc.com>,
Bjorn Andersson <andersson@...nel.org>
Cc: Konrad Dybcio <konrad.dybcio@...aro.org>, agross@...nel.org,
robh+dt@...nel.org, krzysztof.kozlowski+dt@...aro.org,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] arm64: dts: qcom: sm8450: Add IMEM and PIL info
region
On 2/14/23 6:34 AM, Mukesh Ojha wrote:
> +@...x,
>
> Please comment.
>
> -Mukesh
>
> On 2/7/2023 2:34 AM, Bjorn Andersson wrote:
>> On Mon, Feb 06, 2023 at 08:06:13PM +0530, Mukesh Ojha wrote:
>>>
>>>
>>> On 2/4/2023 3:07 AM, Konrad Dybcio wrote:
>>>>
>>>>
>>>> On 3.02.2023 18:04, Mukesh Ojha wrote:
>>>>> Add a simple-mfd representing IMEM on SM8450 and define the PIL
>>>>> relocation info region, so that post mortem tools will be able
>>>>> to locate the loaded remoteprocs.
>>>>>
>>>>> Signed-off-by: Mukesh Ojha <quic_mojha@...cinc.com>
>>>>> ---
>>>> From XBL:
>>>>
>>>> 0x14680000, 0x0002A000, "IMEM Base"
>>>>
>>>> Is there anything in that wider address range that would interest
>>>> us? I recall Alex once dug into that when diving into IPA, but
>>>> I can not recall the conclusion..
So you're saying a boot loader defines "IMEM Base" as
a range of memory, size 0x2a000.
>>> Spec-wise, yes IPA do own these 0x146A8000 - 0x146AA000 .
>>> But, not sure what they use it for.
And a subset of that range (at offset 0x28000, size 0x2000) is
set aside for use by IPA. IPA *does* use this memory area as
"fast" memory to hold certain frequently-accessed tables.
Details of that are under the modem's control, and I don't
have knowledge of that.
The IPA driver currently maps it's portion of this memory,
but does *not* reflect that use in DT. (This is something
that will be corrected at some point, possibly soon.)
>> The DT should not reflect the organization structure. Let's see if Alex
>> have any input on this.
As I understand it there's an "imem" node in DT defined, but
it just defines the range of memory, and is something referred
to by other drivers (or other nodes in a DTS file). This seems
reasonable, and it kind of matches the view I've seen in
documents. IPA does *not* follow that pattern, and should.
I don't really have any strong input either way. I can help
define the "problem" but I don't claim to know the correct
way to represent this.
It's a contiguous block of special memory. By convention
(design) its range divided up, with portions intended to be
used for different purposes, by different hardware. IPA is
one of the users.
-Alex
>>
>> Thanks,
>> Bjorn
>>
>>> -Mukesh
>>>>
>>>> Konrad
>>>>> arch/arm64/boot/dts/qcom/sm8450.dtsi | 15 +++++++++++++++
>>>>> 1 file changed, 15 insertions(+)
>>>>>
>>>>> diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi
>>>>> b/arch/arm64/boot/dts/qcom/sm8450.dtsi
>>>>> index 5704750..474ea1b 100644
>>>>> --- a/arch/arm64/boot/dts/qcom/sm8450.dtsi
>>>>> +++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi
>>>>> @@ -3536,6 +3536,21 @@
>>>>> };
>>>>> };
>>>>> + sram@...aa000 {
>>>>> + compatible = "qcom,sm8450-imem", "syscon", "simple-mfd";
>>>>> + reg = <0 0x146aa000 0 0x1000>;
>>>>> +
>>>>> + #address-cells = <1>;
>>>>> + #size-cells = <1>;
>>>>> +
>>>>> + ranges = <0 0 0x146aa000 0x1000>;
>>>>> +
>>>>> + pil-reloc@94c {
>>>>> + compatible = "qcom,pil-reloc-info";
>>>>> + reg = <0x94c 0xc8>;
>>>>> + };
>>>>> + };
>>>>> +
>>>>> apps_rsc: rsc@...00000 {
>>>>> label = "apps_rsc";
>>>>> compatible = "qcom,rpmh-rsc";
Powered by blists - more mailing lists