diff options
| author | Wolfgang Denk <wd@denx.de> | 2012-07-31 22:01:08 +0200 | 
|---|---|---|
| committer | Wolfgang Denk <wd@denx.de> | 2012-07-31 22:01:08 +0200 | 
| commit | d978780b2e676c005460cd561f4f15b5220bdf49 (patch) | |
| tree | bfec2a887b82f0eb552117e133f78cf44e5d7680 /arch/microblaze/cpu/timer.c | |
| parent | b54d1f26ff216ef08307b7652647cc92124c2be1 (diff) | |
| parent | bcec8f49d1c5570f806f9cc33eb0bcc56a6551d5 (diff) | |
| download | olio-uboot-2014.01-d978780b2e676c005460cd561f4f15b5220bdf49.tar.xz olio-uboot-2014.01-d978780b2e676c005460cd561f4f15b5220bdf49.zip | |
Merge branch 'master' of git://git.denx.de/u-boot-microblaze
* 'master' of git://git.denx.de/u-boot-microblaze:
  microblaze: Wire up SPI driver
  spi: microblaze: Adds driver for Xilinx SPI controller
  microblaze: intc: Clear interrupt code
  microblaze: Call serial multi initialization
  microblaze: Move __udelay implementation
  microblaze: Remove extern from board.c
  microblaze: Wire up dts configuration
  fdt: Add board specific dts inclusion
  microblaze: Move individual board linker scripts to common script in cpu tree.
  microblaze: Add gpio.h
  microblaze: Add missing undefs for UBI and UBIFS
  microblaze: Expand and correct configuration comments
  microblaze: Enable ubi support
  microblaze: Avoid compile error on systems without cfi flash
  microblaze: Remove wrong define CONFIG_SYS_FLASH_PROTECTION
Conflicts:
	drivers/spi/Makefile
Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'arch/microblaze/cpu/timer.c')
| -rw-r--r-- | arch/microblaze/cpu/timer.c | 21 | 
1 files changed, 19 insertions, 2 deletions
| diff --git a/arch/microblaze/cpu/timer.c b/arch/microblaze/cpu/timer.c index 1952804ea..cc6b897fb 100644 --- a/arch/microblaze/cpu/timer.c +++ b/arch/microblaze/cpu/timer.c @@ -40,7 +40,25 @@ ulong get_timer (ulong base)  }  #endif -#ifdef CONFIG_SYS_INTC_0 +#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); @@ -61,7 +79,6 @@ int timer_init (void)  	return 0;  }  #endif -#endif  /*   * This function is derived from PowerPC code (read timebase as long long). |