diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-03-07 14:32:42 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-03-08 15:36:54 +0100 |
commit | 2433a8ab1c451e47f39c3414ad1e46074b6b7607 (patch) | |
tree | 2a555dfde1d58ae3e49a409f4830fff8cdef8229 /c/src/lib/libbsp/arm/rtl22xx | |
parent | bsp/qoriq: Fix memory configuration (diff) | |
download | rtems-2433a8ab1c451e47f39c3414ad1e46074b6b7607.tar.bz2 |
arm: Remove legacy execption support
Diffstat (limited to 'c/src/lib/libbsp/arm/rtl22xx')
-rw-r--r-- | c/src/lib/libbsp/arm/rtl22xx/Makefile.am | 2 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/rtl22xx/start/start.S | 97 | ||||
-rw-r--r-- | c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c | 6 |
3 files changed, 26 insertions, 79 deletions
diff --git a/c/src/lib/libbsp/arm/rtl22xx/Makefile.am b/c/src/lib/libbsp/arm/rtl22xx/Makefile.am index fd5255fd0f..18eaf62247 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/Makefile.am +++ b/c/src/lib/libbsp/arm/rtl22xx/Makefile.am @@ -51,8 +51,6 @@ libbsp_a_SOURCES += ../../shared/src/irq-info.c libbsp_a_SOURCES += ../../shared/src/irq-legacy.c libbsp_a_SOURCES += ../../shared/src/irq-server.c libbsp_a_SOURCES += ../../shared/src/irq-shell.c -# simple_abort -libbsp_a_SOURCES += ../shared/abort/simple_abort.c # debugio libbsp_a_SOURCES += console/uart.c diff --git a/c/src/lib/libbsp/arm/rtl22xx/start/start.S b/c/src/lib/libbsp/arm/rtl22xx/start/start.S index 0afd3ff1da..c038198aff 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/start/start.S +++ b/c/src/lib/libbsp/arm/rtl22xx/start/start.S @@ -123,80 +123,35 @@ _hang: b _hang ********************************************************/ vector_block: - LDR PC, Reset_Addr - LDR PC, Undefined_Addr - LDR PC, SWI_Addr - LDR PC, Prefetch_Addr - LDR PC, Abort_Addr - NOP - LDR PC, IRQ_Addr - LDR PC, FIQ_Addr - - .globl Reset_Addr -Reset_Addr: .long _start -Undefined_Addr: .long Undefined_Handler -SWI_Addr: .long SWI_Handler -Prefetch_Addr: .long Prefetch_Handler -Abort_Addr: .long Abort_Handler - .long 0 -IRQ_Addr: .long IRQ_Handler -FIQ_Addr: .long FIQ_Handler - -/* The following handlers do not do anything useful */ - .globl Undefined_Handler -Undefined_Handler: - B Undefined_Handler - .globl SWI_Handler -SWI_Handler: - B SWI_Handler - .globl Prefetch_Handler -Prefetch_Handler: - B Prefetch_Handler - .globl Abort_Handler -Abort_Handler: - B Abort_Handler - .globl IRQ_Handler -IRQ_Handler: - B IRQ_Handler - .globl FIQ_Handler -FIQ_Handler: - B FIQ_Handler + ldr pc, handler_addr_reset + ldr pc, handler_addr_undef + ldr pc, handler_addr_swi + ldr pc, handler_addr_prefetch + ldr pc, handler_addr_abort + nop + ldr pc, handler_addr_irq + ldr pc, handler_addr_fiq +handler_addr_reset: + .word _start +handler_addr_undef: + .word _ARMV4_Exception_undef_default +handler_addr_swi: + .word _ARMV4_Exception_swi_default -/* - * This is the exception vector table and the pointers to - * the functions that handle the exceptions. It's a total - * of 16 words (64 bytes) - */ +handler_addr_prefetch: + .word _ARMV4_Exception_pref_abort_default - /******************************************************* +handler_addr_abort: + .word _ARMV4_Exception_data_abort_default -vector_block: - ldr pc, Reset_Handler - ldr pc, Undefined_Handler - ldr pc, SWI_Handler - ldr pc, Prefetch_Handler - ldr pc, Abort_Handler - nop - ldr pc, IRQ_Handler - ldr pc, FIQ_Handler - -Reset_Handler: b bsp_reset -Undefined_Handler: b Undefined_Handler -SWI_Handler: b SWI_Handler -Prefetch_Handler: b Prefetch_Handler -Abort_Handler: b Abort_Handler - nop -IRQ_Handler: b IRQ_Handler -FIQ_Handler: b FIQ_Handler - -.globl Reset_Handler -.globl Undefined_Handler -.globl SWI_Handler -.globl Prefetch_Handler -.globl Abort_Handler -.globl IRQ_Handler -.globl FIQ_Handler - */ +handler_addr_reserved: + .word _ARMV4_Exception_reserved_default + +handler_addr_irq: + .word _ARMV4_Exception_interrupt + +handler_addr_fiq: + .word _ARMV4_Exception_fiq_default diff --git a/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c b/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c index c10308ca83..fa128d9054 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c @@ -72,12 +72,6 @@ static void bsp_start_default( void ) UART0_Ini(); /* - * Init rtems exceptions management - */ - /* FIXME: Use shared start.S */ - rtems_exception_init_mngt(); - - /* * Init rtems interrupt management */ bsp_interrupt_initialize(); |