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

Simon Glass sjg at chromium.org
Thu Feb 28 02:29:42 CET 2013


On Wed, Feb 27, 2013 at 2:02 AM, Akshay Saraswat <akshay.s at samsung.com> 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
> 100000ns period and duty cycle.
>
> TEST=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>

> ---
>  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);
>         pwm_enable(4);
>
>         /* Use this as the current monotonic time in us */
> --
> 1.8.0
>


More information about the U-Boot mailing list