RE: [PATCH v2 2/2] hwmon: pmbus: Add ltc4286 driver

From: Delphine_CC_Chiu/WYHQ/Wiwynn
Date: Wed Nov 15 2023 - 03:42:34 EST


> -----Original Message-----
> From: Guenter Roeck <groeck7@xxxxxxxxx> On Behalf Of Guenter Roeck
> Sent: Tuesday, November 7, 2023 11:30 AM
> To: Delphine_CC_Chiu/WYHQ/Wiwynn <Delphine_CC_Chiu@xxxxxxxxxx>;
> patrick@xxxxxxxxx; Jean Delvare <jdelvare@xxxxxxxx>; Jonathan Corbet
> <corbet@xxxxxxx>
> Cc: Rob Herring <robh+dt@xxxxxxxxxx>; Krzysztof Kozlowski
> <krzysztof.kozlowski+dt@xxxxxxxxxx>; Conor Dooley <conor+dt@xxxxxxxxxx>;
> linux-i2c@xxxxxxxxxxxxxxx; linux-hwmon@xxxxxxxxxxxxxxx;
> devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> linux-doc@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v2 2/2] hwmon: pmbus: Add ltc4286 driver
>
> Security Reminder: Please be aware that this email is sent by an external
> sender.
>
> On 11/6/23 19:08, Delphine_CC_Chiu/WYHQ/Wiwynn wrote:
> >> -----Original Message-----
> >> From: Guenter Roeck <groeck7@xxxxxxxxx> On Behalf Of Guenter Roeck
> >> Sent: Tuesday, October 31, 2023 9:47 PM
> >> To: Delphine_CC_Chiu/WYHQ/Wiwynn <Delphine_CC_Chiu@xxxxxxxxxx>;
> >> patrick@xxxxxxxxx; Jean Delvare <jdelvare@xxxxxxxx>; Jonathan Corbet
> >> <corbet@xxxxxxx>
> >> Cc: Rob Herring <robh+dt@xxxxxxxxxx>; Krzysztof Kozlowski
> >> <krzysztof.kozlowski+dt@xxxxxxxxxx>; Conor Dooley
> >> <conor+dt@xxxxxxxxxx>; linux-i2c@xxxxxxxxxxxxxxx;
> >> linux-hwmon@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> >> linux-kernel@xxxxxxxxxxxxxxx; linux-doc@xxxxxxxxxxxxxxx
> >> Subject: Re: [PATCH v2 2/2] hwmon: pmbus: Add ltc4286 driver
> >>
> >> Security Reminder: Please be aware that this email is sent by an
> >> external sender.
> >>
> >> On 10/30/23 23:46, Delphine_CC_Chiu/WYHQ/Wiwynn wrote:
> >> [ ... ]
> >>>>
> >>>>> +
> >>>>> + ret = of_property_read_u32(client->dev.of_node,
> >>>>> + "shunt-resistor-micro-ohms",
> >>>> &rsense);
> >>>>> + if (ret < 0)
> >>>>> + return ret;
> >>>>> +
> >>>>> + if (rsense == 0)
> >>>>> + return -EINVAL;
> >>>>> +
> >>>>> + info = &ltc4286_info;
> >>>>> +
> >>>>> + /* Default of VRANGE_SELECT = 1, 102.4V */
> >>>>> + if (device_property_read_bool(&client->dev,
> >>>> "adi,vrange-select-25p6")) {
> >>>>
> >>>> What if the adi,vrange-select-25p6 property is not provided, but
> >>>> the chip is programmed for this range ?
> >>> The binding document tells programmers how to fill the dts.
> >>> Thus, programmers must fill this property if their system is 25.6
> >>> volts voltage
> >> range.
> >>>
> >>
> >> Sure, but there is no else case, meaning VRANGE_SELECT is unmodified
> >> in that case. There is no guarantee that the chip is in its power-on state.
> >
> > The else case is in v2 ltc4286.c line 133 It means that the voltage
> > range for programmer is 102.4 volts which is default value, so driver
> > doesn't need to do any change for VRANGE_SELECT bit.
>
> There is no guarantee that the value wasn't changed before the driver was
> loaded.

We still can’t get your point.
Could you tell us about your concern here?
Thanks.

>
> Guenter
>
> > Additionally, we have checked the behavior of VRANGE_SELECT bit with
> vendor.
> > Below is the reply from vendor:
> > [Our question]
> > If we change the VRANGE_SELECT bit value to 0, the value would return to
> default after we restart this device?
> > Or VRANGE_SELECT bit value would never change util someone change its
> value?
> > [ADI reply]
> > chip reset will go back to default. Thanks.
> >
> > Thus, we must overwrite this bit if the user fill
> > adi,vrange-select-25p6 here whenever driver probes
> >
> >>
> >> Guenter
> >