[U-Boot] [PATCH 4/9 v2] Exynos: Avoid a divide by zero by specifying a non-zero period for pwm 4

Akshay Saraswat akshay.s at samsung.com
Thu Mar 28 15:29:14 CET 2013


Minkyu,

Thanks for comments.
Please find my reply below the comment.

>On 28/02/13 19:59, Akshay Saraswat wrote:
>> The pwm_config function in the exynos pwm driver divides by its period
>> period parameter. A function was calling pwm_config with a 0ns period and a
>> 0ns duty cycle. That doesn't actually make any sense physically, and results
>> in a divide by zero in the driver. This change changes the paremters to be a
>
>typo.
>paremters -> parameter
>
>> 100000ns period and duty cycle.
>> 
>> Test with command "sf probe 1:0; time sf read 40008000 0 1000".
>> Try with different numbers of bytes and see that sane values are obtained
>> Build and boot U-boot with this patch, backlight works properly.
>> 
>> Signed-off-by: Gabe Black <gabeblack at google.com>
>> Signed-off-by: Akshay Saraswat <akshay.s at samsung.com>
>> Acked-by: Simon Glass <sjg at chromium.org>
>> ---
>> Changes since v1:
>>         - Added "Acked-by: Simon Glass".
>> 
>>  arch/arm/cpu/armv7/s5p-common/timer.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/arch/arm/cpu/armv7/s5p-common/timer.c b/arch/arm/cpu/armv7/s5p-common/timer.c
>> index de61405..6a0fa58 100644
>> --- a/arch/arm/cpu/armv7/s5p-common/timer.c
>> +++ b/arch/arm/cpu/armv7/s5p-common/timer.c
>> @@ -58,7 +58,7 @@ int timer_init(void)
>>  {
>>  	/* PWM Timer 4 */
>>  	pwm_init(4, MUX_DIV_4, 0);
>> -	pwm_config(4, 0, 0);
>> +	pwm_config(4, 100000, 100000);
>
>0 is a numerator.
>I think.. it doesn't matter.

In file pwm.c line 98 we are doing:
 frequency = NS_IN_SEC / period_ns;

what we are passing in this call are the values of duty_ns and period_ns.
So, there are places where divide by zero may occur.
I think we should keep it to be on a safer side.

>
>>  	pwm_enable(4);
>>  
>>  	/* Use this as the current monotonic time in us */
>> 
>
>Thanks,
>Minkyu Kang.
>

Regards,
Akshay Saraswat


More information about the U-Boot mailing list