From aa705fe3473d64208d796d7ac7404a255ac4078a Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 24 Apr 2018 07:49:12 +0200 Subject: bsps: Move arm-cp15-set-exception-handler.c to bsps This patch is a part of the BSP source reorganization. Update #3285. --- c/src/lib/libbsp/arm/altera-cyclone-v/Makefile.am | 2 +- c/src/lib/libbsp/arm/beagle/Makefile.am | 2 +- c/src/lib/libbsp/arm/gdbarmsim/Makefile.am | 2 +- c/src/lib/libbsp/arm/imx/Makefile.am | 2 +- c/src/lib/libbsp/arm/raspberrypi/Makefile.am | 2 +- c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am | 2 +- .../arm/shared/arm-cp15-set-exception-handler.c | 56 ---------------------- c/src/lib/libbsp/arm/tms570/Makefile.am | 2 +- c/src/lib/libbsp/arm/xilinx-zynq/Makefile.am | 2 +- 9 files changed, 8 insertions(+), 64 deletions(-) delete mode 100644 c/src/lib/libbsp/arm/shared/arm-cp15-set-exception-handler.c (limited to 'c/src/lib/libbsp') diff --git a/c/src/lib/libbsp/arm/altera-cyclone-v/Makefile.am b/c/src/lib/libbsp/arm/altera-cyclone-v/Makefile.am index 58c4c8711f..7f5b0eb2e3 100644 --- a/c/src/lib/libbsp/arm/altera-cyclone-v/Makefile.am +++ b/c/src/lib/libbsp/arm/altera-cyclone-v/Makefile.am @@ -49,7 +49,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-stub.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/bsp-fdt.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/stackalloc.c librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/start/bsp-start-memcpy.S -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c # Startup diff --git a/c/src/lib/libbsp/arm/beagle/Makefile.am b/c/src/lib/libbsp/arm/beagle/Makefile.am index eaff46c48a..409bb676f5 100644 --- a/c/src/lib/libbsp/arm/beagle/Makefile.am +++ b/c/src/lib/libbsp/arm/beagle/Makefile.am @@ -48,7 +48,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/cpucounter/cpucounter librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-stub.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/cpucounter/cpucounterread.c librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/start/bsp-start-memcpy.S -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c # Startup diff --git a/c/src/lib/libbsp/arm/gdbarmsim/Makefile.am b/c/src/lib/libbsp/arm/gdbarmsim/Makefile.am index 630e508797..209defaa11 100644 --- a/c/src/lib/libbsp/arm/gdbarmsim/Makefile.am +++ b/c/src/lib/libbsp/arm/gdbarmsim/Makefile.am @@ -48,7 +48,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/cache/nocache.c # Shared if shared -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c endif diff --git a/c/src/lib/libbsp/arm/imx/Makefile.am b/c/src/lib/libbsp/arm/imx/Makefile.am index 25d97652ce..2be3775815 100644 --- a/c/src/lib/libbsp/arm/imx/Makefile.am +++ b/c/src/lib/libbsp/arm/imx/Makefile.am @@ -38,7 +38,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-stub.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/bsp-fdt.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/stackalloc.c librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/start/bsp-start-memcpy.S -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c # Startup diff --git a/c/src/lib/libbsp/arm/raspberrypi/Makefile.am b/c/src/lib/libbsp/arm/raspberrypi/Makefile.am index 94fb80a054..325526a0d7 100644 --- a/c/src/lib/libbsp/arm/raspberrypi/Makefile.am +++ b/c/src/lib/libbsp/arm/raspberrypi/Makefile.am @@ -62,7 +62,7 @@ endif librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/raspberrypi/start/bspreset.c # IRQ -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/raspberrypi/irq/irq.c # Console diff --git a/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am b/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am index c8fe27c1aa..6063d28bd2 100644 --- a/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am +++ b/c/src/lib/libbsp/arm/realview-pbx-a9/Makefile.am @@ -45,7 +45,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-stub.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/stackalloc.c librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/start/bsp-start-memcpy.S -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c # Startup diff --git a/c/src/lib/libbsp/arm/shared/arm-cp15-set-exception-handler.c b/c/src/lib/libbsp/arm/shared/arm-cp15-set-exception-handler.c deleted file mode 100644 index b24b7c4eb0..0000000000 --- a/c/src/lib/libbsp/arm/shared/arm-cp15-set-exception-handler.c +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2013 embedded brains GmbH. All rights reserved. - * - * embedded brains GmbH - * Dornierstr. 4 - * 82178 Puchheim - * Germany - * - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include - -#include - -void arm_cp15_set_exception_handler( - Arm_symbolic_exception_name exception, - void (*handler)(void) -) -{ - if ((unsigned) exception < MAX_EXCEPTIONS) { - uint32_t *cpu_table = (uint32_t *) 0 + MAX_EXCEPTIONS; - uint32_t *mirror_table = (uint32_t *) bsp_vector_table_begin + MAX_EXCEPTIONS; - uint32_t current_handler = mirror_table[exception]; - - if (current_handler != (uint32_t) handler) { - size_t table_size = MAX_EXCEPTIONS * sizeof(uint32_t); - uint32_t cls = arm_cp15_get_min_cache_line_size(); - uint32_t ctrl; - rtems_interrupt_level level; - - rtems_interrupt_local_disable(level); - - ctrl = arm_cp15_mmu_disable(cls); - - mirror_table[exception] = (uint32_t) handler; - - rtems_cache_flush_multiple_data_lines(mirror_table, table_size); - - /* - * On ARMv7 processors with the Security Extension the mirror table might - * be the actual table used by the processor. - */ - rtems_cache_invalidate_multiple_instruction_lines(mirror_table, table_size); - - rtems_cache_invalidate_multiple_instruction_lines(cpu_table, table_size); - - arm_cp15_set_control(ctrl); - - rtems_interrupt_local_enable(level); - } - } -} diff --git a/c/src/lib/libbsp/arm/tms570/Makefile.am b/c/src/lib/libbsp/arm/tms570/Makefile.am index 57762d0314..36747c804c 100644 --- a/c/src/lib/libbsp/arm/tms570/Makefile.am +++ b/c/src/lib/libbsp/arm/tms570/Makefile.am @@ -45,7 +45,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/bspgetworkarea-defa librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/stackalloc.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/cpucounter/cpucounterdiff.c -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c # Startup diff --git a/c/src/lib/libbsp/arm/xilinx-zynq/Makefile.am b/c/src/lib/libbsp/arm/xilinx-zynq/Makefile.am index 6af27bd34f..8f37f41718 100644 --- a/c/src/lib/libbsp/arm/xilinx-zynq/Makefile.am +++ b/c/src/lib/libbsp/arm/xilinx-zynq/Makefile.am @@ -43,7 +43,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/btimer/btimer-stub.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/stackalloc.c librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/start/bsp-start-memcpy.S -librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-exception-handler.c +librtemsbsp_a_SOURCES += ../../../../../../bsps/arm/shared/cp15/arm-cp15-set-exception-handler.c librtemsbsp_a_SOURCES += ../shared/arm-cp15-set-ttb-entries.c # Startup -- cgit v1.2.3