Skip to contentSkip to conversation

arm64: dts: x1e80100-crd: describe HID supplies

PATCH Applied Johan Hovold 4 participants 4 messages Oct 29, 2024 – Nov 4, 2024

Subsystems (3)

v2 of 3 Applied Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 arm64: dts: x1e80100-crd: describe HID supplies

Add the missing HID supplies to avoid relying on other consumers to keep them on.

This also avoids the following warnings on boot:

i2c_hid_of 0-0010: supply vdd not found, using dummy regulator i2c_hid_of 0-0010: supply vddl not found, using dummy regulator i2c_hid_of 1-0015: supply vdd not found, using dummy regulator i2c_hid_of 1-0015: supply vddl not found, using dummy regulator i2c_hid_of 1-003a: supply vdd not found, using dummy regulator i2c_hid_of 1-003a: supply vddl not found, using dummy regulator

Note that VREG_MISC_3P3 is also used for things like the fingerprint reader which are not yet fully described so mark the regulator as always on for now.

Fixes d7e03cce0400 ("arm64: dts: qcom: x1e80100-crd: Enable more support")

---

Changes in v2:
- amend the pin config in order not to rely on the boot firmware

 arch/arm64/boot/dts/qcom/x1e80100-crd.dts | 40 +++++++++++++++++++++++
 1 file changed, 40 insertions(+)
arch/arm64/boot/dts/qcom/x1e80100-crd.dts +40 -0
index b50accb220e5..c5478fd08e51 100644
@@ -8,6 +8,7 @@
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/gpio-keys.h>
 #include <dt-bindings/input/input.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 
 #include "x1e80100.dtsi"
@@ -277,6 +278,23 @@ vreg_edp_3p3: regulator-edp-3p3 {
 		regulator-boot-on;
 	};
 
+	vreg_misc_3p3: regulator-misc-3p3 {
+		compatible = "regulator-fixed";
+
+		regulator-name = "VREG_MISC_3P3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&pm8550ve_8_gpios 6 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&misc_3p3_reg_en>;
+
+		regulator-boot-on;
+		regulator-always-on;
+	};
+
 	vreg_nvme: regulator-nvme {
 		compatible = "regulator-fixed";
 
@@ -691,6 +709,9 @@ touchpad@15 {
 		hid-descr-addr = <0x1>;
 		interrupts-extended = <&tlmm 3 IRQ_TYPE_LEVEL_LOW>;
 
+		vdd-supply = <&vreg_misc_3p3>;
+		vddl-supply = <&vreg_l12b_1p2>;
+
 		pinctrl-0 = <&tpad_default>;
 		pinctrl-names = "default";
 
@@ -704,6 +725,9 @@ keyboard@3a {
 		hid-descr-addr = <0x1>;
 		interrupts-extended = <&tlmm 67 IRQ_TYPE_LEVEL_LOW>;
 
+		vdd-supply = <&vreg_misc_3p3>;
+		vddl-supply = <&vreg_l12b_1p2>;
+
 		pinctrl-0 = <&kybd_default>;
 		pinctrl-names = "default";
 
@@ -723,6 +747,9 @@ touchscreen@10 {
 		hid-descr-addr = <0x1>;
 		interrupts-extended = <&tlmm 51 IRQ_TYPE_LEVEL_LOW>;
 
+		vdd-supply = <&vreg_misc_3p3>;
+		vddl-supply = <&vreg_l15b_1p8>;
+
 		pinctrl-0 = <&ts0_default>;
 		pinctrl-names = "default";
 	};
@@ -856,6 +883,19 @@ &pcie6a_phy {
 	status = "okay";
 };
 
+&pm8550ve_8_gpios {
+	misc_3p3_reg_en: misc-3p3-reg-en-state {
+		pins = "gpio6";
+		function = "normal";
+		bias-disable;
+		input-disable;
+		output-enable;
+		drive-push-pull;
+		power-source = <1>; /* 1.8 V */
+		qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
+	};
+};
+
 &pmc8380_3_gpios {
 	edp_bl_en: edp-bl-en-state {
 		pins = "gpio4";
Signature · 1 line
2.45.2
Reviewed-by on v2 1/1
#1 lore raw
Quoted 20 lines · Johan Hovold

Add the missing HID supplies to avoid relying on other consumers to keep them on.

This also avoids the following warnings on boot:

i2c_hid_of 0-0010: supply vdd not found, using dummy regulator i2c_hid_of 0-0010: supply vddl not found, using dummy regulator i2c_hid_of 1-0015: supply vdd not found, using dummy regulator i2c_hid_of 1-0015: supply vddl not found, using dummy regulator i2c_hid_of 1-003a: supply vdd not found, using dummy regulator i2c_hid_of 1-003a: supply vddl not found, using dummy regulator

Note that VREG_MISC_3P3 is also used for things like the fingerprint reader which are not yet fully described so mark the regulator as always on for now.

Fixes d7e03cce0400 ("arm64: dts: qcom: x1e80100-crd: Enable more support")

---

[...]

arch/arm64/boot/dts/qcom/x1e80100-crd.dts vreg_edp_3p3: regulator-edp-3p3 { · line 292

Quoted 13 lines
arch/arm64/boot/dts/qcom/x1e80100-crd.dts +12 -0
+	vreg_misc_3p3: regulator-misc-3p3 {
+		compatible = "regulator-fixed";
+
+		regulator-name = "VREG_MISC_3P3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&pm8550ve_8_gpios 6 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&misc_3p3_reg_en>;

property-n
property-names

for consistency, please

Konrad

#2 lore raw
Quoted 18 lines · Konrad Dybcio

arch/arm64/boot/dts/qcom/x1e80100-crd.dts vreg_edp_3p3: regulator-edp-3p3 { · line 292

Quoted 12 lines · Johan Hovold
arch/arm64/boot/dts/qcom/x1e80100-crd.dts +12 -0
+	vreg_misc_3p3: regulator-misc-3p3 {
+		compatible = "regulator-fixed";
+
+		regulator-name = "VREG_MISC_3P3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&pm8550ve_8_gpios 6 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&misc_3p3_reg_en>;

property-n
property-names

Quoted 1 line

for consistency, please

Sure, will switch these to match the new style that this driver mostly follows (but as we've discussed before, the traditional style that most dt still use for pinctrl is what I used above).

Quoted 1 line

Thanks for reviewing.

Johan

maintainer Applied
#3 lore raw
In reply to Johan Hovold
Quoted 5 lines · Johan Hovold

Add the missing HID supplies to avoid relying on other consumers to keep them on.

This also avoids the following warnings on boot:

Quoted 8 lines

i2c_hid_of 0-0010: supply vdd not found, using dummy regulator i2c_hid_of 0-0010: supply vddl not found, using dummy regulator i2c_hid_of 1-0015: supply vdd not found, using dummy regulator i2c_hid_of 1-0015: supply vddl not found, using dummy regulator i2c_hid_of 1-003a: supply vdd not found, using dummy regulator i2c_hid_of 1-003a: supply vddl not found, using dummy regulator

[...]

Applied, thanks!

[1/1] arm64: dts: x1e80100-crd: describe HID supplies

      commit: 266cb58f08f3ca4674ef976166b49c3a60b60463

Best regards,

Signature · 1 line
Bjorn Andersson <[email protected]>