* [PATCH v2 1/3] hwmon: (pmbus/mpq7932) Get page count based on chip info
2023-09-27 3:39 [PATCH v2 0/3] Add support for mpq2286 PMIC IC Saravanan Sekar
@ 2023-09-27 3:39 ` Saravanan Sekar
2023-09-27 3:39 ` [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC Saravanan Sekar
2023-09-27 3:39 ` [PATCH v2 3/3] hwmon: (pmbus/mpq2286) Add a support for mpq2286 Power Management IC Saravanan Sekar
2 siblings, 0 replies; 8+ messages in thread
From: Saravanan Sekar @ 2023-09-27 3:39 UTC (permalink / raw)
To: sravanhome, lgirdwood, broonie, robh+dt, krzysztof.kozlowski+dt,
conor+dt, linux, jdelvare
Cc: linux-kernel, devicetree, linux-hwmon, Saravanan Sekar
Get page count using compatible match to support the series of chipsets
which differs in number of regualator/page.
Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
---
drivers/hwmon/pmbus/mpq7932.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/hwmon/pmbus/mpq7932.c b/drivers/hwmon/pmbus/mpq7932.c
index 6c62f01da7c6..723c314a57a2 100644
--- a/drivers/hwmon/pmbus/mpq7932.c
+++ b/drivers/hwmon/pmbus/mpq7932.c
@@ -105,7 +105,7 @@ static int mpq7932_probe(struct i2c_client *client)
return -ENOMEM;
info = &data->info;
- info->pages = MPQ7932_NUM_PAGES;
+ info->pages = (int)(unsigned long)device_get_match_data(&client->dev);
info->format[PSC_VOLTAGE_OUT] = direct;
info->m[PSC_VOLTAGE_OUT] = 160;
info->b[PSC_VOLTAGE_OUT] = -33;
@@ -115,7 +115,7 @@ static int mpq7932_probe(struct i2c_client *client)
}
#if IS_ENABLED(CONFIG_SENSORS_MPQ7932_REGULATOR)
- info->num_regulators = ARRAY_SIZE(mpq7932_regulators_desc);
+ info->num_regulators = info->pages;
info->reg_desc = mpq7932_regulators_desc;
#endif
@@ -129,7 +129,7 @@ static int mpq7932_probe(struct i2c_client *client)
}
static const struct of_device_id mpq7932_of_match[] = {
- { .compatible = "mps,mpq7932"},
+ { .compatible = "mps,mpq7932", .data = (void *)MPQ7932_NUM_PAGES },
{},
};
MODULE_DEVICE_TABLE(of, mpq7932_of_match);
--
2.34.1
^ permalink raw reply related [flat|nested] 8+ messages in thread* [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC
2023-09-27 3:39 [PATCH v2 0/3] Add support for mpq2286 PMIC IC Saravanan Sekar
2023-09-27 3:39 ` [PATCH v2 1/3] hwmon: (pmbus/mpq7932) Get page count based on chip info Saravanan Sekar
@ 2023-09-27 3:39 ` Saravanan Sekar
2023-09-27 8:06 ` Krzysztof Kozlowski
2023-09-27 12:45 ` Mark Brown
2023-09-27 3:39 ` [PATCH v2 3/3] hwmon: (pmbus/mpq2286) Add a support for mpq2286 Power Management IC Saravanan Sekar
2 siblings, 2 replies; 8+ messages in thread
From: Saravanan Sekar @ 2023-09-27 3:39 UTC (permalink / raw)
To: sravanhome, lgirdwood, broonie, robh+dt, krzysztof.kozlowski+dt,
conor+dt, linux, jdelvare
Cc: linux-kernel, devicetree, linux-hwmon, Saravanan Sekar
Document mpq2286 power-management IC
Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
---
.../bindings/regulator/mps,mpq2286.yaml | 59 +++++++++++++++++++
1 file changed, 59 insertions(+)
create mode 100644 Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
diff --git a/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
new file mode 100644
index 000000000000..594b929fe4b8
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
@@ -0,0 +1,59 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/mps,mpq2286.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Monolithic Power System MPQ2286 PMIC
+
+maintainers:
+ - Saravanan Sekar <saravanan@linumiz.com>
+
+properties:
+ compatible:
+ enum:
+ - mps,mpq2286
+
+ reg:
+ maxItems: 1
+
+ regulators:
+ type: object
+
+ properties:
+ buck0:
+ type: object
+ $ref: regulator.yaml#
+
+ unevaluatedProperties: false
+
+ additionalProperties: false
+
+required:
+ - compatible
+ - reg
+ - regulators
+
+additionalProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pmic@3 {
+ compatible = "mps,mpq2286";
+ reg = <0x3>;
+
+ regulators {
+ buck0 {
+ regulator-name = "buck0";
+ regulator-min-microvolt = <1600000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-boot-on;
+ };
+ };
+ };
+ };
+...
--
2.34.1
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC
2023-09-27 3:39 ` [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC Saravanan Sekar
@ 2023-09-27 8:06 ` Krzysztof Kozlowski
2023-09-27 8:51 ` Saravanan Sekar
2023-09-27 12:45 ` Mark Brown
1 sibling, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2023-09-27 8:06 UTC (permalink / raw)
To: Saravanan Sekar, sravanhome, lgirdwood, broonie, robh+dt,
krzysztof.kozlowski+dt, conor+dt, linux, jdelvare
Cc: linux-kernel, devicetree, linux-hwmon
On 27/09/2023 05:39, Saravanan Sekar wrote:
> Document mpq2286 power-management IC
>
> Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
> ---
> .../bindings/regulator/mps,mpq2286.yaml | 59 +++++++++++++++++++
> 1 file changed, 59 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
>
> diff --git a/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
> new file mode 100644
> index 000000000000..594b929fe4b8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
> @@ -0,0 +1,59 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/mps,mpq2286.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Monolithic Power System MPQ2286 PMIC
> +
> +maintainers:
> + - Saravanan Sekar <saravanan@linumiz.com>
> +
> +properties:
> + compatible:
> + enum:
> + - mps,mpq2286
> +
> + reg:
> + maxItems: 1
> +
> + regulators:
> + type: object
> +
> + properties:
> + buck0:
If you have just one buck, it should be "buck".
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC
2023-09-27 8:06 ` Krzysztof Kozlowski
@ 2023-09-27 8:51 ` Saravanan Sekar
2023-10-06 14:18 ` Rob Herring
0 siblings, 1 reply; 8+ messages in thread
From: Saravanan Sekar @ 2023-09-27 8:51 UTC (permalink / raw)
To: Krzysztof Kozlowski, krzysztof.kozlowski+dt
Cc: linux-kernel, devicetree, lgirdwood, conor+dt, linux, linux-hwmon,
broonie, sravanhome, robh+dt, jdelvare
On 27/09/23 13:36, Krzysztof Kozlowski wrote:
> On 27/09/2023 05:39, Saravanan Sekar wrote:
>> Document mpq2286 power-management IC
>>
>> Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
>> ---
>> .../bindings/regulator/mps,mpq2286.yaml | 59 +++++++++++++++++++
>> 1 file changed, 59 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
>> new file mode 100644
>> index 000000000000..594b929fe4b8
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
>> @@ -0,0 +1,59 @@
>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/regulator/mps,mpq2286.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Monolithic Power System MPQ2286 PMIC
>> +
>> +maintainers:
>> + - Saravanan Sekar <saravanan@linumiz.com>
>> +
>> +properties:
>> + compatible:
>> + enum:
>> + - mps,mpq2286
>> +
>> + reg:
>> + maxItems: 1
>> +
>> + regulators:
>> + type: object
>> +
>> + properties:
>> + buck0:
>
> If you have just one buck, it should be "buck".
>
As replied in v1 review comments, other chipset has multiple regulator
so buck0 used to keep the driver common
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>
> Best regards,
> Krzysztof
>
Thanks,
Saravanan
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC
2023-09-27 8:51 ` Saravanan Sekar
@ 2023-10-06 14:18 ` Rob Herring
0 siblings, 0 replies; 8+ messages in thread
From: Rob Herring @ 2023-10-06 14:18 UTC (permalink / raw)
To: Saravanan Sekar
Cc: Krzysztof Kozlowski, krzysztof.kozlowski+dt, linux-kernel,
devicetree, lgirdwood, conor+dt, linux, linux-hwmon, broonie,
sravanhome, jdelvare
On Wed, Sep 27, 2023 at 02:21:18PM +0530, Saravanan Sekar wrote:
> On 27/09/23 13:36, Krzysztof Kozlowski wrote:
> > On 27/09/2023 05:39, Saravanan Sekar wrote:
> > > Document mpq2286 power-management IC
> > >
> > > Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
> > > ---
> > > .../bindings/regulator/mps,mpq2286.yaml | 59 +++++++++++++++++++
> > > 1 file changed, 59 insertions(+)
> > > create mode 100644 Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
> > >
> > > diff --git a/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
> > > new file mode 100644
> > > index 000000000000..594b929fe4b8
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/regulator/mps,mpq2286.yaml
> > > @@ -0,0 +1,59 @@
> > > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/regulator/mps,mpq2286.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Monolithic Power System MPQ2286 PMIC
> > > +
> > > +maintainers:
> > > + - Saravanan Sekar <saravanan@linumiz.com>
> > > +
> > > +properties:
> > > + compatible:
> > > + enum:
> > > + - mps,mpq2286
> > > +
> > > + reg:
> > > + maxItems: 1
> > > +
> > > + regulators:
> > > + type: object
> > > +
> > > + properties:
> > > + buck0:
> >
> > If you have just one buck, it should be "buck".
> >
>
> As replied in v1 review comments, other chipset has multiple regulator so
> buck0 used to keep the driver common
This patch needs to stand on its own with explanations/justifications.
No one reviewing this remembers what was said in some reply. The
explanation may be in the commit msg, under the '---', or in
'description' here. Depends on the situation.
I don't see why the driver can't handle 'buck' and 'buckN'.
Rob
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC
2023-09-27 3:39 ` [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC Saravanan Sekar
2023-09-27 8:06 ` Krzysztof Kozlowski
@ 2023-09-27 12:45 ` Mark Brown
1 sibling, 0 replies; 8+ messages in thread
From: Mark Brown @ 2023-09-27 12:45 UTC (permalink / raw)
To: Saravanan Sekar
Cc: sravanhome, lgirdwood, robh+dt, krzysztof.kozlowski+dt, conor+dt,
linux, jdelvare, linux-kernel, devicetree, linux-hwmon
[-- Attachment #1: Type: text/plain, Size: 147 bytes --]
On Wed, Sep 27, 2023 at 09:09:52AM +0530, Saravanan Sekar wrote:
> Document mpq2286 power-management IC
Acked-by: Mark Brown <broonie@kernel.org>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] hwmon: (pmbus/mpq2286) Add a support for mpq2286 Power Management IC
2023-09-27 3:39 [PATCH v2 0/3] Add support for mpq2286 PMIC IC Saravanan Sekar
2023-09-27 3:39 ` [PATCH v2 1/3] hwmon: (pmbus/mpq7932) Get page count based on chip info Saravanan Sekar
2023-09-27 3:39 ` [PATCH v2 2/3] regulator: dt-bindings: Add mps,mpq2286 power-management IC Saravanan Sekar
@ 2023-09-27 3:39 ` Saravanan Sekar
2 siblings, 0 replies; 8+ messages in thread
From: Saravanan Sekar @ 2023-09-27 3:39 UTC (permalink / raw)
To: sravanhome, lgirdwood, broonie, robh+dt, krzysztof.kozlowski+dt,
conor+dt, linux, jdelvare
Cc: linux-kernel, devicetree, linux-hwmon, Saravanan Sekar
The MPQ2286 is a programmable, high frequency synchronous buck regulator
designed to power a variety of Automotive system peripherals. Single buck
converters with hardware monitoring capability is configurable over PMBus
interface.
Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
---
drivers/hwmon/pmbus/mpq7932.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/hwmon/pmbus/mpq7932.c b/drivers/hwmon/pmbus/mpq7932.c
index 723c314a57a2..60d7b8aec05a 100644
--- a/drivers/hwmon/pmbus/mpq7932.c
+++ b/drivers/hwmon/pmbus/mpq7932.c
@@ -21,6 +21,7 @@
#define MPQ7932_N_VOLTAGES 256
#define MPQ7932_VOUT_MAX 0xFF
#define MPQ7932_NUM_PAGES 6
+#define MPQ2286_NUM_PAGES 1
#define MPQ7932_TON_DELAY 0x60
#define MPQ7932_VOUT_STARTUP_SLEW 0xA3
@@ -129,12 +130,14 @@ static int mpq7932_probe(struct i2c_client *client)
}
static const struct of_device_id mpq7932_of_match[] = {
+ { .compatible = "mps,mpq2286", .data = (void *)MPQ2286_NUM_PAGES },
{ .compatible = "mps,mpq7932", .data = (void *)MPQ7932_NUM_PAGES },
{},
};
MODULE_DEVICE_TABLE(of, mpq7932_of_match);
static const struct i2c_device_id mpq7932_id[] = {
+ { "mpq2286", },
{ "mpq7932", },
{ },
};
--
2.34.1
^ permalink raw reply related [flat|nested] 8+ messages in thread