All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
@ 2025-05-23 13:12 Martijn de Gouw
  2025-05-23 13:12 ` [PATCH v2 2/2] regulator: pca9450: Add support for mode operations Martijn de Gouw
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Martijn de Gouw @ 2025-05-23 13:12 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Robin Gong
  Cc: Martijn de Gouw, linux-kernel, devicetree

Make the PWM mode on the buck controllers configurable from devicetree.
Some boards require forced PWM mode to keep the supply ripple within
acceptable limits under light load conditions.

Signed-off-by: Martijn de Gouw <martijn.de.gouw@prodrive-technologies.com>
---
Changes in v2:
  - Add the header to the binding patch
  - Improve commit message

 .../regulator/nxp,pca9450-regulator.yaml       | 14 ++++++++++++++
 .../regulator/nxp,pca9450-regulator.h          | 18 ++++++++++++++++++
 2 files changed, 32 insertions(+)
 create mode 100644 include/dt-bindings/regulator/nxp,pca9450-regulator.h

diff --git a/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml b/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml
index 4ffe5c3faea07..c7327474c64ba 100644
--- a/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml
+++ b/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml
@@ -100,6 +100,15 @@ properties:
               PMIC default "STANDBY" state voltage in uV. Only Buck1~3 have such
               dvs(dynamic voltage scaling) property.
 
+          regulator-allowed-modes:
+            description: |
+              Buck regulator operating modes allowed. Valid values below.
+              Users should use the macros from dt-bindings/regulator/nxp,pca9450-regulator.h
+                0 (PCA9450_BUCK_MODE_AUTO): Auto PFM/PWM mode
+                1 (PCA9450_BUCK_MODE_FORCE_PWM): Forced PWM mode
+            items:
+              enum: [ 0, 1 ]
+
         unevaluatedProperties: false
 
     additionalProperties: false
@@ -143,6 +152,7 @@ allOf:
 examples:
   - |
     #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/regulator/nxp,pca9450-regulator.h>
 
     i2c {
         #address-cells = <1>;
@@ -179,6 +189,8 @@ examples:
                     regulator-max-microvolt = <3400000>;
                     regulator-boot-on;
                     regulator-always-on;
+                    regulator-inital-mode = <PCA9450_BUCK_MODE_FORCE_PWM>;
+                    regulator-allowed-modes = <PCA9450_BUCK_MODE_FORCE_PWM>;
                 };
                 buck5: BUCK5 {
                     regulator-name = "BUCK5";
@@ -186,6 +198,8 @@ examples:
                     regulator-max-microvolt = <3400000>;
                     regulator-boot-on;
                     regulator-always-on;
+                    regulator-allowed-modes = <PCA9450_BUCK_MODE_AUTO
+                                               PCA9450_BUCK_MODE_FORCE_PWM>;
                 };
                 buck6: BUCK6 {
                     regulator-name = "BUCK6";
diff --git a/include/dt-bindings/regulator/nxp,pca9450-regulator.h b/include/dt-bindings/regulator/nxp,pca9450-regulator.h
new file mode 100644
index 0000000000000..08434caef429f
--- /dev/null
+++ b/include/dt-bindings/regulator/nxp,pca9450-regulator.h
@@ -0,0 +1,18 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+/*
+ * Device Tree binding constants for the NXP PCA9450A/B/C PMIC regulators
+ */
+
+#ifndef _DT_BINDINGS_REGULATORS_NXP_PCA9450_H
+#define _DT_BINDINGS_REGULATORS_NXP_PCA9450_H
+
+/*
+ * Buck mode constants which may be used in devicetree properties (eg.
+ * regulator-initial-mode, regulator-allowed-modes).
+ * See the manufacturer's datasheet for more information on these modes.
+ */
+
+#define PCA9450_BUCK_MODE_AUTO		0
+#define PCA9450_BUCK_MODE_FORCE_PWM	1
+
+#endif
-- 
2.39.2

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

* [PATCH v2 2/2] regulator: pca9450: Add support for mode operations
  2025-05-23 13:12 [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Martijn de Gouw
@ 2025-05-23 13:12 ` Martijn de Gouw
  2025-05-23 14:01 ` [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Mark Brown
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Martijn de Gouw @ 2025-05-23 13:12 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown; +Cc: Martijn de Gouw, linux-kernel

Make the PWM mode on the buck controllers configurable from
devicetree. Some boards require forced PWM mode to keep the supply
ripple within acceptable limits under light load conditions.

Signed-off-by: Martijn de Gouw <martijn.de.gouw@prodrive-technologies.com>
---
Changes in v2:
  - Add the header to the binding patch
  - Improve commit message

 drivers/regulator/pca9450-regulator.c | 120 +++++++++++++++++++++++++-
 1 file changed, 116 insertions(+), 4 deletions(-)

diff --git a/drivers/regulator/pca9450-regulator.c b/drivers/regulator/pca9450-regulator.c
index a56f3ab754fa9..8aed8c858a47b 100644
--- a/drivers/regulator/pca9450-regulator.c
+++ b/drivers/regulator/pca9450-regulator.c
@@ -16,12 +16,18 @@
 #include <linux/regulator/machine.h>
 #include <linux/regulator/of_regulator.h>
 #include <linux/regulator/pca9450.h>
+#include <dt-bindings/regulator/nxp,pca9450-regulator.h>
+
+static unsigned int pca9450_buck_get_mode(struct regulator_dev *rdev);
+static int pca9450_buck_set_mode(struct regulator_dev *rdev, unsigned int mode);
 
 struct pc9450_dvs_config {
 	unsigned int run_reg; /* dvs0 */
 	unsigned int run_mask;
 	unsigned int standby_reg; /* dvs1 */
 	unsigned int standby_mask;
+	unsigned int mode_reg; /* ctrl */
+	unsigned int mode_mask;
 };
 
 struct pca9450_regulator_desc {
@@ -78,6 +84,8 @@ static const struct regulator_ops pca9450_dvs_buck_regulator_ops = {
 	.get_voltage_sel = regulator_get_voltage_sel_regmap,
 	.set_voltage_time_sel = regulator_set_voltage_time_sel,
 	.set_ramp_delay	= regulator_set_ramp_delay_regmap,
+	.set_mode = pca9450_buck_set_mode,
+	.get_mode = pca9450_buck_get_mode,
 };
 
 static const struct regulator_ops pca9450_buck_regulator_ops = {
@@ -88,6 +96,8 @@ static const struct regulator_ops pca9450_buck_regulator_ops = {
 	.set_voltage_sel = regulator_set_voltage_sel_regmap,
 	.get_voltage_sel = regulator_get_voltage_sel_regmap,
 	.set_voltage_time_sel = regulator_set_voltage_time_sel,
+	.set_mode = pca9450_buck_set_mode,
+	.get_mode = pca9450_buck_get_mode,
 };
 
 static const struct regulator_ops pca9450_ldo_regulator_ops = {
@@ -283,7 +293,64 @@ static int pca9450_set_dvs_levels(struct device_node *np,
 	return ret;
 }
 
-static const struct pca9450_regulator_desc pca9450a_regulators[] = {
+static inline unsigned int pca9450_map_mode(unsigned int mode)
+{
+	switch (mode) {
+	case PCA9450_BUCK_MODE_AUTO:
+		return REGULATOR_MODE_NORMAL;
+	case PCA9450_BUCK_MODE_FORCE_PWM:
+		return REGULATOR_MODE_FAST;
+	default:
+		return REGULATOR_MODE_INVALID;
+	}
+}
+
+static int pca9450_buck_set_mode(struct regulator_dev *rdev, unsigned int mode)
+{
+	struct pca9450_regulator_desc *desc = container_of(rdev->desc,
+					struct pca9450_regulator_desc, desc);
+	const struct pc9450_dvs_config *dvs = &desc->dvs;
+	int val;
+
+	switch (mode) {
+	case REGULATOR_MODE_FAST:
+		val = dvs->mode_mask;
+		break;
+	case REGULATOR_MODE_NORMAL:
+		val = 0;
+		break;
+	default:
+		return -EINVAL;
+	}
+
+	dev_dbg(&rdev->dev, "pca9450 buck set_mode %#x, %#x, %#x\n",
+		dvs->mode_reg, dvs->mode_mask, val);
+
+	return regmap_update_bits(rdev->regmap, dvs->mode_reg,
+				  dvs->mode_mask, val);
+}
+
+static unsigned int pca9450_buck_get_mode(struct regulator_dev *rdev)
+{
+	struct pca9450_regulator_desc *desc = container_of(rdev->desc,
+					struct pca9450_regulator_desc, desc);
+	const struct pc9450_dvs_config *dvs = &desc->dvs;
+	int ret = 0, regval;
+
+	ret = regmap_read(rdev->regmap, dvs->mode_reg, &regval);
+	if (ret != 0) {
+		dev_err(&rdev->dev,
+			"Failed to get pca9450 buck mode: %d\n", ret);
+		return ret;
+	}
+
+	if ((regval & dvs->mode_mask) == dvs->mode_mask)
+		return REGULATOR_MODE_FAST;
+
+	return REGULATOR_MODE_NORMAL;
+}
+
+static struct pca9450_regulator_desc pca9450a_regulators[] = {
 	{
 		.desc = {
 			.name = "buck1",
@@ -306,12 +373,15 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
 			.of_parse_cb = pca9450_set_dvs_levels,
+			.of_map_mode = pca9450_map_mode,
 		},
 		.dvs = {
 			.run_reg = PCA9450_REG_BUCK1OUT_DVS0,
 			.run_mask = BUCK1OUT_DVS0_MASK,
 			.standby_reg = PCA9450_REG_BUCK1OUT_DVS1,
 			.standby_mask = BUCK1OUT_DVS1_MASK,
+			.mode_reg = PCA9450_REG_BUCK1CTRL,
+			.mode_mask = BUCK1_FPWM,
 		},
 	},
 	{
@@ -336,12 +406,15 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
 			.n_ramp_values = ARRAY_SIZE(pca9450_dvs_buck_ramp_table),
 			.owner = THIS_MODULE,
 			.of_parse_cb = pca9450_set_dvs_levels,
+			.of_map_mode = pca9450_map_mode,
 		},
 		.dvs = {
 			.run_reg = PCA9450_REG_BUCK2OUT_DVS0,
 			.run_mask = BUCK2OUT_DVS0_MASK,
 			.standby_reg = PCA9450_REG_BUCK2OUT_DVS1,
 			.standby_mask = BUCK2OUT_DVS1_MASK,
+			.mode_reg = PCA9450_REG_BUCK2CTRL,
+			.mode_mask = BUCK2_FPWM,
 		},
 	},
 	{
@@ -366,12 +439,15 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
 			.n_ramp_values = ARRAY_SIZE(pca9450_dvs_buck_ramp_table),
 			.owner = THIS_MODULE,
 			.of_parse_cb = pca9450_set_dvs_levels,
+			.of_map_mode = pca9450_map_mode,
 		},
 		.dvs = {
 			.run_reg = PCA9450_REG_BUCK3OUT_DVS0,
 			.run_mask = BUCK3OUT_DVS0_MASK,
 			.standby_reg = PCA9450_REG_BUCK3OUT_DVS1,
 			.standby_mask = BUCK3OUT_DVS1_MASK,
+			.mode_reg = PCA9450_REG_BUCK3CTRL,
+			.mode_mask = BUCK3_FPWM,
 		},
 	},
 	{
@@ -391,6 +467,11 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
 			.enable_mask = BUCK4_ENMODE_MASK,
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
+			.of_map_mode = pca9450_map_mode,
+		},
+		.dvs = {
+			.mode_reg = PCA9450_REG_BUCK4CTRL,
+			.mode_mask = BUCK4_FPWM,
 		},
 	},
 	{
@@ -410,6 +491,11 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
 			.enable_mask = BUCK5_ENMODE_MASK,
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
+			.of_map_mode = pca9450_map_mode,
+		},
+		.dvs = {
+			.mode_reg = PCA9450_REG_BUCK5CTRL,
+			.mode_mask = BUCK5_FPWM,
 		},
 	},
 	{
@@ -429,6 +515,11 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
 			.enable_mask = BUCK6_ENMODE_MASK,
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
+			.of_map_mode = pca9450_map_mode,
+		},
+		.dvs = {
+			.mode_reg = PCA9450_REG_BUCK6CTRL,
+			.mode_mask = BUCK6_FPWM,
 		},
 	},
 	{
@@ -527,7 +618,7 @@ static const struct pca9450_regulator_desc pca9450a_regulators[] = {
  * Buck3 removed on PCA9450B and connected with Buck1 internal for dual phase
  * on PCA9450C as no Buck3.
  */
-static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
+static struct pca9450_regulator_desc pca9450bc_regulators[] = {
 	{
 		.desc = {
 			.name = "buck1",
@@ -550,12 +641,15 @@ static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
 			.n_ramp_values = ARRAY_SIZE(pca9450_dvs_buck_ramp_table),
 			.owner = THIS_MODULE,
 			.of_parse_cb = pca9450_set_dvs_levels,
+			.of_map_mode = pca9450_map_mode,
 		},
 		.dvs = {
 			.run_reg = PCA9450_REG_BUCK1OUT_DVS0,
 			.run_mask = BUCK1OUT_DVS0_MASK,
 			.standby_reg = PCA9450_REG_BUCK1OUT_DVS1,
 			.standby_mask = BUCK1OUT_DVS1_MASK,
+			.mode_reg = PCA9450_REG_BUCK1CTRL,
+			.mode_mask = BUCK1_FPWM,
 		},
 	},
 	{
@@ -580,12 +674,15 @@ static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
 			.n_ramp_values = ARRAY_SIZE(pca9450_dvs_buck_ramp_table),
 			.owner = THIS_MODULE,
 			.of_parse_cb = pca9450_set_dvs_levels,
+			.of_map_mode = pca9450_map_mode,
 		},
 		.dvs = {
 			.run_reg = PCA9450_REG_BUCK2OUT_DVS0,
 			.run_mask = BUCK2OUT_DVS0_MASK,
 			.standby_reg = PCA9450_REG_BUCK2OUT_DVS1,
 			.standby_mask = BUCK2OUT_DVS1_MASK,
+			.mode_reg = PCA9450_REG_BUCK2CTRL,
+			.mode_mask = BUCK2_FPWM,
 		},
 	},
 	{
@@ -605,6 +702,11 @@ static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
 			.enable_mask = BUCK4_ENMODE_MASK,
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
+			.of_map_mode = pca9450_map_mode,
+		},
+		.dvs = {
+			.mode_reg = PCA9450_REG_BUCK4CTRL,
+			.mode_mask = BUCK4_FPWM,
 		},
 	},
 	{
@@ -624,6 +726,11 @@ static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
 			.enable_mask = BUCK5_ENMODE_MASK,
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
+			.of_map_mode = pca9450_map_mode,
+		},
+		.dvs = {
+			.mode_reg = PCA9450_REG_BUCK5CTRL,
+			.mode_mask = BUCK5_FPWM,
 		},
 	},
 	{
@@ -643,6 +750,11 @@ static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
 			.enable_mask = BUCK6_ENMODE_MASK,
 			.enable_val = BUCK_ENMODE_ONREQ,
 			.owner = THIS_MODULE,
+			.of_map_mode = pca9450_map_mode,
+		},
+		.dvs = {
+			.mode_reg = PCA9450_REG_BUCK6CTRL,
+			.mode_mask = BUCK6_FPWM,
 		},
 	},
 	{
@@ -737,7 +849,7 @@ static const struct pca9450_regulator_desc pca9450bc_regulators[] = {
 	},
 };
 
-static const struct pca9450_regulator_desc pca9451a_regulators[] = {
+static struct pca9450_regulator_desc pca9451a_regulators[] = {
 	{
 		.desc = {
 			.name = "buck1",
@@ -969,7 +1081,7 @@ static int pca9450_i2c_probe(struct i2c_client *i2c)
 {
 	enum pca9450_chip_type type = (unsigned int)(uintptr_t)
 				      of_device_get_match_data(&i2c->dev);
-	const struct pca9450_regulator_desc	*regulator_desc;
+	const struct pca9450_regulator_desc *regulator_desc;
 	struct regulator_config config = { };
 	struct regulator_dev *ldo5;
 	struct pca9450 *pca9450;
-- 
2.39.2

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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-23 13:12 [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Martijn de Gouw
  2025-05-23 13:12 ` [PATCH v2 2/2] regulator: pca9450: Add support for mode operations Martijn de Gouw
