From: Bjorn Andersson <andersson@kernel.org>
To: Caleb Connolly <caleb.connolly@linaro.org>
Cc: Andy Gross <agross@kernel.org>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Rob Herring <robh+dt@kernel.org>,
devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH v2 1/2] arm64: dts: qcom: sdm845: add framebuffer reserved memory
Date: Tue, 4 Apr 2023 12:33:02 -0700 [thread overview]
Message-ID: <20230404193302.ukwdf2cuqr33rbus@ripper> (raw)
In-Reply-To: <20230315111947.3807083-1-caleb.connolly@linaro.org>
On Wed, Mar 15, 2023 at 11:19:45AM +0000, Caleb Connolly wrote:
> The bootloader configures a framebuffer in memory to display splash
> screens or other information. This configuration is overriden when the
> display pipeline probes, but never unmapped from the SMMU.
Are you saying that as the SMMU driver clears the register content, this
mapping remains?
> To prevent
> issues from the kernel trying to allocate in this region and to allow
> using the framebuffer for debugging, many devices already reserve this
> region.
>
What kind of issues do you see?
Regards,
Bjorn
> All devices follow MTP and use the same address for this region, Cheza
> is a likely exception though I'm not able to validate that.
>
> Some devices only reserve the size needed to store the actual
> framebuffer, this is incorrect as on all devices I've checked the full
> 0x2400000 bytes are mapped.
>
> This patch moves the framebuffer region to sdm845.dtsi and removes it
> from each individual device. This ensures that the correct size is
> always reserved and prevents having the add the region for each
> individual device.
>
> This patch specifically ensures that this region is now reserved on the
> OnePlus 6, where it wasn't before.
>
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> ---
>
> Changes since v1:
> * Offer more context and justification for this change
> * Make sure Cheza doesn't inherit the node.
> ---
> arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi | 6 ------
> arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts | 5 -----
> arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts | 5 -----
> arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi | 6 ------
> .../arm64/boot/dts/qcom/sdm845-xiaomi-beryllium-common.dtsi | 6 ------
> arch/arm64/boot/dts/qcom/sdm845.dtsi | 5 +++++
> arch/arm64/boot/dts/qcom/sdm850.dtsi | 2 ++
> 7 files changed, 7 insertions(+), 28 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
> index f942c5afea9b..6a1c674a015b 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
> @@ -93,12 +93,6 @@ spss_mem: memory@99000000 {
> no-map;
> };
>
> - /* Framebuffer region */
> - memory@9d400000 {
> - reg = <0x0 0x9d400000 0x0 0x2400000>;
> - no-map;
> - };
> -
> /* rmtfs lower guard */
> memory@f0800000 {
> reg = <0 0xf0800000 0 0x1000>;
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts b/arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts
> index d37a433130b9..7c2457948a32 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-samsung-starqltechn.dts
> @@ -55,11 +55,6 @@ vreg_s4a_1p8: pm8998-smps4 {
> };
>
> reserved-memory {
> - memory@9d400000 {
> - reg = <0x0 0x9d400000 0x0 0x02400000>;
> - no-map;
> - };
> -
> memory@a1300000 {
> compatible = "ramoops";
> reg = <0x0 0xa1300000 0x0 0x100000>;
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts b/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
> index b54e304abf71..4f6b1053c15b 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
> @@ -60,11 +60,6 @@ key-vol-up {
> };
>
> reserved-memory {
> - framebuffer_region@9d400000 {
> - reg = <0x0 0x9d400000 0x0 (1080 * 2160 * 4)>;
> - no-map;
> - };
> -
> ramoops: ramoops@b0000000 {
> compatible = "ramoops";
> reg = <0 0xb0000000 0 0x00400000>;
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> index 4984c7496c31..7e273cc0158d 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> @@ -79,12 +79,6 @@ vreg_s4a_1p8: pm8998-smps4 {
> };
>
> reserved-memory {
> - /* SONY was cool and didn't diverge from MTP this time, yay! */
> - cont_splash_mem: memory@9d400000 {
> - reg = <0x0 0x9d400000 0x0 0x2400000>;
> - no-map;
> - };
> -
> ramoops@ffc00000 {
> compatible = "ramoops";
> reg = <0x0 0xffc00000 0x0 0x100000>;
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium-common.dtsi
> index e0fda4d754fe..191c2664f721 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium-common.dtsi
> @@ -98,12 +98,6 @@ spss_mem: memory@97f00000 {
> no-map;
> };
>
> - /* Cont splash region set up by the bootloader */
> - cont_splash_mem: framebuffer@9d400000 {
> - reg = <0 0x9d400000 0 0x2400000>;
> - no-map;
> - };
> -
> rmtfs_mem: memory@f6301000 {
> compatible = "qcom,rmtfs-mem";
> reg = <0 0xf6301000 0 0x200000>;
> diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi
> index 479859bd8ab3..ecec2ee46683 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi
> @@ -865,6 +865,11 @@ spss_mem: spss@97b00000 {
> no-map;
> };
>
> + cont_splash_mem: framebuffer@9d400000 {
> + reg = <0 0x9d400000 0 0x2400000>;
> + no-map;
> + };
> +
> mdata_mem: mpss-metadata {
> alloc-ranges = <0 0xa0000000 0 0x20000000>;
> size = <0 0x4000>;
> diff --git a/arch/arm64/boot/dts/qcom/sdm850.dtsi b/arch/arm64/boot/dts/qcom/sdm850.dtsi
> index da9f6fbe32f6..b787575c77a5 100644
> --- a/arch/arm64/boot/dts/qcom/sdm850.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm850.dtsi
> @@ -7,6 +7,8 @@
>
> #include "sdm845.dtsi"
>
> +/delete-node/ &cont_splash_mem;
> +
> &cpu4_opp_table {
> cpu4_opp33: opp-2841600000 {
> opp-hz = /bits/ 64 <2841600000>;
> --
> 2.39.2
>
prev parent reply other threads:[~2023-04-04 19:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-15 11:19 [PATCH v2 1/2] arm64: dts: qcom: sdm845: add framebuffer reserved memory Caleb Connolly
2023-03-15 11:19 ` [PATCH v2 2/2] arm64: dts: qcom: sdm850: commonise framebuffer memory Caleb Connolly
2023-04-04 19:33 ` Bjorn Andersson [this message]
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=20230404193302.ukwdf2cuqr33rbus@ripper \
--to=andersson@kernel.org \
--cc=agross@kernel.org \
--cc=caleb.connolly@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=robh+dt@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