Re: [PATCH v1 01/17] hwmon: pmbus: adm1266: Change nvmem reg_read/write return type

From: Dan Carpenter
Date: Thu Jun 06 2024 - 03:42:54 EST


On Wed, Jun 05, 2024 at 05:59:45PM +0000, Joy Chakraborty wrote:
> Change nvmem read/write function definition return type to ssize_t.
>
> Signed-off-by: Joy Chakraborty <joychakr@xxxxxxxxxx>
> ---
> drivers/hwmon/pmbus/adm1266.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/hwmon/pmbus/adm1266.c b/drivers/hwmon/pmbus/adm1266.c
> index 2c4d94cc8729..7eaab5a7b04c 100644
> --- a/drivers/hwmon/pmbus/adm1266.c
> +++ b/drivers/hwmon/pmbus/adm1266.c
> @@ -375,7 +375,7 @@ static int adm1266_nvmem_read_blackbox(struct adm1266_data *data, u8 *read_buff)
> return 0;
> }
>
> -static int adm1266_nvmem_read(void *priv, unsigned int offset, void *val, size_t bytes)
> +static ssize_t adm1266_nvmem_read(void *priv, unsigned int offset, void *val, size_t bytes)
> {
> struct adm1266_data *data = priv;
> int ret;
> @@ -395,7 +395,7 @@ static int adm1266_nvmem_read(void *priv, unsigned int offset, void *val, size_t
>
> memcpy(val, data->dev_mem + offset, bytes);
>
> - return 0;
> + return bytes;
> }

This breaks the build so it's not allowed. The way to do it is to:
1) add a new pointer which takes a ssize_t
2) convert everything to the new pointer
3) Rename the new pointer to the old name

regards,
dan carpenter