Message ID | 20230911-msm8916-rmem-v1-8-b7089ec3e3a1@gerhold.net |
---|---|
State | Accepted |
Commit | 35efa1be51bd6db067d7380b34538b17b9f250a8 |
Headers | show |
Series | arm64: dts: qcom: msm8916/39: Reserve firmware memory dynamically | expand |
On 11.09.2023 19:41, Stephan Gerhold wrote: > 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@gerhold.net> > --- Any reason not to squash it with one of the earlier patches then? Konrad
On Fri, Sep 15, 2023 at 03:51:52PM +0200, Konrad Dybcio wrote: > On 11.09.2023 19:41, Stephan Gerhold wrote: > > 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@gerhold.net> > > --- > Any reason not to squash it with one of the earlier patches then? > I'm not strictly opposed but these are really two independent changes. One drops the fixed memory regions and makes the allocation dynamic, in the SoC dtsi. This one moves board-specific information out of the SoC dtsi (to the boards). Thanks, Stephan
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"; };
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@gerhold.net> --- 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(-)