From: Konrad Dybcio <konrad.dybcio@linaro.org>
To: Petr Vorel <pevik@seznam.cz>, linux-arm-msm@vger.kernel.org
Cc: Petr Vorel <petr.vorel@gmail.com>, Andy Gross <agross@kernel.org>,
Bjorn Andersson <bjorn.andersson@linaro.org>,
Dominik Kobinski <dominikkobinski314@gmail.com>,
devicetree@vger.kernel.org
Subject: Re: [PATCH 3/3] [RFC] arm64: dts: qcom: msm8992-bullhead: Fix smem_region, mpss_mem
Date: Tue, 27 Dec 2022 12:29:09 +0100 [thread overview]
Message-ID: <75d3e997-cd89-78c7-703a-f8f020065e8f@linaro.org> (raw)
In-Reply-To: <20221226185440.440968-4-pevik@seznam.cz>
On 26.12.2022 19:54, Petr Vorel wrote:
> From: Petr Vorel <petr.vorel@gmail.com>
>
> smem_region has a different region on downstream than on msm8994, it's
> defined as 150 MiB [1]:
>
> [ 0.000000] Linux version 3.10.73-g65a266a (buildkite-agent@lineageos-buildkite) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #1 SMP PREEMPT Mon Feb 24 10:43:08 UTC 2020
> [ 0.000000] CPU: AArch64 Processor [410fd033] revision 3
> [ 0.000000] Machine: LGE MSM8992 BULLHEAD rev-1.01
> [ 0.000000] cma: Found secure_region@0, memory base 0x0000000000000000, size 150 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found qsecom_region@0, memory base 0x0000000000000000, size 4 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found audio_region@0, memory base 0x0000000000000000, size 4 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found removed_regions@0, memory base 0x0000000000000000, size 34 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found cont_splash_mem@0, memory base 0x0000000000000000, size 12 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found peripheral_region@0, memory base 0x0000000000000000, size 28 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found modem_region@0, memory base 0x0000000000000000, size 100 MiB, limit 0x0000000000000000
> [ 0.000000] cma: Found ramoops_region@1ff00000, memory base 0x0000000000000000, size 0 MiB, limit 0x0000000000000000
> [ 0.000000] cma: CMA: reserved 152 MiB at 0x0000000000000000 for secure_mem
> [ 0.000000] cma: CMA: reserved 4 MiB at 0x0000000000000000 for qseecom_mem
> [ 0.000000] cma: CMA: reserved 4 MiB at 0x0000000000000000 for audio_mem
> [ 0.000000] cma: CMA: reserved 34 MiB at 0x0000000000000000 for memory_hole
> [ 0.000000] cma: CMA: reserved 12 MiB at 0x0000000000000000 for cont_splash_mem
> [ 0.000000] cma: CMA: reserved 28 MiB at 0x0000000000000000 for peripheral_mem
> [ 0.000000] cma: CMA: reserved 100 MiB at 0x0000000000000000 for modem_mem
> [ 0.000000] cma: CMA: reserved 0 MiB at 0x0000000000000000 for ramoops_mem
> [ 0.000000] cma: CMA: reserved 16 MiB at 0x0000000000000000 for default region
> [ 0.000000] PERCPU: Embedded 15 pages/cpu @0000000000000000 s38912 r0 d22528 u61440
>
> But that conflicts with cont_splash_mem and cont_splash_mem:
>
> [ 0.000000] Linux version 6.1.1 (pevik@dell5510) (aarch64-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for De2
> [ 0.000000] Machine model: LG Nexus 5X rev 1.01
> ...
> [ 0.000000] OF: fdt: Reserved memory: failed to reserve memory for node 'smem_region@0': base 0x0000000000000000, size 150 MiB
> [ 0.000000] OF: reserved mem: OVERLAP DETECTED!
> [ 0.000000] smem_region@0 (0x0000000000000000--0x0000000009600000) overlaps with memory@3400000 (0x0000000003400000--0x000000000400000)
> [ 0.000000] OF: reserved mem: OVERLAP DETECTED!
> [ 0.000000] reserved@5000000 (0x0000000005000000--0x0000000007200000) overlaps with memory@7000000 (0x0000000007000000--0x000000000ca0)
>
> 1) Obviously there are more memory to be fixed, e.g. modem_mem, but
> fundamental is to find out whether such a big mapping should be really
> used. If yes, what is the trick downstream uses, that it allows
> overlapped memory? Or memory is not really overlapping and I cannot
> trust the reported value? What base and size should I define then?
>
> Angler downstream defines crazy values for secure_mem as well [2]:
> [ 0.000000] cma: Found secure_region@0, memory base 0x0000000000000000, size 300 MiB, limit 0xffffffffffffffff
>
> But then in mainline is defined just 2 MiB at 106 MiB:
>
> smem_mem: smem_region@6a00000 {
> reg = <0 0x06a00000 0 0x200000>;
> no-map;
> };
>
> => should I use just 2 MiB region? But at what base?
>
> 2) Is mpss_mem equivalent of downstream modem_mem [3]?
>
> Kind regards,
> Petr
>
> [1] https://android.googlesource.com/kernel/msm.git/+/refs/tags/android-7.0.0_r0.17/arch/arm/boot/dts/qcom/msm8992.dtsi#278
> [2] https://android.googlesource.com/kernel/msm.git/+/refs/tags/android-7.0.0_r0.17/arch/arm/boot/dts/qcom/msm8994.dtsi#272
> [3] https://android.googlesource.com/kernel/msm.git/+/android-7.0.0_r0.17/arch/arm64/boot/dts/lge/msm8992-bullhead.dtsi#148
>
> Not-Yet-Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
> Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
> ---
smem is not device-specific. secure_mem is a bunch of PIL+maybe
TZAPP memory regions, it's really a mess downstream..
Look here:
https://android.googlesource.com/kernel/msm/+/43154bfee910f2efd0ff0d60e6b1c25192367ab9/arch/arm/boot/dts/qcom/msm8992.dtsi#2173
Konrad
> arch/arm64/boot/dts/qcom/msm8992-lg-bullhead.dtsi | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/msm8992-lg-bullhead.dtsi b/arch/arm64/boot/dts/qcom/msm8992-lg-bullhead.dtsi
> index 4bceb362a5c0..fb4879b4acbe 100644
> --- a/arch/arm64/boot/dts/qcom/msm8992-lg-bullhead.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8992-lg-bullhead.dtsi
> @@ -12,8 +12,9 @@
> #include "pm8994.dtsi"
> #include "pmi8994.dtsi"
>
> -/* cont_splash_mem has different memory mapping */
> +/* different memory mapping */
> /delete-node/ &cont_splash_mem;
> +/delete-node/ &smem_mem;
>
> /* disabled on downstream, conflicts with cont_splash_mem */
> /delete-node/ &dfps_data_mem;
> @@ -60,6 +61,11 @@ removed_region: reserved@5000000 {
> reg = <0 0x05000000 0 0x2200000>;
> no-map;
> };
> +
> + smem_mem: smem_region@0 {
> + reg = <0 0 0 0x9600000>;
> + no-map;
> + };
> };
> };
>
next prev parent reply other threads:[~2022-12-27 11:29 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-26 18:54 [PATCH 0/3] msm8992-bullhead: 2 DTS fixes + 1 RFC Petr Vorel
2022-12-26 18:54 ` [PATCH 1/3] arm64: dts: qcom: msm8992-bullhead: Fix cont_splash_mem size Petr Vorel
2022-12-27 11:25 ` Konrad Dybcio
2022-12-26 18:54 ` [PATCH 2/3] arm64: dts: qcom: msm8992-bullhead: Disable dfps_data_mem Petr Vorel
2022-12-27 11:25 ` Konrad Dybcio
2022-12-26 18:54 ` [PATCH 3/3] [RFC] arm64: dts: qcom: msm8992-bullhead: Fix smem_region, mpss_mem Petr Vorel
2022-12-27 11:29 ` Konrad Dybcio [this message]
2023-01-18 23:55 ` (subset) [PATCH 0/3] msm8992-bullhead: 2 DTS fixes + 1 RFC Bjorn Andersson
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=75d3e997-cd89-78c7-703a-f8f020065e8f@linaro.org \
--to=konrad.dybcio@linaro.org \
--cc=agross@kernel.org \
--cc=bjorn.andersson@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=dominikkobinski314@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=petr.vorel@gmail.com \
--cc=pevik@seznam.cz \
/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;
as well as URLs for NNTP newsgroup(s).