summaryrefslogtreecommitdiff
path: root/libcpu
diff options
context:
space:
mode:
authorshaolin <[email protected]>2013-04-10 21:48:16 +0800
committershaolin <[email protected]>2013-04-10 21:48:16 +0800
commitf91fc2dbe270b647e3e7065e8001d7f7db79e787 (patch)
treeee7a3511d40abf546ea938ad33849367626551c5 /libcpu
parent83751c63e3aad965323ebc05a4f34260bc7f624b (diff)
parentf34ef8d984635a5c70f0cf1f74f3807693150aa1 (diff)
Merge branch 'master' of https://github.com/RT-Thread/rt-thread
Diffstat (limited to 'libcpu')
-rw-r--r--libcpu/arm/at91sam926x/mmu.c2
-rw-r--r--libcpu/arm/sep4020/interrupt.c7
-rw-r--r--libcpu/arm/sep4020/trap.c2
3 files changed, 5 insertions, 6 deletions
diff --git a/libcpu/arm/at91sam926x/mmu.c b/libcpu/arm/at91sam926x/mmu.c
index d2db9d5d73..5b88eee27c 100644
--- a/libcpu/arm/at91sam926x/mmu.c
+++ b/libcpu/arm/at91sam926x/mmu.c
@@ -471,7 +471,7 @@ void rt_hw_mmu_init(void)
mmu_setmtt(0x00000000, 0xFFFFFFFF, 0x00000000, RW_NCNB); /* None cached for 4G memory */
mmu_setmtt(0x20000000, 0x24000000-1, 0x20000000, RW_CB); /* 64M cached SDRAM memory */
mmu_setmtt(0x00000000, 0x100000, 0x20000000, RW_CB); /* isr vector table */
- mmu_setmtt(0x90000000, 0x100000, 0x00000000, RW_CB); /* 4K cached internal memory */
+ mmu_setmtt(0x90000000, 0x90400000 - 1, 0x00200000, RW_NCNB); /* 4K SRAM0 + 4k SRAM1 */
mmu_setmtt(0xA0000000, 0xA4000000-1, 0x20000000, RW_NCNB); /* 64M none-cached SDRAM memory */
/* set MMU table address */
diff --git a/libcpu/arm/sep4020/interrupt.c b/libcpu/arm/sep4020/interrupt.c
index 88130c1a33..8b0b8bbd64 100644
--- a/libcpu/arm/sep4020/interrupt.c
+++ b/libcpu/arm/sep4020/interrupt.c
@@ -31,10 +31,9 @@ rt_uint32_t rt_thread_switch_interrupt_flag;
*/
/*@{*/
-rt_isr_handler_t rt_hw_interrupt_handle(rt_uint32_t vector)
+static void rt_hw_interrupt_handle(int vector, void *param)
{
rt_kprintf("Unhandled interrupt %d occured!!!\n", vector);
- return RT_NULL;
}
/**
@@ -85,7 +84,7 @@ void rt_hw_interrupt_init(void)
* This function will mask a interrupt.
* @param vector the interrupt number
*/
-void rt_hw_interrupt_mask(rt_uint32_t vector)
+void rt_hw_interrupt_mask(int vector)
{
*(RP)(INTC_IMR) |= 1 << vector;
}
@@ -94,7 +93,7 @@ void rt_hw_interrupt_mask(rt_uint32_t vector)
* This function will un-mask a interrupt.
* @param vector the interrupt number
*/
-void rt_hw_interrupt_umask(rt_uint32_t vector)
+void rt_hw_interrupt_umask(int vector)
{
if(vector == 16)
{
diff --git a/libcpu/arm/sep4020/trap.c b/libcpu/arm/sep4020/trap.c
index 33da0d9e98..9c18ced698 100644
--- a/libcpu/arm/sep4020/trap.c
+++ b/libcpu/arm/sep4020/trap.c
@@ -152,7 +152,7 @@ void rt_hw_trap_irq(void)
}
/* get interrupt service routine */
- isr_func = isr_table[irq].isr_handle;
+ isr_func = isr_table[irq].handler;
param = isr_table[irq].param;
/* turn to interrupt service routine */