summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/nds
diff options
context:
space:
mode:
authorThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2010-04-09 20:24:57 +0000
committerThomas Doerfler <Thomas.Doerfler@embedded-brains.de>2010-04-09 20:24:57 +0000
commitc193baadaf4ba825374104b150eceaed203800b0 (patch)
tree6933fe6b62789da022c05b5400f36cd2d7b80a57 /c/src/lib/libbsp/arm/nds
parentremoved over-paranoid warning switches (diff)
downloadrtems-c193baadaf4ba825374104b150eceaed203800b0.tar.bz2
unify irq data types and code, merge s3c2400/s3c2410 support
Diffstat (limited to 'c/src/lib/libbsp/arm/nds')
-rw-r--r--c/src/lib/libbsp/arm/nds/ChangeLog6
-rw-r--r--c/src/lib/libbsp/arm/nds/Makefile.am2
-rw-r--r--c/src/lib/libbsp/arm/nds/clock/clock.c16
-rw-r--r--c/src/lib/libbsp/arm/nds/fb/fb.c2
-rw-r--r--c/src/lib/libbsp/arm/nds/irq/irq.c7
-rw-r--r--c/src/lib/libbsp/arm/nds/irq/irq.h62
-rw-r--r--c/src/lib/libbsp/arm/nds/preinstall.am4
-rw-r--r--c/src/lib/libbsp/arm/nds/sound/sound.c2
-rw-r--r--c/src/lib/libbsp/arm/nds/startup/bspstart.c1
-rw-r--r--c/src/lib/libbsp/arm/nds/touchscreen/touchscreen.c2
-rw-r--r--c/src/lib/libbsp/arm/nds/wifi/wifi.c2
11 files changed, 23 insertions, 83 deletions
diff --git a/c/src/lib/libbsp/arm/nds/ChangeLog b/c/src/lib/libbsp/arm/nds/ChangeLog
index 6d9cdc9a29..9033313dcc 100644
--- a/c/src/lib/libbsp/arm/nds/ChangeLog
+++ b/c/src/lib/libbsp/arm/nds/ChangeLog
@@ -1,3 +1,9 @@
+2010-04-09 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
+
+ * Makefile.am, clock/clock.c, fb/fb.c, irq/irq.c, sound/sound.c,
+ startup/bspstart.c, touchscreen/touchscreen.c, wifi/wifi.c: make
+ irq data types consistent
+
2010-04-07 Joel Sherrill <joel.sherrill@oarcorp.com>
* start/start.S: Verify boot_card() is passed a NULL.
diff --git a/c/src/lib/libbsp/arm/nds/Makefile.am b/c/src/lib/libbsp/arm/nds/Makefile.am
index f169d163dd..d35c3ba6e3 100644
--- a/c/src/lib/libbsp/arm/nds/Makefile.am
+++ b/c/src/lib/libbsp/arm/nds/Makefile.am
@@ -88,8 +88,6 @@ block_rel_SOURCES = block/block.c
block_rel_CPPFLAGS = $(AM_CPPFLAGS) -DARM9 -I$(srcdir)/libnds/include -DNDS -I$(srcdir)/libfat/source/disc_io
block_rel_LDFLAGS = $(RTEMS_RELLDFLAGS)
-include_HEADERS += irq/irq.h
-
noinst_PROGRAMS += irq.rel
irq_rel_SOURCES = irq/irq.c
irq_rel_CPPFLAGS = $(AM_CPPFLAGS) -DARM9 -I$(srcdir)/libnds/include
diff --git a/c/src/lib/libbsp/arm/nds/clock/clock.c b/c/src/lib/libbsp/arm/nds/clock/clock.c
index 50445a6620..ea7c01f05d 100644
--- a/c/src/lib/libbsp/arm/nds/clock/clock.c
+++ b/c/src/lib/libbsp/arm/nds/clock/clock.c
@@ -13,7 +13,7 @@
#include <rtems.h>
#include <bsp.h>
-#include "../irq/irq.h"
+#include <rtems/irq.h>
#include <nds.h>
#define CLOCK_VECTOR IRQ_TIMER0
@@ -34,8 +34,7 @@ static rtems_irq_connect_data clock_isr_data = {
NULL,
NULL,
NULL,
- 0,
- 0
+ NULL
};
void update_touchscreen (void);
@@ -52,12 +51,11 @@ void update_touchscreen (void);
* install isr for clock driver.
*/
-void
-Clock_driver_support_install_isr (rtems_isr_entry new, rtems_isr_entry old)
-{
- BSP_install_rtems_irq_handler (&clock_isr_data);
-}
-
+#define Clock_driver_support_install_isr( _new, _old ) \
+ do { \
+ _old = NULL; \
+ BSP_install_rtems_irq_handler(&clock_isr_data); \
+ } while (0)
/*
* disable clock.
*/
diff --git a/c/src/lib/libbsp/arm/nds/fb/fb.c b/c/src/lib/libbsp/arm/nds/fb/fb.c
index f41294d332..9e3d1013c9 100644
--- a/c/src/lib/libbsp/arm/nds/fb/fb.c
+++ b/c/src/lib/libbsp/arm/nds/fb/fb.c
@@ -17,7 +17,7 @@
#include <sys/types.h>
#include <bsp.h>
-#include "../irq/irq.h"
+#include <rtems/irq.h>
#include <rtems/libio.h>
#include <nds.h>
diff --git a/c/src/lib/libbsp/arm/nds/irq/irq.c b/c/src/lib/libbsp/arm/nds/irq/irq.c
index fe8d36a18d..17755c2b59 100644
--- a/c/src/lib/libbsp/arm/nds/irq/irq.c
+++ b/c/src/lib/libbsp/arm/nds/irq/irq.c
@@ -12,7 +12,7 @@
*/
#include <bsp.h>
-#include "irq.h"
+#include <rtems/irq.h>
#include <nds.h>
/*
@@ -55,7 +55,10 @@ BSP_install_rtems_irq_handler (const rtems_irq_connect_data * irq)
rtems_interrupt_disable (level);
- irqSet (irq->name, irq->hdl);
+ /*
+ * FIXME: irq_hdl will probably not be called with its parameter
+ */
+ irqSet (irq->name, (VoidFunctionPointer)irq->hdl);
if (irq->on != NULL)
irq->on (irq);
diff --git a/c/src/lib/libbsp/arm/nds/irq/irq.h b/c/src/lib/libbsp/arm/nds/irq/irq.h
deleted file mode 100644
index bab571646a..0000000000
--- a/c/src/lib/libbsp/arm/nds/irq/irq.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2008 by Matthieu Bucchianeri <mbucchia@gmail.com>
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- *
- * http://www.rtems.com/license/LICENSE
- *
- * $Id$
- */
-
-#ifndef _IRQ_H_
-#define _IRQ_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-/*
- * Type definition for RTEMS managed interrupts
- */
-
- typedef unsigned char rtems_irq_name;
- typedef unsigned char rtems_irq_level;
- typedef unsigned char rtems_irq_trigger;
-
- struct __rtems_irq_connect_data__; /* forward declaratiuon */
-
- typedef void (*rtems_irq_hdl) (void);
- typedef void (*rtems_irq_enable) (const struct __rtems_irq_connect_data__
- *);
- typedef void (*rtems_irq_disable) (const struct __rtems_irq_connect_data__
- *);
- typedef int (*rtems_irq_is_enabled) (const struct __rtems_irq_connect_data__
- *);
-
-/** irq connection data structure */
- typedef struct __rtems_irq_connect_data__
- {
- rtems_irq_name name;
- rtems_irq_hdl hdl;
- rtems_irq_enable on;
- rtems_irq_disable off;
- rtems_irq_is_enabled isOn;
- rtems_irq_level irqLevel;
- rtems_irq_trigger irqTrigger;
- } rtems_irq_connect_data;
-
- void BSP_rtems_irq_mngt_init (void);
-
- int BSP_install_rtems_irq_handler (const rtems_irq_connect_data *);
-
- int BSP_get_current_rtems_irq_handler (rtems_irq_connect_data *);
-
- int BSP_remove_rtems_irq_handler (const rtems_irq_connect_data *);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/c/src/lib/libbsp/arm/nds/preinstall.am b/c/src/lib/libbsp/arm/nds/preinstall.am
index 48e2aced92..e0555de37f 100644
--- a/c/src/lib/libbsp/arm/nds/preinstall.am
+++ b/c/src/lib/libbsp/arm/nds/preinstall.am
@@ -78,10 +78,6 @@ $(PROJECT_INCLUDE)/nds/sound.h: sound/sound.h $(PROJECT_INCLUDE)/nds/$(dirstamp)
$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/nds/sound.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/nds/sound.h
-$(PROJECT_INCLUDE)/irq.h: irq/irq.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/irq.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/irq.h
-
$(PROJECT_INCLUDE)/libnds/$(dirstamp):
@$(MKDIR_P) $(PROJECT_INCLUDE)/libnds
@: > $(PROJECT_INCLUDE)/libnds/$(dirstamp)
diff --git a/c/src/lib/libbsp/arm/nds/sound/sound.c b/c/src/lib/libbsp/arm/nds/sound/sound.c
index 9278926f89..20bcbc4153 100644
--- a/c/src/lib/libbsp/arm/nds/sound/sound.c
+++ b/c/src/lib/libbsp/arm/nds/sound/sound.c
@@ -17,7 +17,7 @@
#include <sys/types.h>
#include <bsp.h>
-#include "../irq/irq.h"
+#include <rtems/irq.h>
#include <rtems/libio.h>
#include <nds.h>
diff --git a/c/src/lib/libbsp/arm/nds/startup/bspstart.c b/c/src/lib/libbsp/arm/nds/startup/bspstart.c
index 7719f306a3..2da9933691 100644
--- a/c/src/lib/libbsp/arm/nds/startup/bspstart.c
+++ b/c/src/lib/libbsp/arm/nds/startup/bspstart.c
@@ -15,6 +15,7 @@
#include <bsp/bootcard.h>
#include <nds.h>
+extern void BSP_rtems_irq_mngt_init (void);
/*
* start the platform.
*/
diff --git a/c/src/lib/libbsp/arm/nds/touchscreen/touchscreen.c b/c/src/lib/libbsp/arm/nds/touchscreen/touchscreen.c
index 92daf39193..9e4cd16f57 100644
--- a/c/src/lib/libbsp/arm/nds/touchscreen/touchscreen.c
+++ b/c/src/lib/libbsp/arm/nds/touchscreen/touchscreen.c
@@ -17,7 +17,7 @@
#include <sys/types.h>
#include <bsp.h>
-#include "../irq/irq.h"
+#include <rtems/irq.h>
#include <rtems/libio.h>
#include <nds.h>
diff --git a/c/src/lib/libbsp/arm/nds/wifi/wifi.c b/c/src/lib/libbsp/arm/nds/wifi/wifi.c
index c8c6f56701..013fd0fe4a 100644
--- a/c/src/lib/libbsp/arm/nds/wifi/wifi.c
+++ b/c/src/lib/libbsp/arm/nds/wifi/wifi.c
@@ -31,7 +31,7 @@
#include <netinet/in.h>
#include <netinet/if_ether.h>
-#include <irq.h>
+#include <rtems/irq.h>
#include <nds.h>
#include <dswifi9.h>