From 45491a8804c8d57e95b82f85f5587035e13d3b8d Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Sun, 5 Apr 2015 15:49:32 -0500 Subject: lm32 BSPs: Add lm32_evr variant for running on gdb. Lay groundwork for a simulator configuration configuration for the Milkymist. This is needed to use the shared code. --- c/src/lib/libbsp/lm32/lm32_evr/Makefile.am | 20 +++++++++++++------- c/src/lib/libbsp/lm32/lm32_evr/configure.ac | 8 +++++--- .../make/custom/lm32_evr_gdbsim-testsuite.tcfg | 6 ++++++ .../lm32/lm32_evr/make/custom/lm32_evr_gdbsim.cfg | 5 +++++ c/src/lib/libbsp/lm32/milkymist/configure.ac | 7 +++++-- 5 files changed, 34 insertions(+), 12 deletions(-) create mode 100644 c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim-testsuite.tcfg create mode 100644 c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim.cfg diff --git a/c/src/lib/libbsp/lm32/lm32_evr/Makefile.am b/c/src/lib/libbsp/lm32/lm32_evr/Makefile.am index 616ea14810..8622a6e627 100644 --- a/c/src/lib/libbsp/lm32/lm32_evr/Makefile.am +++ b/c/src/lib/libbsp/lm32/lm32_evr/Makefile.am @@ -29,16 +29,22 @@ libbsp_a_SOURCES = libbsp_a_LIBADD = # startup -libbsp_a_SOURCES += ../../shared/bspclean.c ../../shared/bsplibc.c \ - ../../shared/bsppost.c ../shared/startup/bspstart.c \ - ../../shared/bspreset.c ../../shared/bsppretaskinghook.c \ - ../../shared/bspgetworkarea.c ../../shared/bootcard.c \ - ../../shared/sbrk.c ../../shared/setvec.c \ - ../../shared/gnatinstallhandler.c +libbsp_a_SOURCES += ../../shared/bspclean.c +libbsp_a_SOURCES += ../../shared/bsplibc.c +libbsp_a_SOURCES += ../../shared/bsppost.c +libbsp_a_SOURCES += ../shared/startup/bspstart.c +libbsp_a_SOURCES += ../../shared/bsppretaskinghook.c +libbsp_a_SOURCES += ../../shared/bspgetworkarea.c +libbsp_a_SOURCES += ../../shared/bootcard.c +libbsp_a_SOURCES += ../../shared/sbrk.c +libbsp_a_SOURCES += ../../shared/setvec.c +libbsp_a_SOURCES += ../../shared/gnatinstallhandler.c +libbsp_a_SOURCES += ../shared/startup/bspreset.c # clock libbsp_a_SOURCES += ../../lm32/shared/clock/ckinit.c # console -libbsp_a_SOURCES += ../../lm32/shared/console/console.c ../../lm32/shared/console/uart.c +libbsp_a_SOURCES += ../../lm32/shared/console/console.c +libbsp_a_SOURCES += ../../lm32/shared/console/uart.c # timer libbsp_a_SOURCES += ../../lm32/shared/timer/timer.c diff --git a/c/src/lib/libbsp/lm32/lm32_evr/configure.ac b/c/src/lib/libbsp/lm32/lm32_evr/configure.ac index 8a9db676b3..462a9b6090 100644 --- a/c/src/lib/libbsp/lm32/lm32_evr/configure.ac +++ b/c/src/lib/libbsp/lm32/lm32_evr/configure.ac @@ -17,16 +17,18 @@ RTEMS_CHECK_NETWORKING AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes") -RTEMS_BSPOPTS_SET([ON_SIMULATOR],[*],[]) -RTEMS_BSPOPTS_HELP([ON_SIMULATOR], +RTEMS_BSPOPTS_SET([LM32_ON_SIMULATOR],[lm32_evr_gdbsim],[1]) +RTEMS_BSPOPTS_SET([LM32_ON_SIMULATOR],[*],[]) +RTEMS_BSPOPTS_HELP([LM32_ON_SIMULATOR], [If defined, this indicates the BSP is being built to run on the lm32 simulator in GDB. This enables fast idle support which speeds up the clock ticks while the idle task is running so time spent in the idle task is minimized. This significantly reduces the wall time required to execute the RTEMS test suites. It also enables a special exit and alternate printk support.]) +AM_CONDITIONAL(LM32_ON_SIMULATOR,test x"$LM32_ON_SIMULATOR" = "x1") -RTEMS_BSP_CLEANUP_OPTIONS(0, 0) +RTEMS_BSP_CLEANUP_OPTIONS(0, 1, 0) # Explicitly list all Makefiles here AC_CONFIG_FILES([Makefile]) diff --git a/c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim-testsuite.tcfg b/c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim-testsuite.tcfg new file mode 100644 index 0000000000..595806baed --- /dev/null +++ b/c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim-testsuite.tcfg @@ -0,0 +1,6 @@ +# +# The GDB LM32 simulator in GDB +# + +include: testdata/disable-intrcritical-tests.tcfg + diff --git a/c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim.cfg b/c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim.cfg new file mode 100644 index 0000000000..2050654d44 --- /dev/null +++ b/c/src/lib/libbsp/lm32/lm32_evr/make/custom/lm32_evr_gdbsim.cfg @@ -0,0 +1,5 @@ +# +# BSP Variant for running on simulator in GDB +# + +include $(RTEMS_ROOT)/make/custom/lm32_evr.cfg diff --git a/c/src/lib/libbsp/lm32/milkymist/configure.ac b/c/src/lib/libbsp/lm32/milkymist/configure.ac index 225e11c0cf..e28942670e 100644 --- a/c/src/lib/libbsp/lm32/milkymist/configure.ac +++ b/c/src/lib/libbsp/lm32/milkymist/configure.ac @@ -16,14 +16,17 @@ RTEMS_PROG_CCAS RTEMS_CHECK_NETWORKING AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes") -RTEMS_BSPOPTS_SET([ON_SIMULATOR],[*],[]) -RTEMS_BSPOPTS_HELP([ON_SIMULATOR], +RTEMS_BSPOPTS_SET([LM32_ON_SIMULATOR],[*],[]) +RTEMS_BSPOPTS_HELP([LM32_ON_SIMULATOR], [If defined, this indicates the BSP is being built to run on the lm32 simulator in GDB. This enables fast idle support which speeds up the clock ticks while the idle task is running so time spent in the idle task is minimized. This significantly reduces the wall time required to execute the RTEMS test suites. It also enables a special exit and alternate printk support.]) +AM_CONDITIONAL(LM32_ON_SIMULATOR,test x"$LM32_ON_SIMULATOR" = "x1") + +RTEMS_BSP_CLEANUP_OPTIONS(0, 1, 0) RTEMS_BSP_CLEANUP_OPTIONS(0,0) # Explicitly list all Makefiles here -- cgit v1.2.3