s5pc110: universal: reset support
authorKyungmin Park <kyungmin.park@samsung.com>
Wed, 22 Jul 2009 07:32:31 +0000 (16:32 +0900)
committerKyungmin Park <kyungmin.park@samsung.com>
Wed, 22 Jul 2009 07:32:31 +0000 (16:32 +0900)
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
cpu/arm_cortexa8/s5pc1xx/reset.S

index 16970d8..7f6ff9c 100644 (file)
 
 #include <asm/arch/cpu.h>
 
-#define S5P_OTHERS_REG_BASE(x)         (S5P_PA_CLK_OTHERS + (x))
-#define S5PC1XX_SW_RST                 S5P_OTHERS_REG_BASE(0x0)
+#define S5PC100_SWRESET                        0xE0200000
+#define S5PC110_SWRESET                        0xE0102000
 
 .globl reset_cpu
 reset_cpu:
        ldr     r1, =S5PC1XX_PRO_ID
        ldr     r2, [r1]
-       ldr     r3, =0xFFF
-       and     r2, r3, r2, lsr #12
-       ldr     r3, =0xC000
-       orr     r2, r3, r2
-       ldr     r1, =S5PC1XX_SW_RST
+       ldr     r4, =0x00010000
+       and     r4, r2, r4
+       cmp     r4, #0
+       bne     110f
+       /* S5PC100 */
+       ldr     r1, =S5PC100_SWRESET
+       ldr     r2, =0xC100
+       b       200f
+110:   /* S5PC110 */
+       ldr     r1, =S5PC110_SWRESET
+       mov     r2, #1
+200:
        str     r2, [r1]
 _loop_forever:
        b       _loop_forever