linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string
       [not found] <20221231222420.75233-1-they@mint.lgbt>
@ 2022-12-31 22:24 ` Lux Aliaga
  2022-12-31 22:29   ` Lux Aliaga
                     ` (3 more replies)
  2022-12-31 22:24 ` [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125 Lux Aliaga
                   ` (4 subsequent siblings)
  5 siblings, 4 replies; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:24 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Alim Akhtar,
	Avri Altman, Bart Van Assche, Rob Herring, Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	Lux Aliaga, linux-arm-msm, linux-scsi, devicetree, linux-kernel

Document the compatible for UFS found on the SM6125.

Signed-off-by: Lux Aliaga <they@mint.lgbt>
---
 Documentation/devicetree/bindings/ufs/qcom,ufs.yaml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
index b517d76215e3..42422f3471b3 100644
--- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
+++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
@@ -29,6 +29,7 @@ properties:
           - qcom,sc8280xp-ufshc
           - qcom,sdm845-ufshc
           - qcom,sm6115-ufshc
+          - qcom,sm6125-ufshc
           - qcom,sm6350-ufshc
           - qcom,sm8150-ufshc
           - qcom,sm8250-ufshc
@@ -185,6 +186,7 @@ allOf:
           contains:
             enum:
               - qcom,sm6115-ufshc
+              - qcom,sm6125-ufshc
     then:
       properties:
         clocks:
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125
       [not found] <20221231222420.75233-1-they@mint.lgbt>
  2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
@ 2022-12-31 22:24 ` Lux Aliaga
  2022-12-31 22:53   ` Martin Botka
                     ` (2 more replies)
  2022-12-31 22:24 ` [PATCH v5 3/6] phy: qcom-qmp: Add SM6125 UFS PHY support Lux Aliaga
                   ` (3 subsequent siblings)
  5 siblings, 3 replies; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:24 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul,
	Kishon Vijay Abraham I, Rob Herring, Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	Lux Aliaga, linux-arm-msm, linux-phy, devicetree, linux-kernel

Document the QMP UFS PHY compatible for SM6125.

Signed-off-by: Lux Aliaga <they@mint.lgbt>
---
 .../devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml       | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
index dde86a19f792..a7af57931f32 100644
--- a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
+++ b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
@@ -17,6 +17,7 @@ properties:
   compatible:
     enum:
       - qcom,sc8280xp-qmp-ufs-phy
+      - qcom,sm6125-qmp-ufs-phy
 
   reg:
     maxItems: 1
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH v5 3/6] phy: qcom-qmp: Add SM6125 UFS PHY support
       [not found] <20221231222420.75233-1-they@mint.lgbt>
  2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
  2022-12-31 22:24 ` [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125 Lux Aliaga
@ 2022-12-31 22:24 ` Lux Aliaga
  2022-12-31 23:18   ` Martin Botka
  2022-12-31 22:24 ` [PATCH v5 4/6] arm64: dts: qcom: sm6125: Add UFS nodes Lux Aliaga
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:24 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul,
	Kishon Vijay Abraham I
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	Lux Aliaga, linux-arm-msm, linux-phy, linux-kernel

The SM6125 UFS PHY is compatible with the one from SM6115. Add a
compatible for it and modify the config from SM6115 to make them
compatible with the SC8280XP binding

Signed-off-by: Lux Aliaga <they@mint.lgbt>
---
 drivers/phy/qualcomm/phy-qcom-qmp-ufs.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c
