Messages in this thread | | | Date | Wed, 30 Aug 2023 12:32:14 -0700 | Subject | Re: [PATCH] regulator (max5970): Add hwmon support | From | Guenter Roeck <> |
| |
On 8/30/23 12:14, Naresh Solanki wrote: > Hi > [ ... ] >>> + /* >>> + * Calculate voltage from ADC value and MON range. >>> + * ddata->mon_rng holds the voltage corresponding to the maximum value the >>> + * 10-bit ADC can measure. >>> + * To obtain the output, multiply the ADC value by the MON range (in >>> + * microvolts) and then divide it by the maximum value of the 10-bit ADC. >>> + */ >>> + *val = mul_u64_u32_shr(*val, ddata->mon_rng[channel], 10); >> >> Why do you use mul_u64_u32_shr() here but a direct shift above ? > There is possibility of overflow due to large value of ddata->mon_rng
Does the right shift guarantee that the result fits into 32 bit ?
Thanks, Guenter
| |