RE: [PATCH 1/2] regulator: fp9931: Fix VPOS/VNEG voltage selector table
From: Robby Cai (OSS)
Date: Fri Jul 31 2026 - 04:49:17 EST
>-----Original Message-----
>From: Andreas Kemnade <andreas@xxxxxxxxxxxx>
>Sent: Tuesday, July 28, 2026 4:05 AM
>To: Robby Cai (OSS) <robby.cai@xxxxxxxxxxx>
>Cc: lgirdwood@xxxxxxxxx; broonie@xxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
>imx@xxxxxxxxxxxxxxx
>Subject: Re: [PATCH 1/2] regulator: fp9931: Fix VPOS/VNEG voltage selector
>table
>
>On Tue, 21 Jul 2026 17:59:58 +0800
>robby.cai@xxxxxxxxxxx wrote:
>
>> From: Robby Cai <robby.cai@xxxxxxx>
>>
>> The VPOSNEG_table[] mapping does not match the FP9931/JD9930
>> datasheet.
>>
>> The datasheet defines the VPOS/VNEG voltage mapping as:
>>
>> 00h-04h -> 7.04V (-7.04V)
>> 05h -> 7.26V (-7.26V)
>> 06h -> 7.49V (-7.49V)
>> ...
>> 28h-3Fh -> 15.06V (-15.06V)
>>
>> However, the current table maps selector 0x05 to 7.04V instead of
>> 7.26V, causing all subsequent entries to be shifted by one position.
>>
>> Update VPOSNEG_table[] to match the documented register encoding.
>>
>> Fixes: 12d821bd13d4 ("regulator: Add FP9931/JD9930 driver")
>> Signed-off-by: Robby Cai <robby.cai@xxxxxxx>
>
>Reviewed-by: Andreas Kemnade <andreas@xxxxxxxxxxxx>
Thanks for the review.
Just a note that there is a v2 available:
https://lore.kernel.org/imx/20260724103441.800522-2-robby.cai@xxxxxxxxxxx/
Compared to v1, the table has been updated to cover the full selector range defined by the datasheet. In particular, selectors 0x29-0x3f are now clamped to 15.06V, matching the hardware definition.
The main issue fixed by v1 remains the same, but v2 also ensures the voltage table correctly represents all valid selector values.
Regards,
Robby