[PATCH v2] arm64: dts: qcom: sc8280xp: Define CMA region for CRD and X13s

From: Bjorn Andersson
Date: Tue Jan 17 2023 - 14:58:43 EST


While booting the CRD, a series of CMA allocation errors can be seen in
the kernel log:

cma: cma_alloc: reserved: alloc failed, req-size: 128 pages, ret: -12

Growing the CMA region and querying /proc/meminfo indicates that a newly
booted system (currently) uses 64MB CMA.

Define a memory region sufficiently large for the current use cases, to
avoid forcing users to add this themselves, through command line
parameters etc.

While fixing the CRD define the same region for the X13s.

Tested-by: Andrew Halaney <ahalaney@xxxxxxxxxx> # sc8280xp-lenovo-thinkpad-x13s
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
Signed-off-by: Bjorn Andersson <quic_bjorande@xxxxxxxxxxx>
---

Changes since v1:
- Updated commit message

arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 9 +++++++++
.../boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 9 +++++++++
2 files changed, 18 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts b/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts
index 4e92dc28e2ce..6f686377dc3e 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts
+++ b/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts
@@ -128,6 +128,15 @@ vreg_wwan: regulator-wwan {

regulator-boot-on;
};
+
+ reserved-memory {
+ linux,cma {
+ compatible = "shared-dma-pool";
+ size = <0x0 0x8000000>;
+ reusable;
+ linux,cma-default;
+ };
+ };
};

&apps_rsc {
diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts
index 55ecbee19a58..8d485e0000cf 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts
+++ b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts
@@ -153,6 +153,15 @@ vreg_wwan: regulator-wwan {
regulator-boot-on;
};

+ reserved-memory {
+ linux,cma {
+ compatible = "shared-dma-pool";
+ size = <0x0 0x8000000>;
+ reusable;
+ linux,cma-default;
+ };
+ };
+
thermal-zones {
skin-temp-thermal {
polling-delay-passive = <250>;
--
2.25.1