From bed915e3c8094a8b3655d6cf33900d48c385bc4c Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E9=BB=84=E6=B6=9B?= Date: Tue, 15 May 2012 14:52:03 +0800 Subject: [PATCH] rk30: sram: add sram_32k_udelay support deep slow mode delay --- arch/arm/mach-rk30/include/mach/sram.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-rk30/include/mach/sram.h b/arch/arm/mach-rk30/include/mach/sram.h index a236fb8ab1a7..eba76bccf64d 100644 --- a/arch/arm/mach-rk30/include/mach/sram.h +++ b/arch/arm/mach-rk30/include/mach/sram.h @@ -4,8 +4,10 @@ #include #define SRAM_LOOPS_PER_USEC 24 -#define SRAM_LOOP(loops) do { unsigned int i = loops; barrier(); while (--i) barrier(); } while (0) +#define SRAM_LOOP(loops) do { unsigned int i = (loops); if (i < 7) i = 7; barrier(); while (--i) barrier(); } while (0) /* delay on slow mode */ #define sram_udelay(usecs) SRAM_LOOP((usecs)*SRAM_LOOPS_PER_USEC) +/* delay on deep slow mode */ +#define sram_32k_udelay(usecs) SRAM_LOOP(((usecs)*SRAM_LOOPS_PER_USEC)/(24000000/32768)) #endif -- 2.34.1