@ 2025-05-23 14:01 ` Mark Brown
  2025-05-23 14:23 ` Rob Herring (Arm)
  2025-05-23 16:21 ` Mark Brown
  3 siblings, 0 replies; 9+ messages in thread
From: Mark Brown @ 2025-05-23 14:01 UTC (permalink / raw)
  To: Martijn de Gouw
  Cc: Liam Girdwood, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Robin Gong, linux-kernel, devicetree

[-- Attachment #1: Type: text/plain, Size: 590 bytes --]

On Fri, May 23, 2025 at 03:12:11PM +0200, Martijn de Gouw wrote:
> Make the PWM mode on the buck controllers configurable from devicetree.
> Some boards require forced PWM mode to keep the supply ripple within
> acceptable limits under light load conditions.

Please submit patches using subject lines reflecting the style for the
subsystem, this makes it easier for people to identify relevant patches.
Look at what existing commits in the area you're changing are doing and
make sure your subject lines visually resemble what they're doing.
There's no need to resubmit to fix this alone.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-23 13:12 [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Martijn de Gouw
  2025-05-23 13:12 ` [PATCH v2 2/2] regulator: pca9450: Add support for mode operations Martijn de Gouw
  2025-05-23 14:01 ` [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Mark Brown
@ 2025-05-23 14:23 ` Rob Herring (Arm)
  2025-05-23 16:21 ` Mark Brown
  3 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2025-05-23 14:23 UTC (permalink / raw)
  To: Martijn de Gouw
  Cc: Krzysztof Kozlowski, Liam Girdwood, Mark Brown, Conor Dooley,
	Robin Gong, devicetree, linux-kernel


On Fri, 23 May 2025 15:12:11 +0200, Martijn de Gouw wrote:
> Make the PWM mode on the buck controllers configurable from devicetree.
> Some boards require forced PWM mode to keep the supply ripple within
> acceptable limits under light load conditions.
> 
> Signed-off-by: Martijn de Gouw <martijn.de.gouw@prodrive-technologies.com>
> ---
> Changes in v2:
>   - Add the header to the binding patch
>   - Improve commit message
> 
>  .../regulator/nxp,pca9450-regulator.yaml       | 14 ++++++++++++++
>  .../regulator/nxp,pca9450-regulator.h          | 18 ++++++++++++++++++
>  2 files changed, 32 insertions(+)
>  create mode 100644 include/dt-bindings/regulator/nxp,pca9450-regulator.h
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.example.dtb: pmic@25 (nxp,pca9450b): regulators:BUCK4: Unevaluated properties are not allowed ('regulator-inital-mode' was unexpected)
	from schema $id: http://devicetree.org/schemas/regulator/nxp,pca9450-regulator.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250523131214.955970-1-martijn.de.gouw@prodrive-technologies.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-23 13:12 [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Martijn de Gouw
                   ` (2 preceding siblings ...)
  2025-05-23 14:23 ` Rob Herring (Arm)
@ 2025-05-23 16:21 ` Mark Brown
  2025-05-24  6:34   ` Krzysztof Kozlowski
  3 siblings, 1 reply; 9+ messages in thread
From: Mark Brown @ 2025-05-23 16:21 UTC (permalink / raw)
  To: Liam Girdwood, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Robin Gong, Martijn de Gouw
  Cc: linux-kernel, devicetree

On Fri, 23 May 2025 15:12:11 +0200, Martijn de Gouw wrote:
> Make the PWM mode on the buck controllers configurable from devicetree.
> Some boards require forced PWM mode to keep the supply ripple within
> acceptable limits under light load conditions.
> 
> 

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git for-next

Thanks!

[1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
      commit: 0a4056a444c8d55beea470948c73befd6673aa6c
[2/2] regulator: pca9450: Add support for mode operations
      commit: 2616e5f4fe04eb25eb5cbabc0a3a2a374e14008e

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark


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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-23 16:21 ` Mark Brown
@ 2025-05-24  6:34   ` Krzysztof Kozlowski
  2025-05-24 22:38     ` Mark Brown
  0 siblings, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-24  6:34 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Robin Gong, Martijn de Gouw
  Cc: linux-kernel, devicetree

