summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/gp32
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2010-04-30 14:30:09 +0000
committerSebastian Huber <sebastian.huber@embedded-brains.de>2010-04-30 14:30:09 +0000
commit5ae1caefc37ab25ba0dfe18fe6d92bc1fb144fab (patch)
tree7134fa053e6018d784a0ce6abe51c70de837c47c /c/src/lib/libbsp/arm/gp32
parent2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de> (diff)
downloadrtems-5ae1caefc37ab25ba0dfe18fe6d92bc1fb144fab.tar.bz2
2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
* Makefile.am, preinstall.am: Added generic interrupt support modules. * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION. * startup/bspstart.c: Interrupt support changes.
Diffstat (limited to 'c/src/lib/libbsp/arm/gp32')
-rw-r--r--c/src/lib/libbsp/arm/gp32/ChangeLog6
-rw-r--r--c/src/lib/libbsp/arm/gp32/Makefile.am10
-rw-r--r--c/src/lib/libbsp/arm/gp32/include/bsp.h2
-rw-r--r--c/src/lib/libbsp/arm/gp32/preinstall.am8
-rw-r--r--c/src/lib/libbsp/arm/gp32/startup/bspstart.c6
5 files changed, 30 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/arm/gp32/ChangeLog b/c/src/lib/libbsp/arm/gp32/ChangeLog
index 9b2f67975b..8191d339d1 100644
--- a/c/src/lib/libbsp/arm/gp32/ChangeLog
+++ b/c/src/lib/libbsp/arm/gp32/ChangeLog
@@ -1,5 +1,11 @@
2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+ * Makefile.am, preinstall.am: Added generic interrupt support modules.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * startup/bspstart.c: Interrupt support changes.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
* make/custom/gp32.cfg: Use VFP floating point model.
2010-04-25 Joel Sherrill <joel.sherrilL@OARcorp.com>
diff --git a/c/src/lib/libbsp/arm/gp32/Makefile.am b/c/src/lib/libbsp/arm/gp32/Makefile.am
index 0eadacd9f3..27375d8839 100644
--- a/c/src/lib/libbsp/arm/gp32/Makefile.am
+++ b/c/src/lib/libbsp/arm/gp32/Makefile.am
@@ -14,6 +14,8 @@ include_HEADERS = include/bsp.h
include_HEADERS += smc/smc.h
include_HEADERS += ../../shared/include/tm27.h
+include_bsp_HEADERS =
+
nodist_include_HEADERS = include/bspopts.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
DISTCLEANFILES = include/bspopts.h
@@ -38,6 +40,14 @@ libbsp_a_SOURCES += ../../shared/bsplibc.c ../../shared/bsppost.c \
../../shared/gnatinstallhandler.c
# console
libbsp_a_SOURCES += console/uart.c ../../shared/console.c
+# IRQ
+include_bsp_HEADERS += ../../shared/include/irq-generic.h \
+ ../../shared/include/irq-info.h
+libbsp_a_SOURCES += ../../shared/src/irq-generic.c \
+ ../../shared/src/irq-legacy.c \
+ ../../shared/src/irq-info.c \
+ ../../shared/src/irq-shell.c \
+ ../../shared/src/irq-server.c
# abort
libbsp_a_SOURCES += ../shared/abort/abort.c
# smc
diff --git a/c/src/lib/libbsp/arm/gp32/include/bsp.h b/c/src/lib/libbsp/arm/gp32/include/bsp.h
index 7866d01ebd..4441488a6e 100644
--- a/c/src/lib/libbsp/arm/gp32/include/bsp.h
+++ b/c/src/lib/libbsp/arm/gp32/include/bsp.h
@@ -30,6 +30,8 @@ extern "C" {
#include <rtems/clockdrv.h>
#include <s3c24xx.h>
+#define BSP_FEATURE_IRQ_EXTENSION
+
#define gp32_initButtons() {rPBCON=0x0;}
#define gp32_getButtons() \
( (((~rPEDAT >> 6) & 0x3 )<<8) | (((~rPBDAT >> 8) & 0xFF)<<0) )
diff --git a/c/src/lib/libbsp/arm/gp32/preinstall.am b/c/src/lib/libbsp/arm/gp32/preinstall.am
index 45a2912877..e2bd7e9f6c 100644
--- a/c/src/lib/libbsp/arm/gp32/preinstall.am
+++ b/c/src/lib/libbsp/arm/gp32/preinstall.am
@@ -69,3 +69,11 @@ $(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds
+$(PROJECT_INCLUDE)/bsp/irq-generic.h: ../../shared/include/irq-generic.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq-generic.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq-generic.h
+
+$(PROJECT_INCLUDE)/bsp/irq-info.h: ../../shared/include/irq-info.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq-info.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq-info.h
+
diff --git a/c/src/lib/libbsp/arm/gp32/startup/bspstart.c b/c/src/lib/libbsp/arm/gp32/startup/bspstart.c
index eca433c11e..8259b5b681 100644
--- a/c/src/lib/libbsp/arm/gp32/startup/bspstart.c
+++ b/c/src/lib/libbsp/arm/gp32/startup/bspstart.c
@@ -15,13 +15,13 @@
*/
#include <bsp.h>
+#include <bsp/irq-generic.h>
#include <rtems/bspIo.h>
#include <s3c24xx.h>
/*
* External Prototypes
*/
-extern void rtems_irq_mngt_init(void);
extern void rtems_exception_init_mngt(void);
/*
@@ -94,7 +94,9 @@ void bsp_start_default( void )
/*
* Init rtems interrupt management
*/
- rtems_irq_mngt_init();
+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
}
/*