index 318eea35b972..f33c84578940 100644
--- a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c
+++ b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c
@@ -693,6 +693,8 @@ static const struct qmp_phy_cfg sdm845_ufsphy_cfg = {
 static const struct qmp_phy_cfg sm6115_ufsphy_cfg = {
 	.lanes			= 1,
 
+	.offsets		= &qmp_ufs_offsets_v5,
+
 	.serdes_tbl		= sm6115_ufsphy_serdes_tbl,
 	.serdes_tbl_num		= ARRAY_SIZE(sm6115_ufsphy_serdes_tbl),
 	.tx_tbl			= sm6115_ufsphy_tx_tbl,
@@ -1172,6 +1174,9 @@ static const struct of_device_id qmp_ufs_of_match_table[] = {
 	}, {
 		.compatible = "qcom,sm6115-qmp-ufs-phy",
 		.data = &sm6115_ufsphy_cfg,
+	}, {
+		.compatible = "qcom,sm6125-qmp-ufs-phy",
+		.data = &sm6115_ufsphy_cfg,
 	}, {
 		.compatible = "qcom,sm6350-qmp-ufs-phy",
 		.data = &sdm845_ufsphy_cfg,
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH v5 4/6] arm64: dts: qcom: sm6125: Add UFS nodes
       [not found] <20221231222420.75233-1-they@mint.lgbt>
                   ` (2 preceding siblings ...)
  2022-12-31 22:24 ` [PATCH v5 3/6] phy: qcom-qmp: Add SM6125 UFS PHY support Lux Aliaga
@ 2022-12-31 22:24 ` Lux Aliaga
  2023-01-01 15:41   ` Krzysztof Kozlowski
  2022-12-31 22:24 ` [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board Lux Aliaga
  2022-12-31 22:24 ` [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout Lux Aliaga
  5 siblings, 1 reply; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:24 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	Lux Aliaga, linux-arm-msm, devicetree, linux-kernel

Adds a UFS host controller node and its corresponding PHY to
the sm6125 platform.

Signed-off-by: Lux Aliaga <they@mint.lgbt>
---
 arch/arm64/boot/dts/qcom/sm6125.dtsi | 59 ++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sm6125.dtsi b/arch/arm64/boot/dts/qcom/sm6125.dtsi
index df5453fcf2b9..9cb081332849 100644
--- a/arch/arm64/boot/dts/qcom/sm6125.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm6125.dtsi
@@ -511,6 +511,65 @@ sdhc_2: mmc@4784000 {
 			status = "disabled";
 		};
 
+		ufs_mem_hc: ufs@4804000 {
+			compatible = "qcom,sm6125-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
+			reg = <0x04804000 0x3000>, <0x04810000 0x8000>;
+			reg-names = "std", "ice";
+			interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
+			phys = <&ufs_mem_phy>;
+			phy-names = "ufsphy";
+			lanes-per-direction = <1>;
+			#reset-cells = <1>;
+			resets = <&gcc GCC_UFS_PHY_BCR>;
+			reset-names = "rst";
+			iommus = <&apps_smmu 0x200 0x0>;
+
+			clock-names = "core_clk",
+				      "bus_aggr_clk",
+				      "iface_clk",
+				      "core_clk_unipro",
+				      "ref_clk",
+				      "tx_lane0_sync_clk",
+				      "rx_lane0_sync_clk",
+				      "ice_core_clk";
+			clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
+				 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>,
+				 <&gcc GCC_UFS_PHY_AHB_CLK>,
+				 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
+				 <&rpmcc RPM_SMD_XO_CLK_SRC>,
+				 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
+				 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
+				 <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
+			freq-table-hz = <50000000 240000000>,
+					<0 0>,
+					<0 0>,
+					<37500000 150000000>,
+					<0 0>,
+					<0 0>,
+					<0 0>,
+					<75000000 300000000>;
+
+			non-removable;
+			status = "disabled";
+		};
+
+		ufs_mem_phy: phy@4807000 {
+			compatible = "qcom,sm6125-qmp-ufs-phy";
+			reg = <0x04807000 0x1c4>;
+
+			clock-names = "ref", "ref_aux";
+			clocks = <&gcc GCC_UFS_MEM_CLKREF_CLK>, <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
+
+			power-domains = <&gcc UFS_PHY_GDSC>;
+
+			resets = <&ufs_mem_hc 0>;
+			reset-names = "ufsphy";
+
+			#phy-cells = <0>;
+
+			status = "disabled";
+		};
+
 		gpi_dma0: dma-controller@4a00000 {
 			compatible = "qcom,sm6125-gpi-dma", "qcom,sdm845-gpi-dma";
 			reg = <0x04a00000 0x60000>;
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board
       [not found] <20221231222420.75233-1-they@mint.lgbt>
                   ` (3 preceding siblings ...)
  2022-12-31 22:24 ` [PATCH v5 4/6] arm64: dts: qcom: sm6125: Add UFS nodes Lux Aliaga
@ 2022-12-31 22:24 ` Lux Aliaga
  2022-12-31 22:50   ` Martin Botka
  2023-01-01 15:40   ` Krzysztof Kozlowski
  2022-12-31 22:24 ` [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout Lux Aliaga
  5 siblings, 2 replies; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:24 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	Lux Aliaga, linux-arm-msm, devicetree, linux-kernel

Document the Xiaomi Mi A3 (xiaomi-laurel-sprout) smartphone which is
based on the Snapdragon 665 SoC.

Signed-off-by: Lux Aliaga <they@mint.lgbt>
---
 Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml b/Documentation/devicetree/bindings/arm/qcom.yaml
index 27063a045bd0..4923dafb5d7a 100644
--- a/Documentation/devicetree/bindings/arm/qcom.yaml
+++ b/Documentation/devicetree/bindings/arm/qcom.yaml
@@ -793,6 +793,7 @@ properties:
       - items:
           - enum:
               - sony,pdx201
+              - xiaomi,laurel-sprout
           - const: qcom,sm6125
 
       - items:
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout
       [not found] <20221231222420.75233-1-they@mint.lgbt>
                   ` (4 preceding siblings ...)
  2022-12-31 22:24 ` [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board Lux Aliaga
@ 2022-12-31 22:24 ` Lux Aliaga
  2023-01-01 15:44   ` Krzysztof Kozlowski
  2023-01-01 23:39   ` Marijn Suijten
  5 siblings, 2 replies; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:24 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Kees Cook, Tony Luck, Guilherme G. Piccoli
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	Lux Aliaga, linux-arm-msm, devicetree, linux-kernel,
	linux-hardening

Adds support for the Xiaomi Mi A3 (xiaomi-laurel-sprout). Here's a
summary on what's working.

- dmesg output to bootloader preconfigured display
- USB
- UFS
- SD card
- SMD RPM regulators
- Volume Up, Down and Power buttons
- Thermistors

Signed-off-by: Lux Aliaga <they@mint.lgbt>
---
 arch/arm64/boot/dts/qcom/Makefile             |   1 +
 .../dts/qcom/sm6125-xiaomi-laurel-sprout.dts  | 413 ++++++++++++++++++
 2 files changed, 414 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts

diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 3e79496292e7..2b2a0170db14 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -157,6 +157,7 @@ dtb-$(CONFIG_ARCH_QCOM)	+= sdm850-lenovo-yoga-c630.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= sdm850-samsung-w737.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= sm4250-oneplus-billie2.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= sm6125-sony-xperia-seine-pdx201.dtb
+dtb-$(CONFIG_ARCH_QCOM)	+= sm6125-xiaomi-laurel-sprout.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= sm6350-sony-xperia-lena-pdx213.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= sm6375-sony-xperia-murray-pdx225.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= sm7225-fairphone-fp4.dtb
diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
new file mode 100644
index 000000000000..cc338c7ef358
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
@@ -0,0 +1,413 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt>
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/input/gpio-keys.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
+#include "sm6125.dtsi"
+#include "pm6125.dtsi"
+
+/ {
+	model = "Xiaomi Mi A3";
+	compatible = "xiaomi,laurel-sprout", "qcom,sm6125";
+	chassis-type = "handset";
+
+	/* required for bootloader to select correct board */
+	qcom,msm-id = <394 0>; /* sm6125 v1 */
+	qcom,board-id = <11 0>;
+
+	chosen {
+		#address-cells = <2>;
+		#size-cells = <2>;
+		ranges;
+
+		framebuffer0: framebuffer@5c000000 {
+			compatible = "simple-framebuffer";
+			reg = <0 0x5c000000 0 (1560 * 720 * 4)>;
+			width = <720>;
+			height = <1560>;
+			stride = <(720 * 4)>;
+			format = "a8r8g8b8";
+		};
+	};
+
+	reserved-memory {
+		#address-cells = <2>;
+		#size-cells = <2>;
+
+		debug_mem: debug@ffb00000 {
+			reg = <0x0 0xffb00000 0x0 0xc0000>;
+			no-map;
+		};
+
+		last_log_mem: lastlog@ffbc0000 {
+			reg = <0x0 0xffbc0000 0x0 0x80000>;
+			no-map;
+		};
+
+		pstore_mem: ramoops@ffc00000 {
+			compatible = "ramoops";
+			reg = <0x0 0xffc40000 0x0 0xc0000>;
+			record-size = <0x1000>;
+			console-size = <0x40000>;
+			msg-size = <0x20000 0x20000>;
+		};
+
+		cmdline_mem: memory@ffd00000 {
+			reg = <0x0 0xffd40000 0x0 0x1000>;
+			no-map;
+		};
+	};
+
+	extcon_usb: usb-id {
+		compatible = "linux,extcon-usb-gpio";
+		id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>;
+	};
+
+	gpio-keys {
+		status = "okay";
+		compatible = "gpio-keys";
+		autorepeat;
+
+		key-vol-up {
+			label = "Volume Up";
+			gpios = <&pm6125_gpio 5 GPIO_ACTIVE_LOW>;
+			linux,input-type = <1>;
+			linux,code = <KEY_VOLUMEUP>;
+			gpio-key,wakeup;
+			debounce-interval = <15>;
+		};
+	};
+
+	thermal-zones {
+		rf-pa0-thermal {
+			polling-delay-passive = <0>;
+			polling-delay = <0>;
+			thermal-sensors = <&pm6125_adc_tm 0>;
+
+			trips {
+				active-config0 {
+					temperature = <125000>;
+					hysteresis = <1000>;
+					type = "critical";
+				};
+			};
+		};
+
+		quiet-thermal {
+			polling-delay-passive = <0>;
+			polling-delay = <5000>;
+			thermal-sensors = <&pm6125_adc_tm 1>;
+
+			trips {
+				active-config0 {
+					temperature = <125000>;
+					hysteresis = <1000>;
+					type = "critical";
+				};
+			};
+		};
+
+		xo-thermal {
+			polling-delay-passive = <0>;
+			polling-delay = <0>;
+			thermal-sensors = <&pm6125_adc_tm 2>;
+
+			trips {
+				active-config0 {
+					temperature = <125000>;
+					hysteresis = <1000>;
+					type = "critical";
+				};
+			};
+		};
+	};
+};
+
+&hsusb_phy1 {
+	vdd-supply = <&vreg_l7a>;
+	vdda-pll-supply = <&vreg_l10a>;
+	vdda-phy-dpdm-supply = <&vreg_l15a>;
+	status = "okay";
+};
+
+&pm6125_adc {
+	pinctrl-names = "default";
+	pinctrl-0 = <&camera_flash_therm &emmc_ufs_therm>;
+
+	rf-pa0-therm@4d {
+		reg = <ADC5_AMUX_THM1_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time = <200>;
+		qcom,pre-scaling = <1 1>;
+	};
+
+	quiet-therm@4e {
+		reg = <ADC5_AMUX_THM2_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time = <200>;
+		qcom,pre-scaling = <1 1>;
+	};
+
+	camera-flash-therm@52 {
+		reg = <ADC5_GPIO1_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time = <200>;
+		qcom,pre-scaling = <1 1>;
+	};
+
+	emmc-ufs-therm@54 {
+		reg = <ADC5_GPIO3_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time = <200>;
+		qcom,pre-scaling = <1 1>;
+	};
+};
+
+&pm6125_adc_tm {
+	status = "okay";
+
+	rf-pa0-therm@0 {
+		reg = <0>;
+		io-channels = <&pm6125_adc ADC5_AMUX_THM1_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time-us = <200>;
+	};
+
+	quiet-therm@1 {
+		reg = <1>;
+		io-channels = <&pm6125_adc ADC5_AMUX_THM2_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time-us = <200>;
+	};
+
+	xo-therm@2 {
+		reg = <2>;
+		io-channels = <&pm6125_adc ADC5_XO_THERM_100K_PU>;
+		qcom,ratiometric;
+		qcom,hw-settle-time-us = <200>;
+	};
+};
+
+&pm6125_gpio {
+	camera_flash_therm: camera-flash-therm-state {
+		pins = "gpio3";
+		function = PMIC_GPIO_FUNC_NORMAL;
+		bias-high-impedance;
+	};
+
+	emmc_ufs_therm: emmc-ufs-therm-state {
+		pins = "gpio6";
+		function = PMIC_GPIO_FUNC_NORMAL;
+		bias-high-impedance;
+	};
+
+	key_vol_up: key_vol_up {
+		pins = "gpio5";
+		function = PMIC_GPIO_FUNC_NORMAL;
+		input-enable;
+		bias-pull-up;
+	};
+};
+
+&pon_pwrkey {
+	status = "okay";
+};
+
+&pon_resin {
+	status = "okay";
+	linux,code = <KEY_VOLUMEDOWN>;
+};
+
+&rpm_requests {
+	regulators-0 {
+		compatible = "qcom,rpm-pm6125-regulators";
+
+		vreg_s6a: s6 {
+			regulator-min-microvolt = <936000>;
+			regulator-max-microvolt = <1422000>;
+		};
+
+		vreg_l1a: l1 {
+			regulator-min-microvolt = <1200000>;
+			regulator-max-microvolt = <1256000>;
+		};
+
+		vreg_l2a: l2 {
+			regulator-min-microvolt = <1000000>;
+			regulator-max-microvolt = <1056000>;
+		};
+
+		vreg_l3a: l3 {
+			regulator-min-microvolt = <1000000>;
+			regulator-max-microvolt = <1064000>;
+		};
+
+		vreg_l4a: l4 {
+			regulator-min-microvolt = <872000>;
+			regulator-max-microvolt = <976000>;
+		};
+
+		vreg_l5a: l5 {
+			regulator-min-microvolt = <1648000>;
+			regulator-max-microvolt = <2950000>;
+		};
+
+		vreg_l6a: l6 {
+			regulator-min-microvolt = <576000>;
+			regulator-max-microvolt = <656000>;
+		};
+
+		vreg_l7a: l7 {
+			regulator-min-microvolt = <872000>;
+			regulator-max-microvolt = <976000>;
+		};
+
+		vreg_l8a: l8 {
+			regulator-min-microvolt = <400000>;
+			regulator-max-microvolt = <728000>;
+		};
+
+		vreg_l9a: l9 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1896000>;
+		};
+
+		vreg_l10a: l10 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1896000>;
+		};
+
+		vreg_l11a: l11 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1952000>;
+		};
+
+		vreg_l12a: l12 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1996000>;
+		};
+
+		vreg_l13a: l13 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1832000>;
+		};
+
+		vreg_l14a: l14 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1904000>;
+		};
+
+		vreg_l15a: l15 {
+			regulator-min-microvolt = <3104000>;
+			regulator-max-microvolt = <3232000>;
+		};
+
+		vreg_l16a: l16 {
+			regulator-min-microvolt = <1800000>;
+			regulator-max-microvolt = <1904000>;
+		};
+
+		vreg_l17a: l17 {
+			regulator-min-microvolt = <1248000>;
+			regulator-max-microvolt = <1304000>;
+		};
+
+		vreg_l18a: l18 {
+			regulator-min-microvolt = <1200000>;
+			regulator-max-microvolt = <1264000>;
+		};
+
+		vreg_l19a: l19 {
+			regulator-min-microvolt = <1648000>;
+			regulator-max-microvolt = <2952000>;
+		};
+
+		vreg_l20a: l20 {
+			regulator-min-microvolt = <1648000>;
+			regulator-max-microvolt = <2952000>;
+		};
+
+		vreg_l21a: l21 {
+			regulator-min-microvolt = <2600000>;
+			regulator-max-microvolt = <2856000>;
+		};
+
+		vreg_l22a: l22 {
+			regulator-min-microvolt = <2944000>;
+			regulator-max-microvolt = <2950000>;
+			regulator-allow-set-load;
+		};
+
+		vreg_l23a: l23 {
+			regulator-min-microvolt = <3000000>;
+			regulator-max-microvolt = <3400000>;
+		};
+
+		vreg_l24a: l24 {
+			regulator-min-microvolt = <2944000>;
+			regulator-max-microvolt = <3304000>;
+		};
+	};
+};
+
+&sdc2_off_state {
+	sd-cd-pins {
+		pins = "gpio98";
+		function = "gpio";
+		drive-strength = <2>;
+		bias-disable;
+	};
+};
+
+&sdc2_on_state {
+	sd-cd-pins {
+		pins = "gpio98";
+		function = "gpio";
+		drive-strength = <2>;
+		bias-pull-up;
+	};
+};
+
+&sdhc_2 {
+	cd-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>;
+	vmmc-supply = <&vreg_l22a>;
+	vqmmc-supply = <&vreg_l5a>;
+	no-sdio;
+	no-mmc;
+	status = "okay";
+};
+
+&tlmm {
+	gpio-reserved-ranges = <22 2>, <28 6>;
+};
+
+&ufs_mem_hc {
+	vcc-supply = <&vreg_l24a>;
+	vccq2-supply = <&vreg_l11a>;
+	vcc-max-microamp = <600000>;
+	vccq2-max-microamp = <600000>;
+	status = "okay";
+};
+
+&ufs_mem_phy {
+	vdda-phy-supply = <&vreg_l4a>;
+	vdda-pll-supply = <&vreg_l10a>;
+	vdda-phy-max-microamp = <51400>;
+	vdda-pll-max-microamp = <14200>;
+	vddp-ref-clk-supply = <&vreg_l18a>;
+	status = "okay";
+};
+
+&usb3 {
+	status = "okay";
+};
+
+&usb3_dwc3 {
+	extcon = <&extcon_usb>;
+};
-- 
2.38.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string
  2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
@ 2022-12-31 22:29   ` Lux Aliaga
  2022-12-31 22:32   ` [PATCH v5 0/6] arm64: dts: qcom: sm6125: UFS and xiaomi-laurel-sprout support Lux Aliaga
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:29 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Alim Akhtar,
	Avri Altman, Bart Van Assche, Rob Herring, Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, linux-scsi, devicetree, linux-kernel

On 31/12/2022 19:24, Lux Aliaga wrote:

> Document the compatible for UFS found on the SM6125.
>
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>   Documentation/devicetree/bindings/ufs/qcom,ufs.yaml | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> index b517d76215e3..42422f3471b3 100644
> --- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> @@ -29,6 +29,7 @@ properties:
>             - qcom,sc8280xp-ufshc
>             - qcom,sdm845-ufshc
>             - qcom,sm6115-ufshc
> +          - qcom,sm6125-ufshc
>             - qcom,sm6350-ufshc
>             - qcom,sm8150-ufshc
>             - qcom,sm8250-ufshc
> @@ -185,6 +186,7 @@ allOf:
>             contains:
>               enum:
>                 - qcom,sm6115-ufshc
> +              - qcom,sm6125-ufshc
>       then:
>         properties:
>           clocks:
Ok. So git-send-email, despite indicating I was sending composing a part 
0 for this patchset, decided to only send it to the people I explicitly 
CC'd. My deepest apologies. I will resend it to the mailing list now.

-- 
Lux Aliaga
https://nixgoat.me/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [PATCH v5 0/6] arm64: dts: qcom: sm6125: UFS and xiaomi-laurel-sprout support
  2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
  2022-12-31 22:29   ` Lux Aliaga
@ 2022-12-31 22:32   ` Lux Aliaga
  2022-12-31 22:53   ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Martin Botka
  2023-01-01 15:40   ` Krzysztof Kozlowski
  3 siblings, 0 replies; 22+ messages in thread
From: Lux Aliaga @ 2022-12-31 22:32 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Alim Akhtar,
	Avri Altman, Bart Van Assche, Rob Herring, Krzysztof Kozlowski
  Cc: linux-arm-msm, linux-scsi, devicetree, linux-kernel

Introduce Universal Flash Storage support on SM6125 and add support for the Xiaomi Mi A3 based on the former platform.

Changes since v4:
- Rebase on GPI DMA 0 and IOMMU patches for SM6125
- Add dedicated compatible for SM6125 UFS PHY
   - Add offsets to SM6115 UFS PHY config
   - Document compatible for SM6125 UFS PHY
- Add IOMMU support for SM6125 UFS Host Controller
- Modify reserved-memory node names on xiaomi-laurel-sprout
- Add thermistor support for xiaomi-laurel-sprout
- Add PON support for xiaomi-laurel-sprout (pwrkey and resin)
- Add gpio-keys node for Volume Up button
   - Add PM6125 GPIO node for Volume Up button
- Add SD card support for xiaomi-laurel-sprout
- Add regulators to USB PHY for xiaomi-laurel-sprout
- Removed empty line on UFS host controller and UFS PHY nodes for xiaomi-laurel-sprout

v4:https://lore.kernel.org/linux-devicetree/20221215190404.398788-1-they@mint.lgbt/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board
  2022-12-31 22:24 ` [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board Lux Aliaga
@ 2022-12-31 22:50   ` Martin Botka
  2023-01-01 18:54     ` Lux Aliaga
  2023-01-01 15:40   ` Krzysztof Kozlowski
  1 sibling, 1 reply; 22+ messages in thread
From: Martin Botka @ 2022-12-31 22:50 UTC (permalink / raw)
  To: Lux Aliaga
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, ~postmarketos/upstreaming, marijn.suijten,
	linux-arm-msm, devicetree, linux-kernel



On Sat, Dec 31 2022 at 07:24:19 PM -03:00:00, Lux Aliaga 
<they@mint.lgbt> wrote:
> Document the Xiaomi Mi A3 (xiaomi-laurel-sprout) smartphone which is
> based on the Snapdragon 665 SoC.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml 
> b/Documentation/devicetree/bindings/arm/qcom.yaml
> index 27063a045bd0..4923dafb5d7a 100644
> --- a/Documentation/devicetree/bindings/arm/qcom.yaml
> +++ b/Documentation/devicetree/bindings/arm/qcom.yaml
> @@ -793,6 +793,7 @@ properties:
>        - items:
>            - enum:
>                - sony,pdx201
> +              - xiaomi,laurel-sprout
 From what i can see laurel_sprout is the correct and official codename 
for the device.

Not sure here at all but should we maybe use that as it is the official 
codename ?

-Martin
>            - const: qcom,sm6125
> 
>        - items:
> --
> 2.38.1
> 



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string
  2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
  2022-12-31 22:29   ` Lux Aliaga
  2022-12-31 22:32   ` [PATCH v5 0/6] arm64: dts: qcom: sm6125: UFS and xiaomi-laurel-sprout support Lux Aliaga
@ 2022-12-31 22:53   ` Martin Botka
  2023-01-01 15:40   ` Krzysztof Kozlowski
  3 siblings, 0 replies; 22+ messages in thread
From: Martin Botka @ 2022-12-31 22:53 UTC (permalink / raw)
  To: Lux Aliaga
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Alim Akhtar,
	Avri Altman, Bart Van Assche, Rob Herring, Krzysztof Kozlowski,
	~postmarketos/upstreaming, marijn.suijten, linux-arm-msm,
	linux-scsi, devicetree, linux-kernel



On Sat, Dec 31 2022 at 07:24:15 PM -03:00:00, Lux Aliaga 
<they@mint.lgbt> wrote:
> Document the compatible for UFS found on the SM6125.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  Documentation/devicetree/bindings/ufs/qcom,ufs.yaml | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml 
> b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> index b517d76215e3..42422f3471b3 100644
> --- a/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> +++ b/Documentation/devicetree/bindings/ufs/qcom,ufs.yaml
> @@ -29,6 +29,7 @@ properties:
>            - qcom,sc8280xp-ufshc
>            - qcom,sdm845-ufshc
>            - qcom,sm6115-ufshc
> +          - qcom,sm6125-ufshc
>            - qcom,sm6350-ufshc
>            - qcom,sm8150-ufshc
>            - qcom,sm8250-ufshc
> @@ -185,6 +186,7 @@ allOf:
>            contains:
>              enum:
>                - qcom,sm6115-ufshc
> +              - qcom,sm6125-ufshc
>      then:
>        properties:
>          clocks:
> --
> 2.38.1
> 
Reviewed-by: Martin Botka <martin.botka@somainline.org>



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125
  2022-12-31 22:24 ` [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125 Lux Aliaga
@ 2022-12-31 22:53   ` Martin Botka
  2023-01-03 11:20   ` Dhruva Gole
  2023-01-08 20:15   ` Rob Herring
  2 siblings, 0 replies; 22+ messages in thread
From: Martin Botka @ 2022-12-31 22:53 UTC (permalink / raw)
  To: Lux Aliaga
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul,
	Kishon Vijay Abraham I, Rob Herring, Krzysztof Kozlowski,
	~postmarketos/upstreaming, marijn.suijten, linux-arm-msm,
	linux-phy, devicetree, linux-kernel



On Sat, Dec 31 2022 at 07:24:16 PM -03:00:00, Lux Aliaga 
<they@mint.lgbt> wrote:
> Document the QMP UFS PHY compatible for SM6125.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  .../devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml       | 1 
> +
>  1 file changed, 1 insertion(+)
> 
> diff --git 
> a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml 
> b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
> index dde86a19f792..a7af57931f32 100644
> --- 
> a/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
> +++ 
> b/Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml
> @@ -17,6 +17,7 @@ properties:
>    compatible:
>      enum:
>        - qcom,sc8280xp-qmp-ufs-phy
> +      - qcom,sm6125-qmp-ufs-phy
> 
>    reg:
>      maxItems: 1
> --
> 2.38.1
> 
Reviewed-by: Martin Botka <martin.botka@somainline.org>



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 3/6] phy: qcom-qmp: Add SM6125 UFS PHY support
  2022-12-31 22:24 ` [PATCH v5 3/6] phy: qcom-qmp: Add SM6125 UFS PHY support Lux Aliaga
@ 2022-12-31 23:18   ` Martin Botka
  0 siblings, 0 replies; 22+ messages in thread
From: Martin Botka @ 2022-12-31 23:18 UTC (permalink / raw)
  To: Lux Aliaga
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul,
	Kishon Vijay Abraham I, ~postmarketos/upstreaming,
	marijn.suijten, linux-arm-msm, linux-phy, linux-kernel



On Sat, Dec 31 2022 at 07:24:17 PM -03:00:00, Lux Aliaga 
<they@mint.lgbt> wrote:
> The SM6125 UFS PHY is compatible with the one from SM6115. Add a
> compatible for it and modify the config from SM6115 to make them
> compatible with the SC8280XP binding
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  drivers/phy/qualcomm/phy-qcom-qmp-ufs.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c 
> b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c
> index 318eea35b972..f33c84578940 100644
> --- a/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c
> +++ b/drivers/phy/qualcomm/phy-qcom-qmp-ufs.c
> @@ -693,6 +693,8 @@ static const struct qmp_phy_cfg sdm845_ufsphy_cfg 
> = {
>  static const struct qmp_phy_cfg sm6115_ufsphy_cfg = {
>  	.lanes			= 1,
> 
> +	.offsets		= &qmp_ufs_offsets_v5,
> +
>  	.serdes_tbl		= sm6115_ufsphy_serdes_tbl,
>  	.serdes_tbl_num		= ARRAY_SIZE(sm6115_ufsphy_serdes_tbl),
>  	.tx_tbl			= sm6115_ufsphy_tx_tbl,
> @@ -1172,6 +1174,9 @@ static const struct of_device_id 
> qmp_ufs_of_match_table[] = {
>  	}, {
>  		.compatible = "qcom,sm6115-qmp-ufs-phy",
>  		.data = &sm6115_ufsphy_cfg,
> +	}, {
> +		.compatible = "qcom,sm6125-qmp-ufs-phy",
> +		.data = &sm6115_ufsphy_cfg,
>  	}, {
>  		.compatible = "qcom,sm6350-qmp-ufs-phy",
>  		.data = &sdm845_ufsphy_cfg,
> --
> 2.38.1
> 
Reviewed-by: Martin Botka <martin.botka@somainline.org>

Happy new year as well :)



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string
  2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
                     ` (2 preceding siblings ...)
  2022-12-31 22:53   ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Martin Botka
@ 2023-01-01 15:40   ` Krzysztof Kozlowski
  3 siblings, 0 replies; 22+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-01 15:40 UTC (permalink / raw)
  To: Lux Aliaga, Andy Gross, Bjorn Andersson, Konrad Dybcio,
	Alim Akhtar, Avri Altman, Bart Van Assche, Rob Herring,
	Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, linux-scsi, devicetree, linux-kernel

On 31/12/2022 23:24, Lux Aliaga wrote:
> Document the compatible for UFS found on the SM6125.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board
  2022-12-31 22:24 ` [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board Lux Aliaga
  2022-12-31 22:50   ` Martin Botka
@ 2023-01-01 15:40   ` Krzysztof Kozlowski
  2023-01-01 18:55     ` Lux Aliaga
  1 sibling, 1 reply; 22+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-01 15:40 UTC (permalink / raw)
  To: Lux Aliaga, Andy Gross, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, devicetree, linux-kernel

On 31/12/2022 23:24, Lux Aliaga wrote:
> Document the Xiaomi Mi A3 (xiaomi-laurel-sprout) smartphone which is
> based on the Snapdragon 665 SoC.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>

This is a friendly reminder during the review process.

It looks like you received a tag and forgot to add it.

If you do not know the process, here is a short explanation:
Please add Acked-by/Reviewed-by/Tested-by tags when posting new
versions. However, there's no need to repost patches *only* to add the
tags. The upstream maintainer will do that for acks received on the
version they apply.

https://elixir.bootlin.com/linux/v5.17/source/Documentation/process/submitting-patches.rst#L540

If a tag was not added on purpose, please state why and what changed.




Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 4/6] arm64: dts: qcom: sm6125: Add UFS nodes
  2022-12-31 22:24 ` [PATCH v5 4/6] arm64: dts: qcom: sm6125: Add UFS nodes Lux Aliaga
@ 2023-01-01 15:41   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 22+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-01 15:41 UTC (permalink / raw)
  To: Lux Aliaga, Andy Gross, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, devicetree, linux-kernel

On 31/12/2022 23:24, Lux Aliaga wrote:
> Adds a UFS host controller node and its corresponding PHY to
> the sm6125 platform.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  arch/arm64/boot/dts/qcom/sm6125.dtsi | 59 ++++++++++++++++++++++++++++
>  1 file changed, 59 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sm6125.dtsi b/arch/arm64/boot/dts/qcom/sm6125.dtsi
> index df5453fcf2b9..9cb081332849 100644
> --- a/arch/arm64/boot/dts/qcom/sm6125.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sm6125.dtsi
> @@ -511,6 +511,65 @@ sdhc_2: mmc@4784000 {
>  			status = "disabled";
>  		};
>  
> +		ufs_mem_hc: ufs@4804000 {
> +			compatible = "qcom,sm6125-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
> +			reg = <0x04804000 0x3000>, <0x04810000 0x8000>;
> +			reg-names = "std", "ice";
> +			interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
> +			phys = <&ufs_mem_phy>;
> +			phy-names = "ufsphy";
> +			lanes-per-direction = <1>;
> +			#reset-cells = <1>;
> +			resets = <&gcc GCC_UFS_PHY_BCR>;
> +			reset-names = "rst";
> +			iommus = <&apps_smmu 0x200 0x0>;
> +
> +			clock-names = "core_clk",
> +				      "bus_aggr_clk",
> +				      "iface_clk",
> +				      "core_clk_unipro",
> +				      "ref_clk",
> +				      "tx_lane0_sync_clk",
> +				      "rx_lane0_sync_clk",
> +				      "ice_core_clk";
> +			clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
> +				 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>,
> +				 <&gcc GCC_UFS_PHY_AHB_CLK>,
> +				 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
> +				 <&rpmcc RPM_SMD_XO_CLK_SRC>,
> +				 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
> +				 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
> +				 <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
> +			freq-table-hz = <50000000 240000000>,
> +					<0 0>,
> +					<0 0>,
> +					<37500000 150000000>,
> +					<0 0>,
> +					<0 0>,
> +					<0 0>,
> +					<75000000 300000000>;
> +
> +			non-removable;

Does not look like you tested the bindings. Please run `make
dt_binding_check` (see
Documentation/devicetree/bindings/writing-schema.rst for instructions).

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout
  2022-12-31 22:24 ` [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout Lux Aliaga
@ 2023-01-01 15:44   ` Krzysztof Kozlowski
  2023-01-01 23:39   ` Marijn Suijten
  1 sibling, 0 replies; 22+ messages in thread
From: Krzysztof Kozlowski @ 2023-01-01 15:44 UTC (permalink / raw)
  To: Lux Aliaga, Andy Gross, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Kees Cook, Tony Luck,
	Guilherme G. Piccoli
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, devicetree, linux-kernel, linux-hardening

On 31/12/2022 23:24, Lux Aliaga wrote:
> Adds support for the Xiaomi Mi A3 (xiaomi-laurel-sprout). Here's a
> summary on what's working.
> 
> - dmesg output to bootloader preconfigured display
> - USB
> - UFS
> - SD card


(...)

> +	};
> +
> +	extcon_usb: usb-id {
> +		compatible = "linux,extcon-usb-gpio";
> +		id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>;
> +	};
> +
> +	gpio-keys {
> +		status = "okay";

Drop.

> +		compatible = "gpio-keys";
> +		autorepeat;
> +
> +		key-vol-up {
> +			label = "Volume Up";
> +			gpios = <&pm6125_gpio 5 GPIO_ACTIVE_LOW>;
> +			linux,input-type = <1>;
> +			linux,code = <KEY_VOLUMEUP>;
> +			gpio-key,wakeup;
> +			debounce-interval = <15>;
> +		};
> +	};
> +
> +	thermal-zones {
> +		rf-pa0-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <0>;
> +			thermal-sensors = <&pm6125_adc_tm 0>;
> +
> +			trips {
> +				active-config0 {
> +					temperature = <125000>;
> +					hysteresis = <1000>;
> +					type = "critical";
> +				};
> +			};
> +		};
> +
> +		quiet-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <5000>;
> +			thermal-sensors = <&pm6125_adc_tm 1>;
> +
> +			trips {
> +				active-config0 {
> +					temperature = <125000>;
> +					hysteresis = <1000>;
> +					type = "critical";
> +				};
> +			};
> +		};
> +
> +		xo-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <0>;
> +			thermal-sensors = <&pm6125_adc_tm 2>;
> +
> +			trips {
> +				active-config0 {
> +					temperature = <125000>;
> +					hysteresis = <1000>;
> +					type = "critical";
> +				};
> +			};
> +		};
> +	};
> +};
> +
> +&hsusb_phy1 {
> +	vdd-supply = <&vreg_l7a>;
> +	vdda-pll-supply = <&vreg_l10a>;
> +	vdda-phy-dpdm-supply = <&vreg_l15a>;
> +	status = "okay";
> +};
> +
> +&pm6125_adc {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&camera_flash_therm &emmc_ufs_therm>;
> +
> +	rf-pa0-therm@4d {
> +		reg = <ADC5_AMUX_THM1_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +
> +	quiet-therm@4e {
> +		reg = <ADC5_AMUX_THM2_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +
> +	camera-flash-therm@52 {
> +		reg = <ADC5_GPIO1_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +
> +	emmc-ufs-therm@54 {
> +		reg = <ADC5_GPIO3_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +};
> +
> +&pm6125_adc_tm {
> +	status = "okay";
> +
> +	rf-pa0-therm@0 {
> +		reg = <0>;
> +		io-channels = <&pm6125_adc ADC5_AMUX_THM1_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time-us = <200>;
> +	};
> +
> +	quiet-therm@1 {
> +		reg = <1>;
> +		io-channels = <&pm6125_adc ADC5_AMUX_THM2_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time-us = <200>;
> +	};
> +
> +	xo-therm@2 {
> +		reg = <2>;
> +		io-channels = <&pm6125_adc ADC5_XO_THERM_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time-us = <200>;
> +	};
> +};
> +
> +&pm6125_gpio {
> +	camera_flash_therm: camera-flash-therm-state {
> +		pins = "gpio3";
> +		function = PMIC_GPIO_FUNC_NORMAL;
> +		bias-high-impedance;
> +	};
> +
> +	emmc_ufs_therm: emmc-ufs-therm-state {
> +		pins = "gpio6";
> +		function = PMIC_GPIO_FUNC_NORMAL;
> +		bias-high-impedance;
> +	};
> +
> +	key_vol_up: key_vol_up {


No underscores in node names, missing state suffix.

> +		pins = "gpio5";
> +		function = PMIC_GPIO_FUNC_NORMAL;
> +		input-enable;
> +		bias-pull-up;
> +	};
> +};
> +

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board
  2022-12-31 22:50   ` Martin Botka
@ 2023-01-01 18:54     ` Lux Aliaga
  0 siblings, 0 replies; 22+ messages in thread
From: Lux Aliaga @ 2023-01-01 18:54 UTC (permalink / raw)
  To: Martin Botka
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, ~postmarketos/upstreaming, marijn.suijten,
	linux-arm-msm, devicetree, linux-kernel


On 31/12/2022 19:50, Martin Botka wrote:
>
>
> On Sat, Dec 31 2022 at 07:24:19 PM -03:00:00, Lux Aliaga 
> <they@mint.lgbt> wrote:
>> Document the Xiaomi Mi A3 (xiaomi-laurel-sprout) smartphone which is
>> based on the Snapdragon 665 SoC.
>>
>> Signed-off-by: Lux Aliaga <they@mint.lgbt>
>> ---
>>  Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml 
>> b/Documentation/devicetree/bindings/arm/qcom.yaml
>> index 27063a045bd0..4923dafb5d7a 100644
>> --- a/Documentation/devicetree/bindings/arm/qcom.yaml
>> +++ b/Documentation/devicetree/bindings/arm/qcom.yaml
>> @@ -793,6 +793,7 @@ properties:
>>        - items:
>>            - enum:
>>                - sony,pdx201
>> +              - xiaomi,laurel-sprout
> From what i can see laurel_sprout is the correct and official codename 
> for the device.
>
> Not sure here at all but should we maybe use that as it is the 
> official codename ?
>
> -Martin
I defined it as shown due to the following comment. 
https://lore.kernel.org/linux-devicetree/c4bf26a4-16bb-6ed8-ae70-1947998e32cc@linaro.org/

-- 
Lux Aliaga
https://nixgoat.me/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board
  2023-01-01 15:40   ` Krzysztof Kozlowski
@ 2023-01-01 18:55     ` Lux Aliaga
  0 siblings, 0 replies; 22+ messages in thread
From: Lux Aliaga @ 2023-01-01 18:55 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Andy Gross, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, devicetree, linux-kernel

On 01/01/2023 12:40, Krzysztof Kozlowski wrote:
> On 31/12/2022 23:24, Lux Aliaga wrote:
>> Document the Xiaomi Mi A3 (xiaomi-laurel-sprout) smartphone which is
>> based on the Snapdragon 665 SoC.
>>
>> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> This is a friendly reminder during the review process.
>
> It looks like you received a tag and forgot to add it.
>
> If you do not know the process, here is a short explanation:
> Please add Acked-by/Reviewed-by/Tested-by tags when posting new
> versions. However, there's no need to repost patches *only* to add the
> tags. The upstream maintainer will do that for acks received on the
> version they apply.
>
> https://elixir.bootlin.com/linux/v5.17/source/Documentation/process/submitting-patches.rst#L540
>
> If a tag was not added on purpose, please state why and what changed.
>
>
>
>
> Best regards,
> Krzysztof
This was accidental. I've already fixed it so in the next revision these 
changes get applied. My apologies.

-- 
Lux Aliaga
https://nixgoat.me/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout
  2022-12-31 22:24 ` [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout Lux Aliaga
  2023-01-01 15:44   ` Krzysztof Kozlowski
@ 2023-01-01 23:39   ` Marijn Suijten
  1 sibling, 0 replies; 22+ messages in thread
From: Marijn Suijten @ 2023-01-01 23:39 UTC (permalink / raw)
  To: Lux Aliaga
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Kees Cook, Tony Luck, Guilherme G. Piccoli,
	~postmarketos/upstreaming, martin.botka, linux-arm-msm,
	devicetree, linux-kernel, linux-hardening

On 2022-12-31 19:24:20, Lux Aliaga wrote:
> Adds support for the Xiaomi Mi A3 (xiaomi-laurel-sprout). Here's a

Add*

> summary on what's working.

What you provide in this patch*

> - dmesg output to bootloader preconfigured display
> - USB
> - UFS
> - SD card
> - SMD RPM regulators
> - Volume Up, Down and Power buttons
> - Thermistors
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  arch/arm64/boot/dts/qcom/Makefile             |   1 +
>  .../dts/qcom/sm6125-xiaomi-laurel-sprout.dts  | 413 ++++++++++++++++++
>  2 files changed, 414 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> 
> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
> index 3e79496292e7..2b2a0170db14 100644
> --- a/arch/arm64/boot/dts/qcom/Makefile
> +++ b/arch/arm64/boot/dts/qcom/Makefile
> @@ -157,6 +157,7 @@ dtb-$(CONFIG_ARCH_QCOM)	+= sdm850-lenovo-yoga-c630.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sdm850-samsung-w737.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm4250-oneplus-billie2.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm6125-sony-xperia-seine-pdx201.dtb
> +dtb-$(CONFIG_ARCH_QCOM)	+= sm6125-xiaomi-laurel-sprout.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm6350-sony-xperia-lena-pdx213.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm6375-sony-xperia-murray-pdx225.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm7225-fairphone-fp4.dtb
> diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> new file mode 100644
> index 000000000000..cc338c7ef358
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> @@ -0,0 +1,413 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt>
> + */
> +
> +/dts-v1/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +#include <dt-bindings/input/gpio-keys.h>
> +#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
> +#include "sm6125.dtsi"
> +#include "pm6125.dtsi"
> +
> +/ {
> +	model = "Xiaomi Mi A3";
> +	compatible = "xiaomi,laurel-sprout", "qcom,sm6125";
> +	chassis-type = "handset";
> +
> +	/* required for bootloader to select correct board */
> +	qcom,msm-id = <394 0>; /* sm6125 v1 */
> +	qcom,board-id = <11 0>;
> +
> +	chosen {
> +		#address-cells = <2>;
> +		#size-cells = <2>;
> +		ranges;
> +
> +		framebuffer0: framebuffer@5c000000 {
> +			compatible = "simple-framebuffer";
> +			reg = <0 0x5c000000 0 (1560 * 720 * 4)>;
> +			width = <720>;
> +			height = <1560>;
> +			stride = <(720 * 4)>;
> +			format = "a8r8g8b8";
> +		};
> +	};
> +
> +	reserved-memory {
> +		#address-cells = <2>;
> +		#size-cells = <2>;
> +
> +		debug_mem: debug@ffb00000 {
> +			reg = <0x0 0xffb00000 0x0 0xc0000>;
> +			no-map;
> +		};
> +
> +		last_log_mem: lastlog@ffbc0000 {
> +			reg = <0x0 0xffbc0000 0x0 0x80000>;
> +			no-map;
> +		};
> +
> +		pstore_mem: ramoops@ffc00000 {
> +			compatible = "ramoops";
> +			reg = <0x0 0xffc40000 0x0 0xc0000>;
> +			record-size = <0x1000>;
> +			console-size = <0x40000>;
> +			msg-size = <0x20000 0x20000>;
> +		};
> +
> +		cmdline_mem: memory@ffd00000 {
> +			reg = <0x0 0xffd40000 0x0 0x1000>;
> +			no-map;
> +		};
> +	};
> +
> +	extcon_usb: usb-id {
> +		compatible = "linux,extcon-usb-gpio";
> +		id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>;
> +	};
> +
> +	gpio-keys {
> +		status = "okay";
> +		compatible = "gpio-keys";
> +		autorepeat;

What's the purpose of this?  We're phasing it out on other boards...

Also, no pinctrl to keep gpio5 properly biased?  You included a
key_vol_up (with wrong node name...) node though...

> +
> +		key-vol-up {
> +			label = "Volume Up";
> +			gpios = <&pm6125_gpio 5 GPIO_ACTIVE_LOW>;
> +			linux,input-type = <1>;
> +			linux,code = <KEY_VOLUMEUP>;
> +			gpio-key,wakeup;

This is a deprecated property, and dtbs_check would have pointed that
out as it is not part of gpio-keys.yaml.  As mentioned by Krzysztof, did
you run dtbs_check/dt_binding_check?

> +			debounce-interval = <15>;
> +		};
> +	};

In the end this looks like a copy-paste of the gpio-keys provided by
sm6125-sony-xperia-seine-pdx201.dts, please apply the same cleanup as
https://lore.kernel.org/linux-arm-msm/20221222192443.119103-1-marijn.suijten@somainline.org/

> +	thermal-zones {
> +		rf-pa0-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <0>;
> +			thermal-sensors = <&pm6125_adc_tm 0>;
> +
> +			trips {
> +				active-config0 {
> +					temperature = <125000>;
> +					hysteresis = <1000>;
> +					type = "critical";
> +				};
> +			};
> +		};
> +
> +		quiet-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <5000>;
> +			thermal-sensors = <&pm6125_adc_tm 1>;
> +
> +			trips {
> +				active-config0 {
> +					temperature = <125000>;
> +					hysteresis = <1000>;
> +					type = "critical";
> +				};
> +			};
> +		};
> +
> +		xo-thermal {
> +			polling-delay-passive = <0>;
> +			polling-delay = <0>;
> +			thermal-sensors = <&pm6125_adc_tm 2>;
> +
> +			trips {
> +				active-config0 {
> +					temperature = <125000>;
> +					hysteresis = <1000>;
> +					type = "critical";
> +				};
> +			};
> +		};
> +	};
> +};
> +
> +&hsusb_phy1 {
> +	vdd-supply = <&vreg_l7a>;
> +	vdda-pll-supply = <&vreg_l10a>;
> +	vdda-phy-dpdm-supply = <&vreg_l15a>;
> +	status = "okay";
> +};
> +
> +&pm6125_adc {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&camera_flash_therm &emmc_ufs_therm>;
> +
> +	rf-pa0-therm@4d {

You might want to use labels instead of node names to avoid the mess
discussed in
https://lore.kernel.org/linux-arm-msm/20221209215308.1781047-1-marijn.suijten@somainline.org/

Only for the channels though, not the thermal zones.

> +		reg = <ADC5_AMUX_THM1_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +
> +	quiet-therm@4e {
> +		reg = <ADC5_AMUX_THM2_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +
> +	camera-flash-therm@52 {
> +		reg = <ADC5_GPIO1_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +
> +	emmc-ufs-therm@54 {
> +		reg = <ADC5_GPIO3_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time = <200>;
> +		qcom,pre-scaling = <1 1>;
> +	};
> +};
> +
> +&pm6125_adc_tm {
> +	status = "okay";
> +
> +	rf-pa0-therm@0 {
> +		reg = <0>;
> +		io-channels = <&pm6125_adc ADC5_AMUX_THM1_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time-us = <200>;
> +	};
> +
> +	quiet-therm@1 {
> +		reg = <1>;
> +		io-channels = <&pm6125_adc ADC5_AMUX_THM2_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time-us = <200>;
> +	};
> +
> +	xo-therm@2 {
> +		reg = <2>;
> +		io-channels = <&pm6125_adc ADC5_XO_THERM_100K_PU>;
> +		qcom,ratiometric;
> +		qcom,hw-settle-time-us = <200>;
> +	};
> +};
> +
> +&pm6125_gpio {
> +	camera_flash_therm: camera-flash-therm-state {
> +		pins = "gpio3";
> +		function = PMIC_GPIO_FUNC_NORMAL;
> +		bias-high-impedance;
> +	};
> +
> +	emmc_ufs_therm: emmc-ufs-therm-state {
> +		pins = "gpio6";
> +		function = PMIC_GPIO_FUNC_NORMAL;
> +		bias-high-impedance;
> +	};
> +
> +	key_vol_up: key_vol_up {
> +		pins = "gpio5";
> +		function = PMIC_GPIO_FUNC_NORMAL;
> +		input-enable;
> +		bias-pull-up;
> +	};
> +};
> +
> +&pon_pwrkey {
> +	status = "okay";
> +};
> +
> +&pon_resin {
> +	status = "okay";
> +	linux,code = <KEY_VOLUMEDOWN>;
> +};
> +
> +&rpm_requests {
> +	regulators-0 {
> +		compatible = "qcom,rpm-pm6125-regulators";
> +
> +		vreg_s6a: s6 {
> +			regulator-min-microvolt = <936000>;
> +			regulator-max-microvolt = <1422000>;
> +		};
> +
> +		vreg_l1a: l1 {
> +			regulator-min-microvolt = <1200000>;
> +			regulator-max-microvolt = <1256000>;
> +		};
> +
> +		vreg_l2a: l2 {
> +			regulator-min-microvolt = <1000000>;
> +			regulator-max-microvolt = <1056000>;
> +		};
> +
> +		vreg_l3a: l3 {
> +			regulator-min-microvolt = <1000000>;
> +			regulator-max-microvolt = <1064000>;
> +		};
> +
> +		vreg_l4a: l4 {
> +			regulator-min-microvolt = <872000>;
> +			regulator-max-microvolt = <976000>;
> +		};
> +
> +		vreg_l5a: l5 {
> +			regulator-min-microvolt = <1648000>;
> +			regulator-max-microvolt = <2950000>;

sdhci doesn't set a load for vqmmc, only vmmc?  Otherwise I'm expecting
an regulator-allow-set-load here similar to l22.

> +		};
> +
> +		vreg_l6a: l6 {
> +			regulator-min-microvolt = <576000>;
> +			regulator-max-microvolt = <656000>;
> +		};
> +
> +		vreg_l7a: l7 {
> +			regulator-min-microvolt = <872000>;
> +			regulator-max-microvolt = <976000>;
> +		};
> +
> +		vreg_l8a: l8 {
> +			regulator-min-microvolt = <400000>;
> +			regulator-max-microvolt = <728000>;
> +		};
> +
> +		vreg_l9a: l9 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1896000>;
> +		};
> +
> +		vreg_l10a: l10 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1896000>;
> +		};
> +
> +		vreg_l11a: l11 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1952000>;
> +		};
> +
> +		vreg_l12a: l12 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1996000>;
> +		};
> +
> +		vreg_l13a: l13 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1832000>;
> +		};
> +
> +		vreg_l14a: l14 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1904000>;
> +		};
> +
> +		vreg_l15a: l15 {
> +			regulator-min-microvolt = <3104000>;
> +			regulator-max-microvolt = <3232000>;
> +		};
> +
> +		vreg_l16a: l16 {
> +			regulator-min-microvolt = <1800000>;
> +			regulator-max-microvolt = <1904000>;
> +		};
> +
> +		vreg_l17a: l17 {
> +			regulator-min-microvolt = <1248000>;
> +			regulator-max-microvolt = <1304000>;
> +		};
> +
> +		vreg_l18a: l18 {
> +			regulator-min-microvolt = <1200000>;
> +			regulator-max-microvolt = <1264000>;
> +		};
> +
> +		vreg_l19a: l19 {
> +			regulator-min-microvolt = <1648000>;
> +			regulator-max-microvolt = <2952000>;
> +		};
> +
> +		vreg_l20a: l20 {
> +			regulator-min-microvolt = <1648000>;
> +			regulator-max-microvolt = <2952000>;
> +		};
> +
> +		vreg_l21a: l21 {
> +			regulator-min-microvolt = <2600000>;
> +			regulator-max-microvolt = <2856000>;
> +		};
> +
> +		vreg_l22a: l22 {
> +			regulator-min-microvolt = <2944000>;
> +			regulator-max-microvolt = <2950000>;
> +			regulator-allow-set-load;
> +		};
> +
> +		vreg_l23a: l23 {
> +			regulator-min-microvolt = <3000000>;
> +			regulator-max-microvolt = <3400000>;
> +		};
> +
> +		vreg_l24a: l24 {
> +			regulator-min-microvolt = <2944000>;
> +			regulator-max-microvolt = <3304000>;
> +		};
> +	};
> +};
> +
> +&sdc2_off_state {
> +	sd-cd-pins {
> +		pins = "gpio98";
> +		function = "gpio";
> +		drive-strength = <2>;
> +		bias-disable;
> +	};
> +};
> +
> +&sdc2_on_state {
> +	sd-cd-pins {
> +		pins = "gpio98";
> +		function = "gpio";
> +		drive-strength = <2>;
> +		bias-pull-up;
> +	};
> +};
> +
> +&sdhc_2 {
> +	cd-gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>;
> +	vmmc-supply = <&vreg_l22a>;
> +	vqmmc-supply = <&vreg_l5a>;
> +	no-sdio;
> +	no-mmc;
> +	status = "okay";
> +};
> +
> +&tlmm {
> +	gpio-reserved-ranges = <22 2>, <28 6>;
> +};
> +
> +&ufs_mem_hc {
> +	vcc-supply = <&vreg_l24a>;
> +	vccq2-supply = <&vreg_l11a>;
> +	vcc-max-microamp = <600000>;
> +	vccq2-max-microamp = <600000>;
> +	status = "okay";
> +};
> +
> +&ufs_mem_phy {
> +	vdda-phy-supply = <&vreg_l4a>;
> +	vdda-pll-supply = <&vreg_l10a>;
> +	vdda-phy-max-microamp = <51400>;
> +	vdda-pll-max-microamp = <14200>;

(Also for ufs_mem_hc) does the driver set these loads on the regulators?
If so, shouldn't those have regulator-allow-set-load?

- Marijn

> +	vddp-ref-clk-supply = <&vreg_l18a>;
> +	status = "okay";
> +};
> +
> +&usb3 {
> +	status = "okay";
> +};
> +
> +&usb3_dwc3 {
> +	extcon = <&extcon_usb>;
> +};
> -- 
> 2.38.1
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125
  2022-12-31 22:24 ` [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125 Lux Aliaga
  2022-12-31 22:53   ` Martin Botka
@ 2023-01-03 11:20   ` Dhruva Gole
  2023-01-08 20:15   ` Rob Herring
  2 siblings, 0 replies; 22+ messages in thread
From: Dhruva Gole @ 2023-01-03 11:20 UTC (permalink / raw)
  To: Lux Aliaga, Andy Gross, Bjorn Andersson, Konrad Dybcio,
	Vinod Koul, Kishon Vijay Abraham I, Rob Herring,
	Krzysztof Kozlowski
  Cc: ~postmarketos/upstreaming, martin.botka, marijn.suijten,
	linux-arm-msm, linux-phy, devicetree, linux-kernel



On 01/01/23 03:54, Lux Aliaga wrote:
> Document the QMP UFS PHY compatible for SM6125.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---

Acked-by: Dhruva Gole <d-gole@ti.com>

-- 
Thanks and Regards,
Dhruva Gole

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125
  2022-12-31 22:24 ` [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125 Lux Aliaga
  2022-12-31 22:53   ` Martin Botka
  2023-01-03 11:20   ` Dhruva Gole
@ 2023-01-08 20:15   ` Rob Herring
  2023-01-08 22:20     ` Lux Aliaga
  2 siblings, 1 reply; 22+ messages in thread
From: Rob Herring @ 2023-01-08 20:15 UTC (permalink / raw)
  To: Lux Aliaga
  Cc: linux-phy, marijn.suijten, Vinod Koul, linux-kernel,
	martin.botka, Kishon Vijay Abraham I, devicetree, Konrad Dybcio,
	Andy Gross, Rob Herring, Bjorn Andersson,
	~postmarketos/upstreaming, Krzysztof Kozlowski, linux-arm-msm


On Sat, 31 Dec 2022 19:24:16 -0300, Lux Aliaga wrote:
> Document the QMP UFS PHY compatible for SM6125.
> 
> Signed-off-by: Lux Aliaga <they@mint.lgbt>
> ---
>  .../devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml       | 1 +
>  1 file changed, 1 insertion(+)
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125
  2023-01-08 20:15   ` Rob Herring
@ 2023-01-08 22:20     ` Lux Aliaga
  0 siblings, 0 replies; 22+ messages in thread
From: Lux Aliaga @ 2023-01-08 22:20 UTC (permalink / raw)
  To: Rob Herring
  Cc: linux-phy, marijn.suijten, Vinod Koul, linux-kernel,
	martin.botka, Kishon Vijay Abraham I, devicetree, Konrad Dybcio,
	Andy Gross, Rob Herring, Bjorn Andersson,
	~postmarketos/upstreaming, Krzysztof Kozlowski, linux-arm-msm

On 08/01/2023 17:15, Rob Herring wrote:

> On Sat, 31 Dec 2022 19:24:16 -0300, Lux Aliaga wrote:
>> Document the QMP UFS PHY compatible for SM6125.
>>
>> Signed-off-by: Lux Aliaga <they@mint.lgbt>
>> ---
>>   .../devicetree/bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml       | 1 +
>>   1 file changed, 1 insertion(+)
>>
> Acked-by: Rob Herring <robh@kernel.org>
Hi! You seem to have acked this patch from a previous revision of the 
patchset. However, it was left unchanged so if I need to submit a new 
revision I'll include this signature. You can the newer revision here: 
https://lore.kernel.org/linux-devicetree/20230108195336.388349-1-they@mint.lgbt/T/#m9862de18e18e1c0f4abf9db0bcc7c4d2f7f1a948

-- 
Lux Aliaga
https://nixgoat.me/


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2023-01-08 22:20 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20221231222420.75233-1-they@mint.lgbt>
2022-12-31 22:24 ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Lux Aliaga
2022-12-31 22:29   ` Lux Aliaga
2022-12-31 22:32   ` [PATCH v5 0/6] arm64: dts: qcom: sm6125: UFS and xiaomi-laurel-sprout support Lux Aliaga
2022-12-31 22:53   ` [PATCH v5 1/6] dt-bindings: ufs: qcom: Add SM6125 compatible string Martin Botka
2023-01-01 15:40   ` Krzysztof Kozlowski
2022-12-31 22:24 ` [PATCH v5 2/6] dt-bindings: phy: Add QMP UFS PHY compatible for SM6125 Lux Aliaga
2022-12-31 22:53   ` Martin Botka
2023-01-03 11:20   ` Dhruva Gole
2023-01-08 20:15   ` Rob Herring
2023-01-08 22:20     ` Lux Aliaga
2022-12-31 22:24 ` [PATCH v5 3/6] phy: qcom-qmp: Add SM6125 UFS PHY support Lux Aliaga
2022-12-31 23:18   ` Martin Botka
2022-12-31 22:24 ` [PATCH v5 4/6] arm64: dts: qcom: sm6125: Add UFS nodes Lux Aliaga
2023-01-01 15:41   ` Krzysztof Kozlowski
2022-12-31 22:24 ` [PATCH v5 5/6] dt-bindings: arm: qcom: Document xiaomi,laurel-sprout board Lux Aliaga
2022-12-31 22:50   ` Martin Botka
2023-01-01 18:54     ` Lux Aliaga
2023-01-01 15:40   ` Krzysztof Kozlowski
2023-01-01 18:55     ` Lux Aliaga
2022-12-31 22:24 ` [PATCH v5 6/6] arm64: dts: qcom: sm6125: Initial support for xiaomi-laurel-sprout Lux Aliaga
2023-01-01 15:44   ` Krzysztof Kozlowski
2023-01-01 23:39   ` Marijn Suijten

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).