The modem firmware size is typically highly device-specific. The current size of the mpss_mem region in msm8916.dtsi (0x2b00000) only works for some APQ8016 devices without full-featured modem, such as the DragonBoard 410c. The full modem firmware is typically about twice as large (~45 MiB -> ~90 MiB) but also varies by a few MiB from device to device. Since these devices are quite memory-constrained nowadays it's important to minimize the unnecessary memory reservations. Make it clear that each board needs to specify the necessary mpss_mem size by replacing the DB410c-specific size in msm8916.dtsi with a simple comment. &mpss_mem is disabled by default so it's fine to leave some properties up to the boards if they want to enable it. Signed-off-by: Stephan Gerhold <stephan@xxxxxxxxxxx> --- arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 1 + arch/arm64/boot/dts/qcom/msm8916.dtsi | 2 +- arch/arm64/boot/dts/qcom/msm8939.dtsi | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts index ae510c5ec830..3381550a5c9e 100644 --- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts +++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts @@ -263,6 +263,7 @@ &mpss { &mpss_mem { status = "okay"; + reg = <0x0 0x86800000 0x0 0x2b00000>; }; &pm8916_codec { diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi index 8457472c9ad8..4d867078388d 100644 --- a/arch/arm64/boot/dts/qcom/msm8916.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi @@ -84,7 +84,7 @@ mpss_mem: mpss@86800000 { * alignment = <0x0 0x400000>; * alloc-ranges = <0x0 0x86800000 0x0 0x8000000>; */ - reg = <0x0 0x86800000 0x0 0x2b00000>; + reg = <0x0 0x86800000 0x0 0>; /* size is device-specific */ no-map; status = "disabled"; }; diff --git a/arch/arm64/boot/dts/qcom/msm8939.dtsi b/arch/arm64/boot/dts/qcom/msm8939.dtsi index c50f6d828fed..ba177725f3d7 100644 --- a/arch/arm64/boot/dts/qcom/msm8939.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8939.dtsi @@ -356,7 +356,7 @@ mpss_mem: mpss@86800000 { * alignment = <0x0 0x400000>; * alloc-ranges = <0x0 0x86800000 0x0 0x8000000>; */ - reg = <0x0 0x86800000 0x0 0x5500000>; + reg = <0x0 0x86800000 0x0 0>; /* size is device-specific */ no-map; status = "disabled"; }; -- 2.42.0