arm64: dts: qcom: lemans: Update memory-map for IoT platforms

The "automotive" memory map is the special case for the Lemans
configuration described by this dtsi, move it aside and use the IoT
memory map as the baseline.

Introduce "lemans-auto" as a derivative of "lemans" that retains the
old automotive memory map to support legacy use cases.

As part of the IoT memory map updates:
  - Introduce new carveouts for gunyah_md and pil_dtb. Adjust the size and
    base address of the PIL carveout to accommodate these changes.
  - Increase the size of the video/camera PIL carveout without affecting
    existing functionality.
  - Reduce the size of the trusted apps carveout to meet IoT-specific
    requirements.
  - Remove audio_mdf_mem, tz_ffi_mem, and their corresponding SCM references,
    as they are not required for IoT platforms.

Co-developed-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
Co-developed-by: Prakash Gupta <quic_guptap@quicinc.com>
Signed-off-by: Prakash Gupta <quic_guptap@quicinc.com>
Nacked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Wasim Nazir <wasim.nazir@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250803110113.401927-3-wasim.nazir@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
Wasim Nazir 2025-08-03 16:31:06 +05:30 committed by Bjorn Andersson
parent c7724332e0
commit 24dc241bdd
3 changed files with 150 additions and 33 deletions

View File

@ -0,0 +1,104 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2023, Linaro Limited
*/
/dts-v1/;
#include "lemans.dtsi"
/delete-node/ &pil_camera_mem;
/delete-node/ &pil_adsp_mem;
/delete-node/ &q6_adsp_dtb_mem;
/delete-node/ &q6_gdsp0_dtb_mem;
/delete-node/ &pil_gdsp0_mem;
/delete-node/ &pil_gdsp1_mem;
/delete-node/ &q6_gdsp1_dtb_mem;
/delete-node/ &q6_cdsp0_dtb_mem;
/delete-node/ &pil_cdsp0_mem;
/delete-node/ &pil_gpu_mem;
/delete-node/ &pil_cdsp1_mem;
/delete-node/ &q6_cdsp1_dtb_mem;
/delete-node/ &pil_cvp_mem;
/delete-node/ &pil_video_mem;
/delete-node/ &gunyah_md_mem;
/ {
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
tz_ffi_mem: tz-ffi@91c00000 {
compatible = "shared-dma-pool";
reg = <0x0 0x91c00000 0x0 0x1400000>;
no-map;
};
pil_camera_mem: pil-camera@95200000 {
reg = <0x0 0x95200000 0x0 0x500000>;
no-map;
};
pil_adsp_mem: pil-adsp@95c00000 {
reg = <0x0 0x95c00000 0x0 0x1e00000>;
no-map;
};
pil_gdsp0_mem: pil-gdsp0@97b00000 {
reg = <0x0 0x97b00000 0x0 0x1e00000>;
no-map;
};
pil_gdsp1_mem: pil-gdsp1@99900000 {
reg = <0x0 0x99900000 0x0 0x1e00000>;
no-map;
};
pil_cdsp0_mem: pil-cdsp0@9b800000 {
reg = <0x0 0x9b800000 0x0 0x1e00000>;
no-map;
};
pil_gpu_mem: pil-gpu@9d600000 {
reg = <0x0 0x9d600000 0x0 0x2000>;
no-map;
};
pil_cdsp1_mem: pil-cdsp1@9d700000 {
reg = <0x0 0x9d700000 0x0 0x1e00000>;
no-map;
};
pil_cvp_mem: pil-cvp@9f500000 {
reg = <0x0 0x9f500000 0x0 0x700000>;
no-map;
};
pil_video_mem: pil-video@9fc00000 {
reg = <0x0 0x9fc00000 0x0 0x700000>;
no-map;
};
audio_mdf_mem: audio-mdf-region@ae000000 {
reg = <0x0 0xae000000 0x0 0x1000000>;
no-map;
};
hyptz_reserved_mem: hyptz-reserved@beb00000 {
reg = <0x0 0xbeb00000 0x0 0x11500000>;
no-map;
};
trusted_apps_mem: trusted-apps@d1900000 {
reg = <0x0 0xd1900000 0x0 0x3800000>;
no-map;
};
};
firmware {
scm {
memory-region = <&tz_ffi_mem>;
};
};
};

View File

