Re: [PATCH 1/2] V2 arm64: dts: qcom: Add support for Samsung Galaxy Z Fold5

From: Alexandru Serdeliuc
Date: Fri Mar 29 2024 - 05:42:40 EST


Thanks, i added some notes inline as I do not know how to proceed with some if the requirements.

Just to be noted, the sm8550-samsung-q5q.dts it is based on sm8550-mtp.dts so most of the stuff is from there


On 29/3/24 1:52, Konrad Dybcio wrote:
On 29.03.2024 12:08 AM, Alexandru Marc Serdeliuc via B4 Relay wrote:
From: Alexandru Marc Serdeliuc <serdeliuk@xxxxxxxxx>

Add support for Samsung Galaxy Z Fold5 (q5q) foldable phone

Currently working features:
- Framebuffer
- UFS
- i2c
- Buttons

Signed-off-by: Alexandru Marc Serdeliuc <serdeliuk@xxxxxxxxx>
---
The [PATCH] string is added automatically to the subject by b4, I don't know how to add/insert custom text in there, I am going to read the b4 docs and see if i can spot how to do it.
Your commit title now includes "V2". Move it inside the square braces the
next time around, so it's like [PATCH v3 1/2]. With b4, this should be done
automagically, though..

[...]

+/ {
+ model = "Samsung Galaxy Z Fold5";
+ compatible = "samsung,q5q", "qcom,sm8550";
+ #address-cells = <0x02>;
+ #size-cells = <0x02>;

thanks, going to remove them

These two can go

[...]

+ reserved-memory {
+ /*
+ * The bootloader will only keep display hardware enabled
+ * if this memory region is named exactly 'splash_region'
+ */
this is a reality, without it the framebuffer do not work, due to abl

https://git.codelinaro.org/clo/la/abl/tianocore/edk2/-/blob/LA.VENDOR.1.0.r2-09400-WAIPIO.QSSI14.0/QcomModulePkg/Library/BootLib/UpdateDeviceTree.c?ref_type=tags#L220

How to proceed?

Ouch.

[...]

+ vreg_l15b_1p8: ldo15 {
+ regulator-name = "vreg_l15b_1p8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+ regulator-allow-set-load;
+ regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
+ RPMH_REGULATOR_MODE_HPM>;
+ regulator-always-on;

I have removed the nodes that uses this as the driver for "Texas Instruments i2c eUSB2" is not yet submitted by the porter, however, those are took from the existing sm8550-mtp.dts

How to proceed?

Any particular reason as to why?

[...]

+&remoteproc_adsp {
+ firmware-name = "qcom/sm8550/adsp.mbn",
+ "qcom/sm8550/adsp_dtb.mbn";
+ status = "okay";
+};
+
+&remoteproc_cdsp {
+ firmware-name = "qcom/sm8550/cdsp.mbn",
+ "qcom/sm8550/cdsp_dtb.mbn";
+ status = "okay";
+};
+
+&remoteproc_mpss {
+ firmware-name = "qcom/sm8550/modem.mbn",
+ "qcom/sm8550/modem_dtb.mbn";
+ status = "okay";

Those are took from the device's running Android /firmware and load without error, I used this kind of firmware loaded on other devices as well and seems to do the job, the lines are as well on existing sm8550-mtp.dts

How to proceed?

Unless you stole one from the factory, these firmwares will not
load on your phone..

+};
+
+&sleep_clk {
+ clock-frequency = <32000>;
+};
+
+&tlmm {
+ gpio-reserved-ranges = <36 4>, <50 2>;
I have no idea, i took the ranges from  the running Android FDT, without those ranges the kernel do not boot, i can dig more into these ranges if required
Would you have an idea what these GPIOs are used for?

Konrad