The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH 0/2] rtq2208: Remove the unnecessary MTP_SEL property
@ 2026-06-25  2:18 cy_huang
  2026-06-25  2:18 ` [PATCH 1/2] regulator: dt-bindings: rtq2208: Label mtp-sel-high property as deprecated cy_huang
  2026-06-25  2:18 ` [PATCH 2/2] regualtor: rtq2208: Initiate the default MTP_SEL state by hardware register cy_huang
  0 siblings, 2 replies; 3+ messages in thread
From: cy_huang @ 2026-06-25  2:18 UTC (permalink / raw)
  To: Mark Brown, Krzysztof Kozlowski
  Cc: Rob Herring, Conor Dooley, Liam Girdwood, ChiYuan Huang,
	Yoon Dong Min, edward_kim, devicetree, linux-kernel

From: ChiYuan Huang <cy_huang@richtek.com>

This patch series remove the 'richtek,mtp-sel-high' property usage.

ChiYuan Huang (2):
  regulator: dt-bindings: rtq2208: Label mtp-sel-high property as
    deprecated
  regualtor: rtq2208: Initiate the default MTP_SEL state by hardware
    register

 .../devicetree/bindings/regulator/richtek,rtq2208.yaml     | 3 +++
 drivers/regulator/rtq2208-regulator.c                      | 7 ++++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

-- 
2.43.0


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

* [PATCH 1/2] regulator: dt-bindings: rtq2208: Label mtp-sel-high property as deprecated
  2026-06-25  2:18 [PATCH 0/2] rtq2208: Remove the unnecessary MTP_SEL property cy_huang
@ 2026-06-25  2:18 ` cy_huang
  2026-06-25  2:18 ` [PATCH 2/2] regualtor: rtq2208: Initiate the default MTP_SEL state by hardware register cy_huang
  1 sibling, 0 replies; 3+ messages in thread
From: cy_huang @ 2026-06-25  2:18 UTC (permalink / raw)
  To: Mark Brown, Krzysztof Kozlowski
  Cc: Rob Herring, Conor Dooley, Liam Girdwood, ChiYuan Huang,
	Yoon Dong Min, edward_kim, devicetree, linux-kernel

From: ChiYuan Huang <cy_huang@richtek.com>

Since it can be identified by hardware register, label the unnecessary
property 'richtek,mtp-sel-high' as deprecated.

Signed-off-by: ChiYuan Huang <cy_huang@richtek.com>
---
 .../devicetree/bindings/regulator/richtek,rtq2208.yaml         | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/regulator/richtek,rtq2208.yaml b/Documentation/devicetree/bindings/regulator/richtek,rtq2208.yaml
index 022c1f197364..08648916e1fb 100644
--- a/Documentation/devicetree/bindings/regulator/richtek,rtq2208.yaml
+++ b/Documentation/devicetree/bindings/regulator/richtek,rtq2208.yaml
@@ -42,11 +42,14 @@ properties:
 
   richtek,mtp-sel-high:
     type: boolean
+    deprecated: true
     description:
       vout register selection based on this boolean value.
       false - Using DVS0 register setting to adjust vout
       true - Using DVS1 register setting to adjust vout
 
+      The property is now deprecated. Will be identified by RG HW register.
+
   regulators:
     type: object
     additionalProperties: false
-- 
2.43.0


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

* [PATCH 2/2] regualtor: rtq2208: Initiate the default MTP_SEL state by hardware register
  2026-06-25  2:18 [PATCH 0/2] rtq2208: Remove the unnecessary MTP_SEL property cy_huang
  2026-06-25  2:18 ` [PATCH 1/2] regulator: dt-bindings: rtq2208: Label mtp-sel-high property as deprecated cy_huang
@ 2026-06-25  2:18 ` cy_huang
  1 sibling, 0 replies; 3+ messages in thread
From: cy_huang @ 2026-06-25  2:18 UTC (permalink / raw)
  To: Mark Brown, Krzysztof Kozlowski
  Cc: Rob Herring, Conor Dooley, Liam Girdwood, ChiYuan Huang,
	Yoon Dong Min, edward_kim, devicetree, linux-kernel

From: ChiYuan Huang <cy_huang@richtek.com>

Read the initial MTP_SEL state by hardware register to prevent the wrong
specified property value from the conflict of hardware pin assignment.

Signed-off-by: ChiYuan Huang <cy_huang@richtek.com>
---
 drivers/regulator/rtq2208-regulator.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/regulator/rtq2208-regulator.c b/drivers/regulator/rtq2208-regulator.c
index f669a562f036..7fe082def494 100644
--- a/drivers/regulator/rtq2208-regulator.c
+++ b/drivers/regulator/rtq2208-regulator.c
@@ -12,6 +12,7 @@
 #include <linux/mod_devicetable.h>
 
 /* Register */
+#define RTQ2208_REG_FSOUTB_CNTL			0x11
 #define RTQ2208_REG_GLOBAL_INT1			0x12
 #define RTQ2208_REG_FLT_RECORDBUCK_CB		0x18
 #define RTQ2208_REG_GLOBAL_INT1_MASK		0x1D
@@ -34,6 +35,7 @@
 #define RTQ2208_REG_HIDDEN1			0xFF
 
 /* Mask */
+#define RTQ2208_MTP_SEL_RO_MASK			BIT(7)
 #define RTQ2208_BUCK_NR_MTP_SEL_MASK		GENMASK(7, 0)
 #define RTQ2208_BUCK_EN_NR_MTP_SEL0_MASK	BIT(0)
 #define RTQ2208_BUCK_EN_NR_MTP_SEL1_MASK	BIT(1)
@@ -465,10 +467,13 @@ static int rtq2208_parse_regulator_dt_data(int n_regulator, const unsigned int *
 		struct rtq2208_regulator_desc *rdesc[RTQ2208_LDO_MAX], struct device *dev,
 		unsigned int ldo1_fixed, unsigned int ldo2_fixed)
 {
+	struct regmap *regmap = dev_get_regmap(dev, NULL);
 	int mtp_sel, i, idx;
 
 	/* get mtp_sel0 or mtp_sel1 */
-	mtp_sel = device_property_read_bool(dev, "richtek,mtp-sel-high");
+	mtp_sel = regmap_test_bits(regmap, RTQ2208_REG_FSOUTB_CNTL, RTQ2208_MTP_SEL_RO_MASK);
+	if (mtp_sel < 0)
+		return dev_err_probe(dev, mtp_sel, "Failed to init mtp_sel state\n");
 
 	for (i = 0; i < n_regulator; i++) {
 		idx = regulator_idx_table[i];
-- 
2.43.0


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

end of thread, other threads:[~2026-06-25  2:21 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-25  2:18 [PATCH 0/2] rtq2208: Remove the unnecessary MTP_SEL property cy_huang
2026-06-25  2:18 ` [PATCH 1/2] regulator: dt-bindings: rtq2208: Label mtp-sel-high property as deprecated cy_huang
2026-06-25  2:18 ` [PATCH 2/2] regualtor: rtq2208: Initiate the default MTP_SEL state by hardware register cy_huang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox