All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mostafa Saleh <smostafa@google.com>
To: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Cc: andersson@kernel.org, konradybcio@kernel.org, robh@kernel.org,
	krzk+dt@kernel.org, conor+dt@kernel.org,
	linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, maz@kernel.org
Subject: Re: Support for Lenovo IdeaCentre Mini X (Purwa)
Date: Mon, 18 May 2026 11:51:31 +0000	[thread overview]
Message-ID: <agr9Q-CC8v4G9neP@google.com> (raw)
In-Reply-To: <abe8443b-9871-455c-95d9-d16975c0fbdf@oss.qualcomm.com>

On Fri, May 15, 2026 at 01:28:00PM +0200, Konrad Dybcio wrote:
> On 4/30/26 7:22 PM, Mostafa Saleh wrote:
> > Hi Konrad,
> > 
> > On Thu, Apr 30, 2026 at 06:48:33PM +0200, Konrad Dybcio wrote:
> >> On 4/29/26 4:18 PM, Mostafa Saleh wrote:
> >>> Hi,
> >>>
> >>> I see that recently the support for “Lenovo IdeaCentre Mini X” was
> >>> added [1]
> >>> However, unfortunately that doesn’t work for my device, the board
> >>> resets once I try to boot the kernel from UEFI.
> >>>
> >>> I believe that’s because it is another variant, as I have been using
> >>> my device tree for some time[2] which is hacked based on the crd
> >>> device tree with some trial and error. With that I can boot with
> >>> PCI/NVME/Ethernet and USB (there are also some other errors in the
> >>> log related PMIC), this device tree is based on purwa.dtsi unlike
> >>> the upstream one which use hamoa.dtsi.
> >>>
> >>> Are there any plans to support the Purwa based variant? I am happy to
> >>> help with testing, but I can’t confidently send patches as my device
> >>> tree is based on trial and error rather than a data sheet.
> 
> [...]
> 
> > I can try to see the differences and build another dt on top of the
> > hamoa one, but that will also be based on trial and error rather than
> > actual knowledge, I am happy to test patches if you have other
> > suggestions.
> 
> Hm, I ran a quick diff and even though there's a lot of noise (mostly
> due to the same things being named slightly differently), the actual
> meat and potatoes aren't very different at all, e.g. the PHY regulators
> are the same
> 
> Could you post the full dmesg with both DTs?

This is the log with the device tree that boots[1]:
https://gist.github.com/misaleh/b09c04480062c5a3e7bafe3d4176b15d

This is the log with replacing hamoa.dtsi with purwa.dtsi inside
hamoa-lenovo-ideacentre-mini-01q8x10.dtsi which does not boot:
https://gist.github.com/misaleh/aaad5704824edac9a43e2ebe45adbf85

With those modifications, I can boot:

diff --git a/arch/arm64/boot/dts/qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts b/arch/arm64/boot/dts/qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts
index bfb7cea56df9..00f9a1d5ac95 100644
--- a/arch/arm64/boot/dts/qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts
+++ b/arch/arm64/boot/dts/qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts
@@ -8,7 +8,7 @@
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 
-#include "hamoa.dtsi"
+#include "purwa.dtsi"
 #include "hamoa-pmics.dtsi"
 
 / {
@@ -17,7 +17,7 @@ / {
 	chassis-type = "desktop";
 
 	aliases {
-		serial0 = &uart14;
+		serial0 = &uart21;
 	};
 
 	wcd938x: audio-codec {
@@ -185,6 +185,7 @@ vreg_nvme2_3p3: regulator-nvme2-3p3 {
 		pinctrl-names = "default";
 
 		regulator-boot-on;
+		status = "disabled";
 	};
 
 	vreg_v0p9: regulator-v0p9 {
@@ -714,19 +715,20 @@ &pcie3 {
 
 	vddpe-3v3-supply = <&vreg_nvme2_3p3>;
 
-	status = "okay";
+	status = "disabled";
 };
 
 &pcie3_phy {
 	vdda-phy-supply = <&vreg_l3c>;
 	vdda-pll-supply = <&vreg_l3e>;
 
-	status = "okay";
+	status = "disabled";
 };
 
 &pcie3_port0 {
 	reset-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
 	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
+	status = "disabled";
 };
 
 &pcie4 {
@@ -1064,21 +1066,9 @@ wcn_sw_en: wcn-sw-en-state {
 	};
 };
 
-&uart14 {
+&uart21 {
+	compatible = "qcom,geni-debug-uart";
 	status = "okay";
-
-	bluetooth {
-		compatible = "qcom,wcn7850-bt";
-		max-speed = <3200000>;
-
-		vddaon-supply = <&vreg_pmu_aon_0p59>;
-		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
-		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
-		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
-		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
-		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
-		vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
-	};
 };
 
 &usb_1_ss0 {

The issues were:
- pcie6a and pcie3 conflict in regulator pins
- Different UART

However, there are quite verbose errors from MDSS clocks, and spmi
failures. Here are the booting logs with the above change (at
loglevel=5)

https://gist.github.com/misaleh/3b1d67ac51a8960b811cc20075ab7630

I get cleaner boot logs with MDSS and pmc8380_6 disabled.


[1] https://github.com/misaleh/linux/blob/lenovo/arch/arm64/boot/dts/qcom/x1p42100-lenovo-ideacentre-x-gen10.dts

Thanks,
Mostafa
> 
> Konrad

      reply	other threads:[~2026-05-18 11:51 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-29 14:18 Support for Lenovo IdeaCentre Mini X (Purwa) Mostafa Saleh
2026-04-30 16:48 ` Konrad Dybcio
2026-04-30 17:22   ` Mostafa Saleh
2026-05-15 11:28     ` Konrad Dybcio
2026-05-18 11:51       ` Mostafa Saleh [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=agr9Q-CC8v4G9neP@google.com \
    --to=smostafa@google.com \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=konrad.dybcio@oss.qualcomm.com \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.