[U-Boot] [PATCH 07/12] microblaze: Move __udelay implementation

Simon Glass sjg at chromium.org
Mon Jul 9 23:28:58 CEST 2012


On Mon, Jul 9, 2012 at 2:20 AM, Michal Simek <monstr at monstr.eu> wrote:

> Move __udelay to the timer code because of unification.
> And clean coding style because of checkpatch.pl.
>
> Signed-off-by: Michal Simek <monstr at monstr.eu>
>

Acked-by: Simon Glass <sjg at chromium.org>


> ---
>  arch/microblaze/cpu/timer.c  |   19 +++++++++++++++++++
>  arch/microblaze/lib/Makefile |    1 -
>  arch/microblaze/lib/time.c   |   42
> ------------------------------------------
>  3 files changed, 19 insertions(+), 43 deletions(-)
>
> diff --git a/arch/microblaze/cpu/timer.c b/arch/microblaze/cpu/timer.c
> index ae4ffe0..cc6b897 100644
> --- a/arch/microblaze/cpu/timer.c
> +++ b/arch/microblaze/cpu/timer.c
> @@ -41,6 +41,25 @@ ulong get_timer (ulong base)
>  #endif
>
>  #ifdef CONFIG_SYS_TIMER_0
> +void __udelay(unsigned long usec)
> +{
> +       int i;
> +
> +       i = get_timer(0);
> +       while ((get_timer(0) - i) < (usec / 1000))
> +               ;
> +}
> +#else
> +void __udelay(unsigned long usec)
> +{
> +       unsigned int i;
> +
> +       for (i = 0; i < (usec * CONFIG_XILINX_CLOCK_FREQ / 10000000); i++)
> +               ;
> +}
> +#endif
> +
> +#ifdef CONFIG_SYS_TIMER_0
>  microblaze_timer_t *tmr = (microblaze_timer_t *)
> (CONFIG_SYS_TIMER_0_ADDR);
>
>  void timer_isr (void *arg)
> diff --git a/arch/microblaze/lib/Makefile b/arch/microblaze/lib/Makefile
> index de0a7d3..7730695 100644
> --- a/arch/microblaze/lib/Makefile
> +++ b/arch/microblaze/lib/Makefile
> @@ -29,7 +29,6 @@ SOBJS-y       +=
>
>  COBJS-y        += board.o
>  COBJS-y        += bootm.o
> -COBJS-y        += time.o
>
>  SRCS   := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c)
>  OBJS   := $(addprefix $(obj),$(SOBJS-y) $(COBJS-y))
> diff --git a/arch/microblaze/lib/time.c b/arch/microblaze/lib/time.c
> index da016a0..e69de29 100644
> --- a/arch/microblaze/lib/time.c
> +++ b/arch/microblaze/lib/time.c
> @@ -1,42 +0,0 @@
> -/*
> - * (C) Copyright 2007 Michal Simek
> - * (C) Copyright 2004 Atmark Techno, Inc.
> - *
> - * Michal  SIMEK <monstr at monstr.eu>
> - * Yasushi SHOJI <yashi at atmark-techno.com>
> - *
> - * See file CREDITS for list of people who contributed to this
> - * project.
> - *
> - * This program is free software; you can redistribute it and/or
> - * modify it under the terms of the GNU General Public License as
> - * published by the Free Software Foundation; either version 2 of
> - * the License, or (at your option) any later version.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> - * MA 02111-1307 USA
> - */
> -
> -#include <common.h>
> -
> -#ifdef CONFIG_SYS_TIMER_0
> -void __udelay (unsigned long usec)
> -{
> -       int i;
> -       i = get_timer (0);
> -       while ((get_timer (0) - i) < (usec / 1000)) ;
> -}
> -#else
> -void __udelay (unsigned long usec)
> -{
> -       unsigned int i;
> -       for (i = 0; i < (usec * CONFIG_XILINX_CLOCK_FREQ / 10000000); i++);
> -}
> -#endif
> --
> 1.7.0.4
>
>


More information about the U-Boot mailing list