[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210311220056.GA37350@roeck-us.net>
Date: Thu, 11 Mar 2021 14:00:56 -0800
From: Guenter Roeck <linux@...ck-us.net>
To: Erik Rosen <erik.rosen@...ormote.com>
Cc: linux-kernel@...r.kernel.org, linux-doc@...r.kernel.org,
linux-hwmon@...r.kernel.org, Jonathan Corbet <corbet@....net>,
Jean Delvare <jdelvare@...e.com>
Subject: Re: [PATCH v3 1/2] hwmon: (pmbus) Add pmbus_set_update() function to
set update flag
On Thu, Feb 18, 2021 at 12:52:48PM +0100, Erik Rosen wrote:
> For the STPDDC60 chip, the vout alarm-limits are represented as an offset
> relative to the commanded output voltage. This means that the limits are
> dynamic and must not be cached by the pmbus driver. This patch adds a
> pmbus_set_sensor() function to pmbus_core to be able to set the update flag
> on selected sensors after auto-detection of limit attributes.
>
> Signed-off-by: Erik Rosen <erik.rosen@...ormote.com>
Applied.
Thanks,
Guenter
> ---
> drivers/hwmon/pmbus/pmbus.h | 1 +
> drivers/hwmon/pmbus/pmbus_core.c | 11 +++++++++++
> 2 files changed, 12 insertions(+)
>
> diff --git a/drivers/hwmon/pmbus/pmbus.h b/drivers/hwmon/pmbus/pmbus.h
> index 4c30ec89f5bf..3968924f8533 100644
> --- a/drivers/hwmon/pmbus/pmbus.h
> +++ b/drivers/hwmon/pmbus/pmbus.h
> @@ -475,6 +475,7 @@ extern const struct regulator_ops pmbus_regulator_ops;
> /* Function declarations */
>
> void pmbus_clear_cache(struct i2c_client *client);
> +void pmbus_set_update(struct i2c_client *client, u8 reg, bool update);
> int pmbus_set_page(struct i2c_client *client, int page, int phase);
> int pmbus_read_word_data(struct i2c_client *client, int page, int phase,
> u8 reg);
> diff --git a/drivers/hwmon/pmbus/pmbus_core.c b/drivers/hwmon/pmbus/pmbus_core.c
> index 192442b3b7a2..a8f910826a18 100644
> --- a/drivers/hwmon/pmbus/pmbus_core.c
> +++ b/drivers/hwmon/pmbus/pmbus_core.c
> @@ -141,6 +141,17 @@ void pmbus_clear_cache(struct i2c_client *client)
> }
> EXPORT_SYMBOL_GPL(pmbus_clear_cache);
>
> +void pmbus_set_update(struct i2c_client *client, u8 reg, bool update)
> +{
> + struct pmbus_data *data = i2c_get_clientdata(client);
> + struct pmbus_sensor *sensor;
> +
> + for (sensor = data->sensors; sensor; sensor = sensor->next)
> + if (sensor->reg == reg)
> + sensor->update = update;
> +}
> +EXPORT_SYMBOL_GPL(pmbus_set_update);
> +
> int pmbus_set_page(struct i2c_client *client, int page, int phase)
> {
> struct pmbus_data *data = i2c_get_clientdata(client);
Powered by blists - more mailing lists