On 23/05/2025 18:21, Mark Brown wrote:
> On Fri, 23 May 2025 15:12:11 +0200, Martijn de Gouw wrote:
>> Make the PWM mode on the buck controllers configurable from devicetree.
>> Some boards require forced PWM mode to keep the supply ripple within
>> acceptable limits under light load conditions.
>>
>>
> 
> Applied to
> 
>    https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git for-next
> 
> Thanks!
> 
> [1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
>       commit: 0a4056a444c8d55beea470948c73befd6673aa6c
> [2/2] regulator: pca9450: Add support for mode operations
>       commit: 2616e5f4fe04eb25eb5cbabc0a3a2a374e14008e

Rob reported binding has failure (which also means binding was not
tested). Can you drop the patch?

Best regards,
Krzysztof

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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-24  6:34   ` Krzysztof Kozlowski
@ 2025-05-24 22:38     ` Mark Brown
  2025-05-25  4:43       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 9+ messages in thread
From: Mark Brown @ 2025-05-24 22:38 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Liam Girdwood, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Robin Gong, Martijn de Gouw, linux-kernel, devicetree

[-- Attachment #1: Type: text/plain, Size: 667 bytes --]

On Sat, May 24, 2025 at 08:34:41AM +0200, Krzysztof Kozlowski wrote:
> On 23/05/2025 18:21, Mark Brown wrote:

> > [1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
> >       commit: 0a4056a444c8d55beea470948c73befd6673aa6c
> > [2/2] regulator: pca9450: Add support for mode operations
> >       commit: 2616e5f4fe04eb25eb5cbabc0a3a2a374e14008e

> Rob reported binding has failure (which also means binding was not
> tested). Can you drop the patch?

That seemed to just be due to v1 splitting the header with the constants
from the binding change (the issue was that the header wasn't there)
which should be fixed by this version?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-24 22:38     ` Mark Brown
@ 2025-05-25  4:43       ` Krzysztof Kozlowski
  2025-05-25 11:50         ` Mark Brown
  0 siblings, 1 reply; 9+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-25  4:43 UTC (permalink / raw)
  To: Mark Brown
  Cc: Liam Girdwood, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Robin Gong, Martijn de Gouw, linux-kernel, devicetree

On 25/05/2025 00:38, Mark Brown wrote:
> On Sat, May 24, 2025 at 08:34:41AM +0200, Krzysztof Kozlowski wrote:
>> On 23/05/2025 18:21, Mark Brown wrote:
> 
>>> [1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
>>>       commit: 0a4056a444c8d55beea470948c73befd6673aa6c
>>> [2/2] regulator: pca9450: Add support for mode operations
>>>       commit: 2616e5f4fe04eb25eb5cbabc0a3a2a374e14008e
> 
>> Rob reported binding has failure (which also means binding was not
>> tested). Can you drop the patch?
> 
> That seemed to just be due to v1 splitting the header with the constants
> from the binding change (the issue was that the header wasn't there)
> which should be fixed by this version?

No, this v2:

https://lore.kernel.org/all/174801020316.1711348.10193654747801258488.robh@kernel.org/

I must admit after quick look I don't see the cause error, but
nevertheless this should be address by someone, preferably author.

Best regards,
Krzysztof

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

* Re: [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes
  2025-05-25  4:43       ` Krzysztof Kozlowski
@ 2025-05-25 11:50         ` Mark Brown
  0 siblings, 0 replies; 9+ messages in thread
From: Mark Brown @ 2025-05-25 11:50 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Liam Girdwood, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Robin Gong, Martijn de Gouw, linux-kernel, devicetree

[-- Attachment #1: Type: text/plain, Size: 569 bytes --]

On Sun, May 25, 2025 at 06:43:17AM +0200, Krzysztof Kozlowski wrote:
> On 25/05/2025 00:38, Mark Brown wrote:

> > That seemed to just be due to v1 splitting the header with the constants
> > from the binding change (the issue was that the header wasn't there)
> > which should be fixed by this version?

> No, this v2:

> https://lore.kernel.org/all/174801020316.1711348.10193654747801258488.robh@kernel.org/

> I must admit after quick look I don't see the cause error, but
> nevertheless this should be address by someone, preferably author.

OK, dropped these two.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

end of thread, other threads:[~2025-05-25 11:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-23 13:12 [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Martijn de Gouw
2025-05-23 13:12 ` [PATCH v2 2/2] regulator: pca9450: Add support for mode operations Martijn de Gouw
2025-05-23 14:01 ` [PATCH v2 1/2] dt-bindings: regulator: add pca9450: Add regulator-allowed-modes Mark Brown
2025-05-23 14:23 ` Rob Herring (Arm)
2025-05-23 16:21 ` Mark Brown
2025-05-24  6:34   ` Krzysztof Kozlowski
2025-05-24 22:38     ` Mark Brown
2025-05-25  4:43       ` Krzysztof Kozlowski
2025-05-25 11:50         ` Mark Brown

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.