Re: [PATCH] regulator: pwm: Try to avoid voltage error in duty cycle calculation

From: Laxman Dewangan
Date: Sun Apr 03 2016 - 07:18:14 EST



On Saturday 02 April 2016 10:23 PM, Mark Brown wrote:
* PGP Signed by an unknown key

On Fri, Apr 01, 2016 at 12:02:19PM +0530, Laxman Dewangan wrote:
On Friday 01 April 2016 11:55 AM, kbuild test robot wrote:
pwm-regulator.c:(.text+0x1728d4): undefined reference to `__umoddi3'
pwm-regulator.c:(.text+0x1728fd): undefined reference to `__udivdi3'
Seems build error is coming from logic
u64 req_period
unsigned int diff;
unsigned int period
unsigned int req_diff
req_period = req_diff * period;
if (req_period % diff == 0)
used u64 to avoid overflow in multiplication.
Yes, you're doing a 64 bit divide so that's kind of expected...


Is there any way to resolve this issue?

Otherwise, need to divide by 100 first for the req_diff to get 10x of mV (instead of uV) and then do calculation with unsigned int only. That way I can restrict the number to unsigned int.