From 489044d1ca9314c79a50768565f4c36a6c4cfc06 Mon Sep 17 00:00:00 2001 From: Cástor Muñoz Date: Fri, 10 Jun 2016 00:34:22 +0200 Subject: iPod Nano2G: clear external interrupts at startup Fixes some ROLO issues after commit 9a4cd2e. Note that other ROLO issues still persist. Change-Id: I8e0c60519902013694c5a473dcb9fc62a6ff079c --- firmware/target/arm/s5l8700/crt0.S | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'firmware') diff --git a/firmware/target/arm/s5l8700/crt0.S b/firmware/target/arm/s5l8700/crt0.S index 93bfa8f06c..b13d89b7e9 100644 --- a/firmware/target/arm/s5l8700/crt0.S +++ b/firmware/target/arm/s5l8700/crt0.S @@ -82,12 +82,24 @@ newstart2: mov r0, #0 mov r1, #0x39c00000 - str r0, [r1,#0x08] // mask all interrupts - str r0, [r1,#0x20] // mask all external interrupts + str r0, [r1,#0x08] /* mask all interrupts */ +#if CONFIG_CPU==S5L8701 + str r0, [r1,#0x38] /* mask all external interrupts */ + str r0, [r1,#0x3c] + str r0, [r1,#0x40] + str r0, [r1,#0x44] + mvn r0, #0 + str r0, [r1,#0x28] /* clear pending external interrupts */ + str r0, [r1,#0x2c] + str r0, [r1,#0x30] + str r0, [r1,#0x34] +#else + str r0, [r1,#0x20] /* mask all external interrupts */ mvn r0, #0 - str r0, [r1,#0x1c] // clear pending external interrupts - str r0, [r1] // irq priority - str r0, [r1,#0x10] // clear pending interrupts + str r0, [r1,#0x1c] /* clear pending external interrupts */ +#endif + str r0, [r1] /* irq priority */ + str r0, [r1,#0x10] /* clear pending interrupts */ // ldr r1, =0x3cf00000 // ldr r0, [r1] -- cgit v1.2.3