fix OS_IrqHandler.

test ex-dma to main memory.

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/twl_wrapsdk/trunk@66 4ee2a332-4b2b-5046-8439-1ba90f034370
This commit is contained in:
nakasima 2007-05-08 10:15:28 +00:00
parent f132a0d96c
commit 8ea23c894c
2 changed files with 13 additions and 8 deletions

View File

@ -75,21 +75,20 @@ asm void OS_IrqHandler( void )
#endif #endif
// get IE&IF // get IE&IF
ldmia r12, { r1-r2 } // r1: IE, r2: IF, r3: IE2, r4: IF2 ldmia r12, { r1-r2 } // r1: IE, r2: IF
ands r1, r1, r2 // r1: IE & IF ands r1, r1, r2 // r1: IE & IF
// add for TWL-ARM7
#ifdef SDK_ARM7
beq @irq_hi
#else // SDK_ARM9
// if IE&IF==0 then return (without changing IF) // if IE&IF==0 then return (without changing IF)
#ifdef SDK_NO_THREAD #ifdef SDK_NO_THREAD
bxeq lr bxeq lr
#else #else
ldmeqfd sp!, { pc } ldmeqfd sp!, { pc }
#endif #endif
#endif // SDK_ARM9
// add for TWL-ARM7
#ifdef SDK_ARM7
cmp r1, #0
beq @irq_hi
#endif
#if defined(SDK_ARM9) && !defined(SDK_CWBUG_PROC_OPT) #if defined(SDK_ARM9) && !defined(SDK_CWBUG_PROC_OPT)
//-------------------------------------------------- //--------------------------------------------------
@ -126,6 +125,12 @@ asm void OS_IrqHandler( void )
ldmia r12, { r1-r2 } // r1: IE2, r2: IF2 ldmia r12, { r1-r2 } // r1: IE2, r2: IF2
ands r1, r1, r2 // r1: IE2 & IF2 ands r1, r1, r2 // r1: IE2 & IF2
// if IE&IF==0 then return (without changing IF)
#ifdef SDK_NO_THREAD
bxeq lr
#else
ldmeqfd sp!, { pc }
#endif
//-------------------------------------------------- //--------------------------------------------------
// IRQ HANDLING CODE for ARCHITECTURE VERSION 4 // IRQ HANDLING CODE for ARCHITECTURE VERSION 4
//-------------------------------------------------- //--------------------------------------------------

View File

@ -17,7 +17,7 @@
#define MY_DMA_MMEM ((t_TestBuf *)HW_MAIN_MEM_SUB) #define MY_DMA_MMEM ((t_TestBuf *)HW_MAIN_MEM_SUB)
#define MY_TEST_LOOPS 2 // (sizeof(copyfillArg)/sizeof(t_CommonArg)) #define MY_TEST_LOOPS (sizeof(copyfillArg)/sizeof(t_CommonArg))
#define ONE_BUF_SIZE 0x2004 #define ONE_BUF_SIZE 0x2004
typedef struct typedef struct