@ -513,7 +513,6 @@ firmware {
scm {
compatible = "qcom,scm-sa8775p", "qcom,scm";
qcom,dload-mode = <&tcsr 0x13000>;
memory-region = <&tz_ffi_mem>;
};
};
@ -772,6 +771,11 @@ sail_ota_mem: sail-ss@90e00000 {
no-map;
};
gunyah_md_mem: gunyah-md@91a80000 {
reg = <0x0 0x91a80000 0x0 0x80000>;
no-map;
};
aoss_backup_mem: aoss-backup@91b00000 {
reg = <0x0 0x91b00000 0x0 0x40000>;
no-map;
@ -797,12 +801,6 @@ cdt_data_backup_mem: cdt-data-backup@91ba0000 {
no-map;
};
tz_ffi_mem: tz-ffi@91c00000 {
compatible = "shared-dma-pool";
reg = <0x0 0x91c00000 0x0 0x1400000>;
no-map;
};
lpass_machine_learning_mem: lpass-machine-learning@93b00000 {
reg = <0x0 0x93b00000 0x0 0xf00000>;
no-map;
@ -814,52 +812,72 @@ adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap@94a00000 {
};
pil_camera_mem: pil-camera@95200000 {
reg = <0x0 0x95200000 0x0 0x500000>;
reg = <0x0 0x95200000 0x0 0x700000>;
no-map;
};
pil_adsp_mem: pil-adsp@95c00000 {
reg = <0x0 0x95c00000 0x0 0x1e00000>;
pil_adsp_mem: pil-adsp@95900000 {
reg = <0x0 0x95900000 0x0 0x1e00000>;
no-map;
};
pil_gdsp0_mem: pil-gdsp0@97b00000 {
reg = <0x0 0x97b00000 0x0 0x1e00000>;
q6_adsp_dtb_mem: q6-adsp-dtb@97700000 {
reg = <0x0 0x97700000 0x0 0x80000>;
no-map;
};
pil_gdsp1_mem: pil-gdsp1@99900000 {
reg = <0x0 0x99900000 0x0 0x1e00000>;
q6_gdsp0_dtb_mem: q6-gdsp0-dtb@97780000 {
reg = <0x0 0x97780000 0x0 0x80000>;
no-map;
};
pil_cdsp0_mem: pil-cdsp0@9b800000 {
reg = <0x0 0x9b800000 0x0 0x1e00000>;
pil_gdsp0_mem: pil-gdsp0@97800000 {
reg = <0x0 0x97800000 0x0 0x1e00000>;
no-map;
};
pil_gpu_mem: pil-gpu@9d600000 {
reg = <0x0 0x9d600000 0x0 0x2000>;
pil_gdsp1_mem: pil-gdsp1@99600000 {
reg = <0x0 0x99600000 0x0 0x1e00000>;
no-map;
};
pil_cdsp1_mem: pil-cdsp1@9d700000 {
reg = <0x0 0x9d700000 0x0 0x1e00000>;
q6_gdsp1_dtb_mem: q6-gdsp1-dtb@9b400000 {
reg = <0x0 0x9b400000 0x0 0x80000>;
no-map;
};
pil_cvp_mem: pil-cvp@9f500000 {
reg = <0x0 0x9f500000 0x0 0x700000>;
q6_cdsp0_dtb_mem: q6-cdsp0-dtb@9b480000 {
reg = <0x0 0x9b480000 0x0 0x80000>;
no-map;
};
pil_video_mem: pil-video@9fc00000 {
reg = <0x0 0x9fc00000 0x0 0x700000>;
pil_cdsp0_mem: pil-cdsp0@9b500000 {
reg = <0x0 0x9b500000 0x0 0x1e00000>;
no-map;
};
audio_mdf_mem: audio-mdf-region@ae000000 {
reg = <0x0 0xae000000 0x0 0x1000000>;
pil_gpu_mem: pil-gpu@9d300000 {
reg = <0x0 0x9d300000 0x0 0x2000>;
no-map;
};
q6_cdsp1_dtb_mem: q6-cdsp1-dtb@9d380000 {
reg = <0x0 0x9d380000 0x0 0x80000>;
no-map;
};
pil_cdsp1_mem: pil-cdsp1@9d400000 {
reg = <0x0 0x9d400000 0x0 0x1e00000>;
no-map;
};
pil_cvp_mem: pil-cvp@9f200000 {
reg = <0x0 0x9f200000 0x0 0x700000>;
no-map;
};
pil_video_mem: pil-video@9f900000 {
reg = <0x0 0x9f900000 0x0 0x1000000>;
no-map;
};
@ -868,11 +886,6 @@ firmware_mem: firmware-region@b0000000 {
no-map;
};
hyptz_reserved_mem: hyptz-reserved@beb00000 {
reg = <0x0 0xbeb00000 0x0 0x11500000>;
no-map;
};
scmi_mem: scmi-region@d0000000 {
reg = <0x0 0xd0000000 0x0 0x40000>;
no-map;
@ -914,7 +927,7 @@ deepsleep_backup_mem: deepsleep-backup@d1800000 {
};
trusted_apps_mem: trusted-apps@d1900000 {
reg = <0x0 0xd1900000 0x0 0x3800000>;
reg = <0x0 0xd1900000 0x0 0x1c00000>;
no-map;
};

View File

@ -8,7 +8,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "lemans.dtsi"
#include "lemans-auto.dtsi"
#include "sa8775p-pmics.dtsi"
/ {