<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>change log for rtems (2010-04-30)</title>
</head>
<body text='#000000' bgcolor='#ffffff'>
<a name='cs1'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>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, network/network.c: Interrupt support changes.
* console/uart.c: Fixed warnings.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/ChangeLog.diff?r1=text&tr1=1.50&r2=text&tr2=1.51&diff_format=h">M</a></td><td width='1%'>1.51</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/Makefile.am.diff?r1=text&tr1=1.17&r2=text&tr2=1.18&diff_format=h">M</a></td><td width='1%'>1.18</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/console/uart.c.diff?r1=text&tr1=1.6&r2=text&tr2=1.7&diff_format=h">M</a></td><td width='1%'>1.7</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/console/uart.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/include/bsp.h.diff?r1=text&tr1=1.10&r2=text&tr2=1.11&diff_format=h">M</a></td><td width='1%'>1.11</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/network/network.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/network/network.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/preinstall.am.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c.diff?r1=text&tr1=1.15&r2=text&tr2=1.16&diff_format=h">M</a></td><td width='1%'>1.16</td><td width='100%'>c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/ChangeLog:1.50 rtems/c/src/lib/libbsp/arm/rtl22xx/ChangeLog:1.51
--- rtems/c/src/lib/libbsp/arm/rtl22xx/ChangeLog:1.50 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/ChangeLog Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -1,5 +1,12 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * Makefile.am, preinstall.am: Added generic interrupt support modules.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * startup/bspstart.c, network/network.c: Interrupt support changes.
+ * console/uart.c: Fixed warnings.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * make/custom/rtl22xx.cfg: Use VFP floating point model.
2010-04-09 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/Makefile.am:1.17 rtems/c/src/lib/libbsp/arm/rtl22xx/Makefile.am:1.18
--- rtems/c/src/lib/libbsp/arm/rtl22xx/Makefile.am:1.17 Sat Nov 28 00:24:46 2009
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/Makefile.am Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -13,6 +13,8 @@
</font> include_HEADERS = include/bsp.h
include_HEADERS += ../../shared/include/tm27.h
<font color='#000088'>+include_bsp_HEADERS =
+
</font> nodist_include_HEADERS = include/bspopts.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
DISTCLEANFILES = include/bspopts.h
<font color='#997700'>@@ -40,6 +42,14 @@
</font> ../../shared/gnatinstallhandler.c
# console
libbsp_a_SOURCES += ../../shared/console.c
<font color='#000088'>+# 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
</font> # simple_abort
libbsp_a_SOURCES += ../shared/abort/simple_abort.c
# debugio
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/console/uart.c:1.6 rtems/c/src/lib/libbsp/arm/rtl22xx/console/uart.c:1.7
--- rtems/c/src/lib/libbsp/arm/rtl22xx/console/uart.c:1.6 Sun Nov 29 08:53:01 2009
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/console/uart.c Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -39,7 +39,7 @@
</font> static int uart_first_open(int major, int minor, void *arg);
static int uart_last_close(int major, int minor, void *arg);
static int uart_read(int minor);
<font color='#880000'>-static int uart_write(int minor, const char *buf, int len);
</font><font color='#000088'>+static ssize_t uart_write(int minor, const char *buf, size_t len);
</font> static void uart_init(int minor);
static void uart_write_polled(int minor, char c);
static int uart_set_attributes(int minor, const struct termios *t);
<font color='#997700'>@@ -180,9 +180,9 @@
</font> *
* return 1 on success, -1 on error
*/
<font color='#880000'>-static int uart_write(int minor, const char *buf, int len)
</font><font color='#000088'>+static ssize_t uart_write(int minor, const char *buf, size_t len)
</font> {
<font color='#880000'>- int i;
</font><font color='#000088'>+ size_t i;
</font>
if (minor == 0) {
for (i = 0; i < len; i++) {
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/include/bsp.h:1.10 rtems/c/src/lib/libbsp/arm/rtl22xx/include/bsp.h:1.11
--- rtems/c/src/lib/libbsp/arm/rtl22xx/include/bsp.h:1.10 Wed Apr 7 16:49:20 2010
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/include/bsp.h Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -25,6 +25,7 @@
</font> #include <rtems/console.h>
#include <rtems/clockdrv.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
</font>
#define CONFIG_ARM_CLK 60000000L
/* cclk=cco/(2*P) */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/network/network.c:1.3 rtems/c/src/lib/libbsp/arm/rtl22xx/network/network.c:1.4
--- rtems/c/src/lib/libbsp/arm/rtl22xx/network/network.c:1.3 Fri Apr 9 15:24:57 2010
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/network/network.c Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -1,7 +1,7 @@
</font> /*Note: this file is copy from 7312 BSP, and untested yet*/
#include <rtems.h>
#include <sys/mbuf.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <libchip/cs8900.h>
#define CS8900_BASE 0x20000300
<font color='#997700'>@@ -10,7 +10,7 @@
</font> cs8900_device *g_cs;
void cs8900_isr(rtems_irq_hdl_param unused);
rtems_irq_connect_data cs8900_isr_data = {LPC22xx_INTERRUPT_EINT2,
<font color='#880000'>- (rtems_irq_hdl)cs8900_isr,
</font><font color='#000088'>+ cs8900_isr,
</font> NULL,
NULL,
NULL,
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/preinstall.am:1.3 rtems/c/src/lib/libbsp/arm/rtl22xx/preinstall.am:1.4
--- rtems/c/src/lib/libbsp/arm/rtl22xx/preinstall.am:1.3 Thu Oct 2 16:37:42 2008
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/preinstall.am Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -69,3 +69,11 @@
</font> $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/uart.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/uart.h
<font color='#000088'>+$(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
+
</font>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c:1.15 rtems/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c:1.16
--- rtems/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c:1.15 Fri Apr 9 15:24:57 2010
+++ rtems/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c Fri Apr 30 09:24:03 2010
</font><font color='#997700'>@@ -11,12 +11,12 @@
</font> */
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <lpc22xx.h>
/*
* Function prototypes
*/
<font color='#880000'>-extern void rtems_irq_mngt_init(void);
</font> extern void rtems_exception_init_mngt(void);
extern void UART0_Ini(void);
extern void printi(unsigned long);
<font color='#997700'>@@ -77,15 +77,6 @@
</font> // MAMTIM = 3;
//MAMCR = 2;
<font color='#880000'>- /* init VIC */
- VICIntEnClr = 0xffffffff;
- VICVectAddr = 0;
- VICIntSelect = 0;
-
- /* disable interrupts */
- /* Setup interrupt controller.*/
- VICProtection = 0;
-
</font> UART0_Ini();
/*
<font color='#997700'>@@ -96,7 +87,9 @@
</font> /*
* Init rtems interrupt management
*/
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font> } /* bsp_start */
/*
</pre>
<p> </p>
<a name='cs2'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>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, rtl8019/rtl8019.c: Interrupt support changes.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gumstix/ChangeLog.diff?r1=text&tr1=1.22&r2=text&tr2=1.23&diff_format=h">M</a></td><td width='1%'>1.23</td><td width='100%'>c/src/lib/libbsp/arm/gumstix/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gumstix/Makefile.am.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/gumstix/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gumstix/include/bsp.h.diff?r1=text&tr1=1.4&r2=text&tr2=1.5&diff_format=h">M</a></td><td width='1%'>1.5</td><td width='100%'>c/src/lib/libbsp/arm/gumstix/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gumstix/preinstall.am.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libbsp/arm/gumstix/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gumstix/rtl8019/rtl8019.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libbsp/arm/gumstix/rtl8019/rtl8019.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libbsp/arm/gumstix/startup/bspstart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gumstix/ChangeLog:1.22 rtems/c/src/lib/libbsp/arm/gumstix/ChangeLog:1.23
--- rtems/c/src/lib/libbsp/arm/gumstix/ChangeLog:1.22 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/gumstix/ChangeLog Fri Apr 30 09:27:24 2010
</font><font color='#997700'>@@ -1,5 +1,11 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * Makefile.am, preinstall.am: Added generic interrupt support modules.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * startup/bspstart.c, rtl8019/rtl8019.c: Interrupt support changes.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * make/custom/gumstix.cfg: Use VFP floating point model.
2010-04-09 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gumstix/Makefile.am:1.7 rtems/c/src/lib/libbsp/arm/gumstix/Makefile.am:1.8
--- rtems/c/src/lib/libbsp/arm/gumstix/Makefile.am:1.7 Sat Nov 28 00:24:46 2009
+++ rtems/c/src/lib/libbsp/arm/gumstix/Makefile.am Fri Apr 30 09:27:24 2010
</font><font color='#997700'>@@ -14,6 +14,8 @@
</font> include_HEADERS = include/bsp.h
include_HEADERS += include/tm27.h
<font color='#000088'>+include_bsp_HEADERS =
+
</font> nodist_include_HEADERS = include/bspopts.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
DISTCLEANFILES = include/bspopts.h
<font color='#997700'>@@ -38,6 +40,14 @@
</font>
#console
libbsp_a_SOURCES += console/uarts.c ../../shared/console.c
<font color='#000088'>+# 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
</font> #abort
libbsp_a_SOURCES += ../shared/abort/abort.c
#framebuffer
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gumstix/include/bsp.h:1.4 rtems/c/src/lib/libbsp/arm/gumstix/include/bsp.h:1.5
--- rtems/c/src/lib/libbsp/arm/gumstix/include/bsp.h:1.4 Wed Sep 16 15:43:40 2009
+++ rtems/c/src/lib/libbsp/arm/gumstix/include/bsp.h Fri Apr 30 09:27:24 2010
</font><font color='#997700'>@@ -22,6 +22,8 @@
</font> #include <rtems/clockdrv.h>
#include <libchip/serial.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
+
</font> #define BSP_HAS_FRAME_BUFFER 1
/* What is the input clock freq in hertz */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gumstix/preinstall.am:1.3 rtems/c/src/lib/libbsp/arm/gumstix/preinstall.am:1.4
--- rtems/c/src/lib/libbsp/arm/gumstix/preinstall.am:1.3 Fri Sep 18 03:05:14 2009
+++ rtems/c/src/lib/libbsp/arm/gumstix/preinstall.am Fri Apr 30 09:27:24 2010
</font><font color='#997700'>@@ -65,6 +65,14 @@
</font> $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds
<font color='#000088'>+$(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
+
</font> if ON_SKYEYE
endif
if ON_SKYEYE
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gumstix/rtl8019/rtl8019.c:1.3 rtems/c/src/lib/libbsp/arm/gumstix/rtl8019/rtl8019.c:1.4
--- rtems/c/src/lib/libbsp/arm/gumstix/rtl8019/rtl8019.c:1.3 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/gumstix/rtl8019/rtl8019.c Fri Apr 30 09:27:24 2010
</font><font color='#997700'>@@ -11,7 +11,7 @@
</font> */
#include <bsp.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include "wd80x3.h"
#include <stdio.h>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c:1.3 rtems/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c:1.4
--- rtems/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c:1.3 Sat Aug 22 08:55:51 2009
+++ rtems/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c Fri Apr 30 09:27:24 2010
</font><font color='#997700'>@@ -9,13 +9,13 @@
</font> */
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <rtems/libcsupport.h>
#include <rtems/libio.h>
#include <pxa255.h>
/* Function prototypes */
void rtems_exception_init_mngt(void);
<font color='#880000'>-void rtems_irq_mngt_init(void);
</font>
/*
*
<font color='#997700'>@@ -36,7 +36,9 @@
</font> /* disable interrupts */
XSCALE_INT_ICMR = 0x0;
rtems_exception_init_mngt();
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font> } /* bsp_start */
/*
</pre>
<p> </p>
<a name='cs3'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>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.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gp32/ChangeLog.diff?r1=text&tr1=1.60&r2=text&tr2=1.61&diff_format=h">M</a></td><td width='1%'>1.61</td><td width='100%'>c/src/lib/libbsp/arm/gp32/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gp32/Makefile.am.diff?r1=text&tr1=1.23&r2=text&tr2=1.24&diff_format=h">M</a></td><td width='1%'>1.24</td><td width='100%'>c/src/lib/libbsp/arm/gp32/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gp32/include/bsp.h.diff?r1=text&tr1=1.12&r2=text&tr2=1.13&diff_format=h">M</a></td><td width='1%'>1.13</td><td width='100%'>c/src/lib/libbsp/arm/gp32/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gp32/preinstall.am.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/gp32/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gp32/startup/bspstart.c.diff?r1=text&tr1=1.19&r2=text&tr2=1.20&diff_format=h">M</a></td><td width='1%'>1.20</td><td width='100%'>c/src/lib/libbsp/arm/gp32/startup/bspstart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gp32/ChangeLog:1.60 rtems/c/src/lib/libbsp/arm/gp32/ChangeLog:1.61
--- rtems/c/src/lib/libbsp/arm/gp32/ChangeLog:1.60 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/gp32/ChangeLog Fri Apr 30 09:30:09 2010
</font><font color='#997700'>@@ -1,5 +1,11 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * 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>
+
</font> * make/custom/gp32.cfg: Use VFP floating point model.
2010-04-25 Joel Sherrill <joel.sherrilL@OARcorp.com>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gp32/Makefile.am:1.23 rtems/c/src/lib/libbsp/arm/gp32/Makefile.am:1.24
--- rtems/c/src/lib/libbsp/arm/gp32/Makefile.am:1.23 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/gp32/Makefile.am Fri Apr 30 09:30:09 2010
</font><font color='#997700'>@@ -14,6 +14,8 @@
</font> include_HEADERS += smc/smc.h
include_HEADERS += ../../shared/include/tm27.h
<font color='#000088'>+include_bsp_HEADERS =
+
</font> nodist_include_HEADERS = include/bspopts.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
DISTCLEANFILES = include/bspopts.h
<font color='#997700'>@@ -38,6 +40,14 @@
</font> ../../shared/gnatinstallhandler.c
# console
libbsp_a_SOURCES += console/uart.c ../../shared/console.c
<font color='#000088'>+# 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
</font> # abort
libbsp_a_SOURCES += ../shared/abort/abort.c
# smc
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gp32/include/bsp.h:1.12 rtems/c/src/lib/libbsp/arm/gp32/include/bsp.h:1.13
--- rtems/c/src/lib/libbsp/arm/gp32/include/bsp.h:1.12 Sun Nov 29 08:53:00 2009
+++ rtems/c/src/lib/libbsp/arm/gp32/include/bsp.h Fri Apr 30 09:30:09 2010
</font><font color='#997700'>@@ -30,6 +30,8 @@
</font> #include <rtems/clockdrv.h>
#include <s3c24xx.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
+
</font> #define gp32_initButtons() {rPBCON=0x0;}
#define gp32_getButtons() \
( (((~rPEDAT >> 6) & 0x3 )<<8) | (((~rPBDAT >> 8) & 0xFF)<<0) )
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gp32/preinstall.am:1.7 rtems/c/src/lib/libbsp/arm/gp32/preinstall.am:1.8
--- rtems/c/src/lib/libbsp/arm/gp32/preinstall.am:1.7 Thu Oct 2 16:37:37 2008
+++ rtems/c/src/lib/libbsp/arm/gp32/preinstall.am Fri Apr 30 09:30:09 2010
</font><font color='#997700'>@@ -69,3 +69,11 @@
</font> $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds
<font color='#000088'>+$(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
+
</font>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gp32/startup/bspstart.c:1.19 rtems/c/src/lib/libbsp/arm/gp32/startup/bspstart.c:1.20
--- rtems/c/src/lib/libbsp/arm/gp32/startup/bspstart.c:1.19 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/gp32/startup/bspstart.c Fri Apr 30 09:30:09 2010
</font><font color='#997700'>@@ -15,13 +15,13 @@
</font> */
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <rtems/bspIo.h>
#include <s3c24xx.h>
/*
* External Prototypes
*/
<font color='#880000'>-extern void rtems_irq_mngt_init(void);
</font> extern void rtems_exception_init_mngt(void);
/*
<font color='#997700'>@@ -94,7 +94,9 @@
</font> /*
* Init rtems interrupt management
*/
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font> }
/*
</pre>
<p> </p>
<a name='cs4'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>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, console/uart.c, network/network.c: Interrupt
support changes.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/ChangeLog.diff?r1=text&tr1=1.67&r2=text&tr2=1.68&diff_format=h">M</a></td><td width='1%'>1.68</td><td width='100%'>c/src/lib/libbsp/arm/csb336/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/Makefile.am.diff?r1=text&tr1=1.25&r2=text&tr2=1.26&diff_format=h">M</a></td><td width='1%'>1.26</td><td width='100%'>c/src/lib/libbsp/arm/csb336/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/console/uart.c.diff?r1=text&tr1=1.8&r2=text&tr2=1.9&diff_format=h">M</a></td><td width='1%'>1.9</td><td width='100%'>c/src/lib/libbsp/arm/csb336/console/uart.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/include/bsp.h.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/csb336/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/network/network.c.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/csb336/network/network.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/preinstall.am.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/csb336/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb336/startup/bspstart.c.diff?r1=text&tr1=1.16&r2=text&tr2=1.17&diff_format=h">M</a></td><td width='1%'>1.17</td><td width='100%'>c/src/lib/libbsp/arm/csb336/startup/bspstart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/ChangeLog:1.67 rtems/c/src/lib/libbsp/arm/csb336/ChangeLog:1.68
--- rtems/c/src/lib/libbsp/arm/csb336/ChangeLog:1.67 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/csb336/ChangeLog Fri Apr 30 09:41:12 2010
</font><font color='#997700'>@@ -1,5 +1,12 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * Makefile.am, preinstall.am: Added generic interrupt support modules.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * startup/bspstart.c, console/uart.c, network/network.c: Interrupt
+ support changes.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * make/custom/csb336.cfg: Use VFP floating point model.
2010-04-09 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/Makefile.am:1.25 rtems/c/src/lib/libbsp/arm/csb336/Makefile.am:1.26
--- rtems/c/src/lib/libbsp/arm/csb336/Makefile.am:1.25 Sat Nov 28 00:24:46 2009
+++ rtems/c/src/lib/libbsp/arm/csb336/Makefile.am Fri Apr 30 09:40:16 2010
</font><font color='#997700'>@@ -13,6 +13,8 @@
</font> include_HEADERS = include/bsp.h
include_HEADERS += ../../shared/include/tm27.h
<font color='#000088'>+include_bsp_HEADERS =
+
</font> nodist_include_HEADERS = include/bspopts.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
DISTCLEANFILES = include/bspopts.h
<font color='#997700'>@@ -39,6 +41,14 @@
</font> libbsp_a_SOURCES += console/uart.c
# abort
libbsp_a_SOURCES += ../shared/abort/abort.c
<font color='#000088'>+# 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
</font>
if HAS_NETWORKING
network_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/console/uart.c:1.8 rtems/c/src/lib/libbsp/arm/csb336/console/uart.c:1.9
--- rtems/c/src/lib/libbsp/arm/csb336/console/uart.c:1.8 Wed Apr 7 16:48:14 2010
+++ rtems/c/src/lib/libbsp/arm/csb336/console/uart.c Fri Apr 30 09:40:16 2010
</font><font color='#997700'>@@ -17,7 +17,7 @@
</font> #include <rtems/bspIo.h>
#include <termios.h>
#include <rtems/irq.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <mc9328mxl.h>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/include/bsp.h:1.7 rtems/c/src/lib/libbsp/arm/csb336/include/bsp.h:1.8
--- rtems/c/src/lib/libbsp/arm/csb336/include/bsp.h:1.7 Sun Nov 29 08:52:59 2009
+++ rtems/c/src/lib/libbsp/arm/csb336/include/bsp.h Fri Apr 30 09:40:16 2010
</font><font color='#997700'>@@ -27,6 +27,8 @@
</font> #include <rtems/clockdrv.h>
#include <mc9328mxl.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
+
</font> /* What is the input clock freq in hertz? */
#define BSP_OSC_FREQ 16000000 /* 16 MHz oscillator */
#define BSP_XTAL_FREQ 32768 /* 32.768 KHz crystal */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/network/network.c:1.7 rtems/c/src/lib/libbsp/arm/csb336/network/network.c:1.8
--- rtems/c/src/lib/libbsp/arm/csb336/network/network.c:1.7 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/csb336/network/network.c Fri Apr 30 09:40:17 2010
</font><font color='#997700'>@@ -33,7 +33,7 @@
</font> #include <netinet/in.h>
#include <netinet/if_ether.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font>
/* RTEMS event used by interrupt handler to start receive daemon. */
#define START_RECEIVE_EVENT RTEMS_EVENT_1
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/preinstall.am:1.7 rtems/c/src/lib/libbsp/arm/csb336/preinstall.am:1.8
--- rtems/c/src/lib/libbsp/arm/csb336/preinstall.am:1.7 Thu Oct 2 16:37:29 2008
+++ rtems/c/src/lib/libbsp/arm/csb336/preinstall.am Fri Apr 30 09:40:16 2010
</font><font color='#997700'>@@ -65,3 +65,11 @@
</font> $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds
<font color='#000088'>+$(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
+
</font>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb336/startup/bspstart.c:1.16 rtems/c/src/lib/libbsp/arm/csb336/startup/bspstart.c:1.17
--- rtems/c/src/lib/libbsp/arm/csb336/startup/bspstart.c:1.16 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/csb336/startup/bspstart.c Fri Apr 30 09:40:17 2010
</font><font color='#997700'>@@ -12,10 +12,10 @@
</font> */
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <rtems/bspIo.h>
#include <mc9328mxl.h>
<font color='#880000'>-extern void rtems_irq_mngt_init(void);
</font> extern void rtems_exception_init_mngt(void);
extern void mmu_set_cpu_async_mode(void);
<font color='#997700'>@@ -65,7 +65,9 @@
</font> /*
* Init rtems interrupt management
*/
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font> } /* bsp_start */
/* Calcuate the frequency for perclk1 */
</pre>
<p> </p>
<a name='cs5'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>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, network/network.c: Interrupt support changes.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb337/ChangeLog.diff?r1=text&tr1=1.71&r2=text&tr2=1.72&diff_format=h">M</a></td><td width='1%'>1.72</td><td width='100%'>c/src/lib/libbsp/arm/csb337/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb337/Makefile.am.diff?r1=text&tr1=1.32&r2=text&tr2=1.33&diff_format=h">M</a></td><td width='1%'>1.33</td><td width='100%'>c/src/lib/libbsp/arm/csb337/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb337/include/bsp.h.diff?r1=text&tr1=1.8&r2=text&tr2=1.9&diff_format=h">M</a></td><td width='1%'>1.9</td><td width='100%'>c/src/lib/libbsp/arm/csb337/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb337/network/network.c.diff?r1=text&tr1=1.8&r2=text&tr2=1.9&diff_format=h">M</a></td><td width='1%'>1.9</td><td width='100%'>c/src/lib/libbsp/arm/csb337/network/network.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb337/preinstall.am.diff?r1=text&tr1=1.13&r2=text&tr2=1.14&diff_format=h">M</a></td><td width='1%'>1.14</td><td width='100%'>c/src/lib/libbsp/arm/csb337/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/csb337/startup/bspstart.c.diff?r1=text&tr1=1.19&r2=text&tr2=1.20&diff_format=h">M</a></td><td width='1%'>1.20</td><td width='100%'>c/src/lib/libbsp/arm/csb337/startup/bspstart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb337/ChangeLog:1.71 rtems/c/src/lib/libbsp/arm/csb337/ChangeLog:1.72
--- rtems/c/src/lib/libbsp/arm/csb337/ChangeLog:1.71 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/csb337/ChangeLog Fri Apr 30 09:44:17 2010
</font><font color='#997700'>@@ -1,5 +1,11 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * Makefile.am, preinstall.am: Added generic interrupt support modules.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * startup/bspstart.c, network/network.c: Interrupt support changes.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * make/custom/csb337.cfg: Use VFP floating point model.
2010-04-25 Joel Sherrill <joel.sherrilL@OARcorp.com>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb337/Makefile.am:1.32 rtems/c/src/lib/libbsp/arm/csb337/Makefile.am:1.33
--- rtems/c/src/lib/libbsp/arm/csb337/Makefile.am:1.32 Mon Nov 30 16:00:34 2009
+++ rtems/c/src/lib/libbsp/arm/csb337/Makefile.am Fri Apr 30 09:44:17 2010
</font><font color='#997700'>@@ -16,6 +16,8 @@
</font> include_HEADERS += include/sed1356.h
endif
<font color='#000088'>+include_bsp_HEADERS =
+
</font> if ENABLE_UMON
include_umondir = $(includedir)/umon
include_umon_HEADERS = ../../shared/umon/cli.h
<font color='#997700'>@@ -60,6 +62,14 @@
</font> ../../shared/gnatinstallhandler.c
# console
libbsp_a_SOURCES += ../../shared/console.c console/uarts.c
<font color='#000088'>+# 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
</font> if ENABLE_LCD
libbsp_a_SOURCES += console/sed1356.c console/fbcons.c
endif
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb337/include/bsp.h:1.8 rtems/c/src/lib/libbsp/arm/csb337/include/bsp.h:1.9
--- rtems/c/src/lib/libbsp/arm/csb337/include/bsp.h:1.8 Sun Nov 29 08:53:00 2009
+++ rtems/c/src/lib/libbsp/arm/csb337/include/bsp.h Fri Apr 30 09:44:17 2010
</font><font color='#997700'>@@ -26,6 +26,7 @@
</font> #include <rtems/clockdrv.h>
#include <libchip/serial.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
</font>
/* What is the input clock freq in hertz? */
#define BSP_MAIN_FREQ 3686400 /* 3.6864 MHz */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb337/network/network.c:1.8 rtems/c/src/lib/libbsp/arm/csb337/network/network.c:1.9
--- rtems/c/src/lib/libbsp/arm/csb337/network/network.c:1.8 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/csb337/network/network.c Fri Apr 30 09:44:17 2010
</font><font color='#997700'>@@ -35,7 +35,7 @@
</font> #include <netinet/in.h>
#include <netinet/if_ether.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <bspopts.h>
/* enable debugging of the PHY code */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb337/preinstall.am:1.13 rtems/c/src/lib/libbsp/arm/csb337/preinstall.am:1.14
--- rtems/c/src/lib/libbsp/arm/csb337/preinstall.am:1.13 Mon Nov 30 16:00:35 2009
+++ rtems/c/src/lib/libbsp/arm/csb337/preinstall.am Fri Apr 30 09:44:17 2010
</font><font color='#997700'>@@ -106,3 +106,11 @@
</font> $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds
<font color='#000088'>+$(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
+
</font>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/csb337/startup/bspstart.c:1.19 rtems/c/src/lib/libbsp/arm/csb337/startup/bspstart.c:1.20
--- rtems/c/src/lib/libbsp/arm/csb337/startup/bspstart.c:1.19 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/csb337/startup/bspstart.c Fri Apr 30 09:44:17 2010
</font><font color='#997700'>@@ -17,6 +17,7 @@
</font> */
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <at91rm9200.h>
#include <at91rm9200_pmc.h>
#include <at91rm9200_emac.h>
<font color='#997700'>@@ -24,7 +25,6 @@
</font> #include <at91rm9200_usart.h>
/* Function prototypes */
<font color='#880000'>-extern void rtems_irq_mngt_init(void);
</font> extern void rtems_exception_init_mngt(void);
void bsp_libc_init( void *, uint32_t, int );
static void fix_mac_addr(void);
<font color='#997700'>@@ -65,7 +65,9 @@
</font> /*
* Init rtems interrupt management
*/
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font>
} /* bsp_start */
</pre>
<p> </p>
<a name='cs6'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
* irq/bsp_irq_init.c: Removed file.
* Makefile.am, preinstall.am: Reflect change above. Added generic
interrupt support modules.
* include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
* startup/bspstart.c, irq/bsp_irq_asm.S, clock/clockdrv.c,
network/network.c: Interrupt support changes.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/ChangeLog.diff?r1=text&tr1=1.113&r2=text&tr2=1.114&diff_format=h">M</a></td><td width='1%'>1.114</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/Makefile.am.diff?r1=text&tr1=1.39&r2=text&tr2=1.40&diff_format=h">M</a></td><td width='1%'>1.40</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c.diff?r1=text&tr1=1.12&r2=text&tr2=1.13&diff_format=h">M</a></td><td width='1%'>1.13</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/include/bsp.h.diff?r1=text&tr1=1.12&r2=text&tr2=1.13&diff_format=h">M</a></td><td width='1%'>1.13</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_asm.S.diff?r1=text&tr1=1.4&r2=text&tr2=1.5&diff_format=h">M</a></td><td width='1%'>1.5</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_asm.S</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_init.c?rev=1.7&content-type=text/vnd.viewcvs-markup">R</a></td><td width='1%'><font color="#880000">1.7</font></td><td width='100%'><font color="#880000">c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_init.c</font></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.h.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/irq/irq.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/irq/irq.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/network/network.c.diff?r1=text&tr1=1.8&r2=text&tr2=1.9&diff_format=h">M</a></td><td width='1%'>1.9</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/network/network.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/preinstall.am.diff?r1=text&tr1=1.9&r2=text&tr2=1.10&diff_format=h">M</a></td><td width='1%'>1.10</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c.diff?r1=text&tr1=1.15&r2=text&tr2=1.16&diff_format=h">M</a></td><td width='1%'>1.16</td><td width='100%'>c/src/lib/libbsp/arm/edb7312/startup/bspstart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/ChangeLog:1.113 rtems/c/src/lib/libbsp/arm/edb7312/ChangeLog:1.114
--- rtems/c/src/lib/libbsp/arm/edb7312/ChangeLog:1.113 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/edb7312/ChangeLog Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -1,5 +1,14 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * irq/bsp_irq_init.c: Removed file.
+ * Makefile.am, preinstall.am: Reflect change above. Added generic
+ interrupt support modules.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * startup/bspstart.c, irq/bsp_irq_asm.S, clock/clockdrv.c,
+ network/network.c: Interrupt support changes.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * make/custom/edb7312.cfg: Use VFP floating point model.
2010-04-10 Ralf Corsépius <ralf.corsepius@rtems.org>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/Makefile.am:1.39 rtems/c/src/lib/libbsp/arm/edb7312/Makefile.am:1.40
--- rtems/c/src/lib/libbsp/arm/edb7312/Makefile.am:1.39 Sat Nov 28 00:24:46 2009
+++ rtems/c/src/lib/libbsp/arm/edb7312/Makefile.am Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -13,6 +13,8 @@
</font> include_HEADERS = include/bsp.h
include_HEADERS += ../../shared/include/tm27.h
<font color='#000088'>+include_bsp_HEADERS =
+
</font> nodist_include_HEADERS = include/bspopts.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
DISTCLEANFILES = include/bspopts.h
<font color='#997700'>@@ -47,11 +49,17 @@
</font> # abort
libbsp_a_SOURCES += ../shared/abort/abort.c
<font color='#880000'>-include_HEADERS += irq/irq.h
</font> # irq
<font color='#880000'>-libbsp_a_SOURCES += irq/irq.c irq/bsp_irq_init.c \
- ../../arm/shared/irq/irq_init.c irq/bsp_irq_asm.S \
- irq/irq.h
</font><font color='#000088'>+include_bsp_HEADERS += ../../shared/include/irq-generic.h \
+ ../../shared/include/irq-info.h \
+ irq/irq.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 \
+ irq/irq.c \
+ irq/bsp_irq_asm.S
</font>
if HAS_NETWORKING
network_CPPFLAGS = -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c:1.12 rtems/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c:1.13
--- rtems/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c:1.12 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/edb7312/clock/clockdrv.c Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -14,7 +14,7 @@
</font> #include <rtems.h>
#include <ep7312.h>
#include <bsp.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font>
#if ON_SKYEYE==1
#define CLOCK_DRIVER_USE_FAST_IDLE
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/include/bsp.h:1.12 rtems/c/src/lib/libbsp/arm/edb7312/include/bsp.h:1.13
--- rtems/c/src/lib/libbsp/arm/edb7312/include/bsp.h:1.12 Fri Aug 21 12:58:26 2009
+++ rtems/c/src/lib/libbsp/arm/edb7312/include/bsp.h Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -25,6 +25,8 @@
</font> #include <rtems/console.h>
#include <rtems/clockdrv.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
+
</font> /*
* Define the interrupt mechanism for Time Test 27
*
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_asm.S:1.4 rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_asm.S:1.5
--- rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_asm.S:1.4 Fri Jul 17 08:53:04 2009
+++ rtems/c/src/lib/libbsp/arm/edb7312/irq/bsp_irq_asm.S Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -16,7 +16,7 @@
</font> #define __asm__
#include "irq.h"
<font color='#880000'>-#define VECTOR_TABLE 0x40
</font><font color='#000088'>+ .extern edb7312_interrupt_dispatch
</font>
/*
* Function to obtain, execute an IT handler and acknowledge the IT
<font color='#997700'>@@ -45,7 +45,7 @@
</font> and r6, r4, r5 /* only look at interrupts which are enabled */
tst r6, #0x0001
beq check_extfiq
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 21)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_DAIINT
</font> b get_handler
/*
<font color='#997700'>@@ -57,7 +57,7 @@
</font> and r6, r4, r5 /* only look at interrupts which are enabled */
tst r6, #0x0001
beq check_bl
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 0)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_EXTFIQ
</font> b get_handler
check_bl:
<font color='#997700'>@@ -69,7 +69,7 @@
</font> #endif
tst r6, #0x0002
beq check_we
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 1)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_BLINT
</font> b get_handler
check_we:
<font color='#997700'>@@ -81,7 +81,7 @@
</font> #endif
tst r6, #0x0004
beq check_mc
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 2)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_WEINT
</font> b get_handler
check_mc:
<font color='#997700'>@@ -93,7 +93,7 @@
</font> #endif
tst r6, #0x0008
beq check_cs
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 3)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_MCINT
</font> b get_handler
check_cs:
<font color='#997700'>@@ -105,7 +105,7 @@
</font> #endif
tst r6, #0x0010
beq check_e1
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 4)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_CSINT
</font> b get_handler
check_e1:
<font color='#997700'>@@ -117,7 +117,7 @@
</font> #endif
tst r6, #0x0020
beq check_e2
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 5)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_EINT1
</font> b get_handler
check_e2:
<font color='#997700'>@@ -129,7 +129,7 @@
</font> #endif
tst r6, #0x0040
beq check_e3
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 6)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_EINT2
</font> b get_handler
check_e3:
<font color='#997700'>@@ -141,7 +141,7 @@
</font> #endif
tst r6, #0x0080
beq check_tc1
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 7)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_EINT3
</font> b get_handler
check_tc1:
<font color='#997700'>@@ -153,7 +153,7 @@
</font> #endif
tst r6, #0x0100
beq check_tc2
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 8)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_TC1OI
</font> b get_handler
check_tc2:
<font color='#997700'>@@ -165,7 +165,7 @@
</font> #endif
tst r6, #0x0200
beq check_rtc
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 9)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_TC2OI
</font> b get_handler
check_rtc:
<font color='#997700'>@@ -177,7 +177,7 @@
</font> #endif
tst r6, #0x0400
beq check_tick
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 10)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_RTCMI
</font> b get_handler
check_tick:
<font color='#997700'>@@ -189,7 +189,7 @@
</font> #endif
tst r6, #0x0800
beq check_utx1
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 11)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_TINT
</font> b get_handler
check_utx1:
<font color='#997700'>@@ -201,7 +201,7 @@
</font> #endif
tst r6, #0x1000
beq check_urx1
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 12)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_UTXINT1
</font> b get_handler
check_urx1:
<font color='#997700'>@@ -213,7 +213,7 @@
</font> #endif
tst r6, #0x2000
beq check_ums
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 13)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_URXINT1
</font> b get_handler
check_ums:
<font color='#997700'>@@ -225,7 +225,7 @@
</font> #endif
tst r6, #0x4000
beq check_sse
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 14)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_UMSINT
</font> b get_handler
check_sse:
<font color='#997700'>@@ -237,7 +237,7 @@
</font> #endif
tst r6, #0x8000
beq check_kbd
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 15)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_SSEOTI
</font> b get_handler
/*
<font color='#997700'>@@ -249,7 +249,7 @@
</font> and r6, r4, r5 /* only look at interrupts which are enabled */
tst r6, #0x0001
beq check_ss2rx
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 16)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_KBDINT
</font> b get_handler
check_ss2rx:
<font color='#997700'>@@ -261,7 +261,7 @@
</font> #endif
tst r6, #0x0002
beq check_ss2tx
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 17)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_SS2RX
</font> b get_handler
check_ss2tx:
<font color='#997700'>@@ -273,7 +273,7 @@
</font> #endif
tst r6, #0x0004
beq check_utx2
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 18)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_SS2TX
</font> b get_handler
check_utx2:
<font color='#997700'>@@ -285,7 +285,7 @@
</font> #endif
tst r6, #0x1000
beq check_urx2
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 19)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_UTXINT2
</font> b get_handler
check_urx2:
<font color='#997700'>@@ -297,15 +297,13 @@
</font> #endif
tst r6, #0x2000
beq IRQ_NoInterrupt
<font color='#880000'>- ldr r0, =(VECTOR_TABLE + (4 * 20)) /* load the vector number */
</font><font color='#000088'>+ mov r0, #BSP_URXINT2
</font> b get_handler
get_handler:
ldmia sp!,{r4, r5, r6}
<font color='#880000'>- ldr r0, [r0] /* extract the IT handler @ */
-
</font> /*
* re-enable interrupts at processor level as the current
* interrupt source is now masked via VEGA logic
<font color='#997700'>@@ -316,12 +314,8 @@
</font> msr cpsr, r1
*/
<font color='#880000'>- stmdb sp!,{lr}
- ldr lr, =IRQ_return /* prepare the return from handler */
-
- mov pc, r0 /* EXECUTE INT HANDLER */
-
-IRQ_return:
</font><font color='#000088'>+ stmdb sp!,{lr}
+ bl edb7312_interrupt_dispatch
</font> ldmia sp!,{lr}
IRQ_NoInterrupt:
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.h:1.7 rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.h:1.8
--- rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.h:1.7 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.h Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -1,6 +1,8 @@
</font> /*
* Cirrus EP7312 Intererrupt handler
*
<font color='#000088'>+ * Copyright (c) 2010 embedded brains GmbH.
+ *
</font> * Copyright (c) 2002 by Jay Monkman <jtm@smoothsmoothie.com>
*
* Copyright (c) 2002 by Charlie Steader <charlies@poliac.com>
<font color='#997700'>@@ -17,29 +19,14 @@
</font> #ifndef __IRQ_H__
#define __IRQ_H__
<font color='#880000'>-#ifdef __cplusplus
-extern "C" {
-#endif
-
- /* define that can be useful (the values are just examples) */
-#define VECTOR_TABLE 0x40
-
</font> #ifndef __asm__
<font color='#880000'>-/*
- * Include some preprocessor value also used by assember code
- */
-
-#include <rtems/irq.h>
</font> #include <rtems.h>
<font color='#000088'>+#include <rtems/irq.h>
+#include <rtems/irq-extension.h>
</font>
<font color='#880000'>-extern void default_int_handler(rtems_irq_hdl_param unused);
-/*-------------------------------------------------------------------------+
-| Constants
-+--------------------------------------------------------------------------*/
</font><font color='#000088'>+#endif /* __asm__ */
</font>
<font color='#880000'>- /* enum of the possible interrupt sources */
-typedef unsigned int rtems_irq_number;
</font> /* int interrupt status/mask register 1 */
#define BSP_EXTFIQ 0
#define BSP_BLINT 1
<font color='#997700'>@@ -67,23 +54,8 @@
</font> #define BSP_DAIINT 21
#define BSP_MAX_INT 22
<font color='#880000'>-/*-------------------------------------------------------------------------+
-| Function Prototypes.
-+--------------------------------------------------------------------------*/
-/*
- * ------------------- RTEMS Single Irq Handler Mngt Routines ----------------
- */
-
-/*
- * function to initialize the interrupt for a specific BSP
- */
-void BSP_rtems_irq_mngt_init();
-
-
-#endif /* __asm__ */
</font><font color='#000088'>+#define BSP_INTERRUPT_VECTOR_MIN 0
</font>
<font color='#880000'>-#ifdef __cplusplus
-}
-#endif
</font><font color='#000088'>+#define BSP_INTERRUPT_VECTOR_MAX (BSP_MAX_INT - 1)
</font>
#endif /* __IRQ_H__ */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.c:1.5 rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.c:1.6
--- rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.c:1.5 Wed Sep 12 10:15:31 2007
+++ rtems/c/src/lib/libbsp/arm/edb7312/irq/irq.c Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -1,6 +1,8 @@
</font> /*
* Cirrus EP7312 Intererrupt handler
*
<font color='#000088'>+ * Copyright (c) 2010 embedded brains GmbH.
+ *
</font> * Copyright (c) 2002 by Jay Monkman <jtm@smoothsmoothie.com>
*
* Copyright (c) 2002 by Charlie Steader <charlies@poliac.com>
<font color='#997700'>@@ -13,141 +15,171 @@
</font> *
* $Id$
*/
<font color='#000088'>+
</font> #include <bsp.h>
<font color='#880000'>-#include <irq.h>
-#include <rtems/score/thread.h>
-#include <rtems/score/apiext.h>
-#include <ep7312.h>
</font><font color='#000088'>+#include <bsp/irq.h>
+#include <bsp/irq-generic.h>
</font>
<font color='#880000'>-/*
- * This function check that the value given for the irq line
- * is valid.
- */
</font><font color='#000088'>+#include <ep7312.h>
</font>
<font color='#880000'>-static int isValidInterrupt(int irq)
</font><font color='#000088'>+void edb7312_interrupt_dispatch(rtems_vector_number vector)
</font> {
<font color='#880000'>- if ( (irq < 0) || (irq > BSP_MAX_INT))
- return 0;
- return 1;
</font><font color='#000088'>+ bsp_interrupt_handler_dispatch(vector);
</font> }
<font color='#880000'>-/*
- * -------------------- RTEMS Single Irq Handler Mngt Routines ----------------
- */
-
-int BSP_install_rtems_irq_handler (const rtems_irq_connect_data* irq)
</font><font color='#000088'>+rtems_status_code bsp_interrupt_vector_enable(rtems_vector_number vector)
</font> {
<font color='#880000'>- rtems_irq_hdl *HdlTable;
- rtems_interrupt_level level;
-
- if (!isValidInterrupt(irq->name)) {
- return 0;
- }
- /*
- * Check if default handler is actually connected. If not issue an error.
- */
- HdlTable = (rtems_irq_hdl *) VECTOR_TABLE;
- if (*(HdlTable + irq->name) != default_int_handler) {
- return 0;
- }
-
- rtems_interrupt_disable(level);
-
- /*
- * store the new handler
- */
- *(HdlTable + irq->name) = irq->hdl;
-
- /*
- * unmask interrupt
- */
- if(irq->name >= BSP_EXTFIQ && irq->name <= BSP_SSEOTI)
</font><font color='#000088'>+ if(vector >= BSP_EXTFIQ && vector <= BSP_SSEOTI)
</font> {
/* interrupt managed by INTMR1 and INTSR1 */
<font color='#880000'>- *EP7312_INTMR1 |= (1 << irq->name);
</font><font color='#000088'>+ *EP7312_INTMR1 |= (1 << vector);
</font> }
<font color='#880000'>- else if(irq->name >= BSP_KBDINT && irq->name <= BSP_SS2TX)
</font><font color='#000088'>+ else if(vector >= BSP_KBDINT && vector <= BSP_SS2TX)
</font> {
/* interrupt managed by INTMR2 and INTSR2 */
<font color='#880000'>- *EP7312_INTMR2 |= (1 << (irq->name - 16));
</font><font color='#000088'>+ *EP7312_INTMR2 |= (1 << (vector - 16));
</font> }
<font color='#880000'>- else if(irq->name >= BSP_UTXINT2 && irq->name <= BSP_URXINT2)
</font><font color='#000088'>+ else if(vector >= BSP_UTXINT2 && vector <= BSP_URXINT2)
</font> {
/* interrupt managed by INTMR2 and INTSR2 */
<font color='#880000'>- *EP7312_INTMR2 |= (1 << (irq->name - 7));
</font><font color='#000088'>+ *EP7312_INTMR2 |= (1 << (vector - 7));
</font> }
<font color='#880000'>- else if(irq->name == BSP_DAIINT)
</font><font color='#000088'>+ else if(vector == BSP_DAIINT)
</font> {
/* interrupt managed by INTMR3 and INTSR3 */
<font color='#880000'>- *EP7312_INTMR3 |= (1 << (irq->name - 21));
- }
-
- /*
- * Enable interrupt on device
- */
- if(irq->on)
- {
-<span style="background-color: #FF0000"> </span> irq->on(irq);
</font><font color='#000088'>+ *EP7312_INTMR3 |= (1 << (vector - 21));
</font> }
<font color='#880000'>- rtems_interrupt_enable(level);
-
- return 1;
</font><font color='#000088'>+ return RTEMS_SUCCESSFUL;
</font> }
<font color='#880000'>-int BSP_remove_rtems_irq_handler (const rtems_irq_connect_data* irq)
</font><font color='#000088'>+rtems_status_code bsp_interrupt_vector_disable(rtems_vector_number vector)
</font> {
<font color='#880000'>- rtems_irq_hdl *HdlTable;
- rtems_interrupt_level level;
-
- if (!isValidInterrupt(irq->name)) {
- return 0;
- }
- /*
- * Check if the handler is actually connected. If not issue an error.
- */
- HdlTable = (rtems_irq_hdl *) VECTOR_TABLE;
- if (*(HdlTable + irq->name) != irq->hdl) {
- return 0;
- }
- rtems_interrupt_disable(level);
-
- /*
- * mask interrupt
- */
- if(irq->name >= BSP_EXTFIQ && irq->name <= BSP_SSEOTI)
</font><font color='#000088'>+ if(vector >= BSP_EXTFIQ && vector <= BSP_SSEOTI)
</font> {
/* interrupt managed by INTMR1 and INTSR1 */
<font color='#880000'>- *EP7312_INTMR1 &= ~(1 << irq->name);
</font><font color='#000088'>+ *EP7312_INTMR1 &= ~(1 << vector);
</font> }
<font color='#880000'>- else if(irq->name >= BSP_KBDINT && irq->name <= BSP_SS2TX)
</font><font color='#000088'>+ else if(vector >= BSP_KBDINT && vector <= BSP_SS2TX)
</font> {
/* interrupt managed by INTMR2 and INTSR2 */
<font color='#880000'>- *EP7312_INTMR2 &= ~(1 << (irq->name - 16));
</font><font color='#000088'>+ *EP7312_INTMR2 &= ~(1 << (vector - 16));
</font> }
<font color='#880000'>- else if(irq->name >= BSP_UTXINT2 && irq->name <= BSP_URXINT2)
</font><font color='#000088'>+ else if(vector >= BSP_UTXINT2 && vector <= BSP_URXINT2)
</font> {
/* interrupt managed by INTMR2 and INTSR2 */
<font color='#880000'>- *EP7312_INTMR2 &= ~(1 << (irq->name - 7));
</font><font color='#000088'>+ *EP7312_INTMR2 &= ~(1 << (vector - 7));
</font> }
<font color='#880000'>- else if(irq->name == BSP_DAIINT)
</font><font color='#000088'>+ else if(vector == BSP_DAIINT)
</font> {
/* interrupt managed by INTMR3 and INTSR3 */
<font color='#880000'>- *EP7312_INTMR3 &= ~(1 << (irq->name - 21));
</font><font color='#000088'>+ *EP7312_INTMR3 &= ~(1 << (vector - 21));
</font> }
<font color='#880000'>- /*
- * Disable interrupt on device
- */
- if(irq->off)
- irq->off(irq);
</font><font color='#000088'>+ return RTEMS_SUCCESSFUL;
+}
</font>
<font color='#880000'>- /*
- * restore the default irq value
- */
- *(HdlTable + irq->name) = default_int_handler;
</font><font color='#000088'>+rtems_status_code bsp_interrupt_facility_initialize(void)
+{
+ uint32_t int_stat = 0;
</font>
<font color='#880000'>- rtems_interrupt_enable(level);
</font><font color='#000088'>+ /* mask all interrupts */
+ *EP7312_INTMR1 = 0x0;
+ *EP7312_INTMR2 = 0x0;
+ *EP7312_INTMR3 = 0x0;
+<span style="background-color: #FF0000"> </span>
+ /* clear all pending interrupt status' */
+ int_stat = *EP7312_INTSR1;
+ if(int_stat & EP7312_INTR1_EXTFIQ)
+ {
+ }
+ if(int_stat & EP7312_INTR1_BLINT)
+ {
+ *EP7312_BLEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_WEINT)
+ {
+ *EP7312_TEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_MCINT)
+ {
+ }
+ if(int_stat & EP7312_INTR1_CSINT)
+ {
+ *EP7312_COEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_EINT1)
+ {
+ }
+ if(int_stat & EP7312_INTR1_EINT2)
+ {
+ }
+ if(int_stat & EP7312_INTR1_EINT3)
+ {
+ }
+ if(int_stat & EP7312_INTR1_TC1OI)
+ {
+ *EP7312_TC1EOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_TC2OI)
+ {
+ *EP7312_TC2EOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_RTCMI)
+ {
+ *EP7312_RTCEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_TINT)
+ {
+ *EP7312_TEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_URXINT1)
+ {
+ }
+ if(int_stat & EP7312_INTR1_UTXINT1)
+ {
+ }
+ if(int_stat & EP7312_INTR1_UMSINT)
+ {
+ *EP7312_UMSEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR1_SSEOTI)
+ {
+ *EP7312_SYNCIO;
+ }
+ int_stat = *EP7312_INTSR1;
+<span style="background-color: #FF0000"> </span>
+ int_stat = *EP7312_INTSR2;
+ if(int_stat & EP7312_INTR2_KBDINT)
+ {
+ *EP7312_KBDEOI = 0xFFFFFFFF;
+ }
+ if(int_stat & EP7312_INTR2_SS2RX)
+ {
+ }
+ if(int_stat & EP7312_INTR2_SS2TX)
+ {
+ }
+ if(int_stat & EP7312_INTR2_URXINT2)
+ {
+ }
+ if(int_stat & EP7312_INTR2_UTXINT2)
+ {
+ }
+ int_stat = *EP7312_INTSR2;
+<span style="background-color: #FF0000"> </span>
+ int_stat = *EP7312_INTSR3;
+ if(int_stat & EP7312_INTR2_DAIINT)
+ {
+ }
+ int_stat = *EP7312_INTSR3;
</font>
<font color='#880000'>- return 1;
</font><font color='#000088'>+ _CPU_ISR_install_vector(ARM_EXCEPTION_IRQ, arm_exc_interrupt, NULL);
+
+ return RTEMS_SUCCESSFUL;
+}
+
+void bsp_interrupt_handler_default(rtems_vector_number vector)
+{
+ printk("spurious interrupt: %u\n", vector);
</font> }
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/network/network.c:1.8 rtems/c/src/lib/libbsp/arm/edb7312/network/network.c:1.9
--- rtems/c/src/lib/libbsp/arm/edb7312/network/network.c:1.8 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/edb7312/network/network.c Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -1,6 +1,6 @@
</font> #include <rtems.h>
#include <sys/mbuf.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <libchip/cs8900.h>
#define CS8900_BASE 0x20000300
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/preinstall.am:1.9 rtems/c/src/lib/libbsp/arm/edb7312/preinstall.am:1.10
--- rtems/c/src/lib/libbsp/arm/edb7312/preinstall.am:1.9 Thu Oct 2 16:37:33 2008
+++ rtems/c/src/lib/libbsp/arm/edb7312/preinstall.am Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -73,7 +73,15 @@
</font> $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/uart.h
PREINSTALL_FILES += $(PROJECT_INCLUDE)/uart.h
<font color='#880000'>-$(PROJECT_INCLUDE)/irq.h: irq/irq.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/irq.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/irq.h
</font><font color='#000088'>+$(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
+
+$(PROJECT_INCLUDE)/bsp/irq.h: irq/irq.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq.h
</font>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c:1.15 rtems/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c:1.16
--- rtems/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c:1.15 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c Fri Apr 30 09:48:52 2010
</font><font color='#997700'>@@ -11,13 +11,13 @@
</font> */
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <ep7312.h>
#include <uart.h>
/*
* Function prototypes
*/
<font color='#880000'>-extern void rtems_irq_mngt_init(void);
</font> extern void rtems_exception_init_mngt(void);
/*
<font color='#997700'>@@ -45,7 +45,9 @@
</font> /*
* Init rtems interrupt management
*/
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font> } /* bsp_start */
/*
</pre>
<p> </p>
<a name='cs7'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
* irq/irq_asm.S, irq/irq_init.c, irq/bsp_irq_asm.S,
irq/bsp_irq_init.c: Removed files.
* Makefile.am, preinstall.am: Reflect changes above. Added generic
interrupt support modules.
* irq/irq.h, irq/irq.c: The previous interrupt warning fix changed the
interrupt handler API. To fix this problem the generic interrupt
support framework will be used now. This eliminates a lot of copy and
paste code. The interrupt header file is now <bsp/irq.h>.
* include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
* start/start.S, startup/bspstart.c, clock/clockdrv.c,
console/console.c, timer/timer.c: Interrupt support changes.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/ChangeLog.diff?r1=text&tr1=1.65&r2=text&tr2=1.66&diff_format=h">M</a></td><td width='1%'>1.66</td><td width='100%'>c/src/lib/libbsp/arm/gba/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/Makefile.am.diff?r1=text&tr1=1.21&r2=text&tr2=1.22&diff_format=h">M</a></td><td width='1%'>1.22</td><td width='100%'>c/src/lib/libbsp/arm/gba/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/clock/clockdrv.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>c/src/lib/libbsp/arm/gba/clock/clockdrv.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/console/console.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>c/src/lib/libbsp/arm/gba/console/console.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/include/bsp.h.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libbsp/arm/gba/include/bsp.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/irq/bsp_irq_asm.S?rev=1.2&content-type=text/vnd.viewcvs-markup">R</a></td><td width='1%'><font color="#880000">1.2</font></td><td width='100%'><font color="#880000">c/src/lib/libbsp/arm/gba/irq/bsp_irq_asm.S</font></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/irq/bsp_irq_init.c?rev=1.3&content-type=text/vnd.viewcvs-markup">R</a></td><td width='1%'><font color="#880000">1.3</font></td><td width='100%'><font color="#880000">c/src/lib/libbsp/arm/gba/irq/bsp_irq_init.c</font></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/irq/irq.h.diff?r1=text&tr1=1.2&r2=text&tr2=1.3&diff_format=h">M</a></td><td width='1%'>1.3</td><td width='100%'>c/src/lib/libbsp/arm/gba/irq/irq.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/irq/irq.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>c/src/lib/libbsp/arm/gba/irq/irq.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/irq/irq_asm.S?rev=1.3&content-type=text/vnd.viewcvs-markup">R</a></td><td width='1%'><font color="#880000">1.3</font></td><td width='100%'><font color="#880000">c/src/lib/libbsp/arm/gba/irq/irq_asm.S</font></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/irq/irq_init.c?rev=1.3&content-type=text/vnd.viewcvs-markup">R</a></td><td width='1%'><font color="#880000">1.3</font></td><td width='100%'><font color="#880000">c/src/lib/libbsp/arm/gba/irq/irq_init.c</font></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/preinstall.am.diff?r1=text&tr1=1.7&r2=text&tr2=1.8&diff_format=h">M</a></td><td width='1%'>1.8</td><td width='100%'>c/src/lib/libbsp/arm/gba/preinstall.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/start/start.S.diff?r1=text&tr1=1.4&r2=text&tr2=1.5&diff_format=h">M</a></td><td width='1%'>1.5</td><td width='100%'>c/src/lib/libbsp/arm/gba/start/start.S</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/startup/bspstart.c.diff?r1=text&tr1=1.12&r2=text&tr2=1.13&diff_format=h">M</a></td><td width='1%'>1.13</td><td width='100%'>c/src/lib/libbsp/arm/gba/startup/bspstart.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libbsp/arm/gba/timer/timer.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>c/src/lib/libbsp/arm/gba/timer/timer.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/ChangeLog:1.65 rtems/c/src/lib/libbsp/arm/gba/ChangeLog:1.66
--- rtems/c/src/lib/libbsp/arm/gba/ChangeLog:1.65 Fri Apr 30 08:40:13 2010
+++ rtems/c/src/lib/libbsp/arm/gba/ChangeLog Fri Apr 30 09:55:49 2010
</font><font color='#997700'>@@ -1,5 +1,19 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * irq/irq_asm.S, irq/irq_init.c, irq/bsp_irq_asm.S,
+ irq/bsp_irq_init.c: Removed files.
+ * Makefile.am, preinstall.am: Reflect changes above. Added generic
+ interrupt support modules.
+ * irq/irq.h, irq/irq.c: The previous interrupt warning fix changed the
+ interrupt handler API. To fix this problem the generic interrupt
+ support framework will be used now. This eliminates a lot of copy and
+ paste code. The interrupt header file is now <bsp/irq.h>.
+ * include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
+ * start/start.S, startup/bspstart.c, clock/clockdrv.c,
+ console/console.c, timer/timer.c: Interrupt support changes.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * make/custom/gba.cfg: Use VFP floating point model.
2010-04-09 Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/Makefile.am:1.21 rtems/c/src/lib/libbsp/arm/gba/Makefile.am:1.22
--- rtems/c/src/lib/libbsp/arm/gba/Makefile.am:1.21 Fri Jul 17 08:53:04 2009
+++ rtems/c/src/lib/libbsp/arm/gba/Makefile.am Fri Apr 30 09:55:51 2010
</font><font color='#997700'>@@ -18,6 +18,8 @@
</font> include_HEADERS += ../../shared/include/tm27.h
include_HEADERS += include/gba.h
<font color='#000088'>+include_bsp_HEADERS =
+
</font> nodist_include_HEADERS = include/bspopts.h
nodist_include_HEADERS += ../../shared/include/coverhd.h
nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h
<font color='#997700'>@@ -48,10 +50,16 @@
</font> # timer
libbsp_a_SOURCES += timer/timer.c
<font color='#880000'>-include_HEADERS += irq/irq.h
</font> # irq
<font color='#880000'>-libbsp_a_SOURCES += irq/irq.c irq/bsp_irq_init.c irq/irq_init.c \
- irq/bsp_irq_asm.S irq/irq_asm.S
</font><font color='#000088'>+include_bsp_HEADERS += ../../shared/include/irq-generic.h \
+ ../../shared/include/irq-info.h \
+ irq/irq.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 \
+ irq/irq.c
</font>
include $(srcdir)/preinstall.am
include $(top_srcdir)/../../../../automake/local.am
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/clock/clockdrv.c:1.5 rtems/c/src/lib/libbsp/arm/gba/clock/clockdrv.c:1.6
--- rtems/c/src/lib/libbsp/arm/gba/clock/clockdrv.c:1.5 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/gba/clock/clockdrv.c Fri Apr 30 09:55:51 2010
</font><font color='#997700'>@@ -17,7 +17,7 @@
</font>
#include <rtems.h>
#include <bsp.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <gba.h>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/console/console.c:1.5 rtems/c/src/lib/libbsp/arm/gba/console/console.c:1.6
--- rtems/c/src/lib/libbsp/arm/gba/console/console.c:1.5 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/gba/console/console.c Fri Apr 30 09:55:51 2010
</font><font color='#997700'>@@ -24,7 +24,7 @@
</font> #include <rtems/libio.h>
#include <rtems/termiostypes.h>
#include <termios.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <gba.h>
#include <conio.h>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/include/bsp.h:1.3 rtems/c/src/lib/libbsp/arm/gba/include/bsp.h:1.4
--- rtems/c/src/lib/libbsp/arm/gba/include/bsp.h:1.3 Fri Aug 21 12:58:27 2009
+++ rtems/c/src/lib/libbsp/arm/gba/include/bsp.h Fri Apr 30 09:55:51 2010
</font><font color='#997700'>@@ -30,6 +30,8 @@
</font> #include <rtems/console.h>
#include <rtems/clockdrv.h>
<font color='#000088'>+#define BSP_FEATURE_IRQ_EXTENSION
+
</font> /** Define operation count for Tests */
#define OPERATION_COUNT 10
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/irq/irq.h:1.2 rtems/c/src/lib/libbsp/arm/gba/irq/irq.h:1.3
--- rtems/c/src/lib/libbsp/arm/gba/irq/irq.h:1.2 Fri Apr 9 15:24:56 2010
+++ rtems/c/src/lib/libbsp/arm/gba/irq/irq.h Fri Apr 30 09:55:53 2010
</font><font color='#997700'>@@ -7,6 +7,8 @@
</font> /*
* RTEMS GBA BSP
*
<font color='#000088'>+ * Copyright (c) 2010 embedded brains GmbH.
+ *
</font> * Copyright (c) 2004 Markku Puro <markku.puro@kopteri.net>
*
* The license and distribution terms for this file may be
<font color='#997700'>@@ -16,25 +18,16 @@
</font> * $Id$
*/
<font color='#880000'>-#ifndef _IRQ_H_
-#define _IRQ_H_
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Include some preprocessor value also used by assember code
- */
-
-#define VECTOR_TABLE (&irq_vector_table[0])
</font><font color='#000088'>+#ifndef __asm__
</font>
<font color='#880000'>-#include <stdint.h>
-#include <rtems/irq.h>
</font> #include <rtems.h>
<font color='#000088'>+#include <rtems/irq.h>
+#include <rtems/irq-extension.h>
</font>
<font color='#880000'>-extern void default_int_handler(rtems_irq_hdl_param unused);
</font><font color='#000088'>+#endif /* __asm__ */
+
+#ifndef _IRQ_H_
+#define _IRQ_H_
</font>
/*---------------------------------------------------------------------------*
* MACROS *
<font color='#997700'>@@ -48,44 +41,26 @@
</font> | Constants
+--------------------------------------------------------------------------*/
<font color='#880000'>-typedef enum {
- BSP_IRQ_VBLANK = 0,
- BSP_IRQ_HBLANK = 1,
- BSP_IRQ_VCOUNTER = 2,
- BSP_IRQ_TIMER0 = 3,
- BSP_IRQ_TIMER1 = 4,
- BSP_IRQ_TIMER2 = 5,
- BSP_IRQ_TIMER3 = 6,
- BSP_IRQ_SERIAL = 7,
- BSP_IRQ_DMA0 = 8,
- BSP_IRQ_DMA1 = 9,
- BSP_IRQ_DMA2 = 10,
- BSP_IRQ_DMA3 = 11,
- BSP_IRQ_KEY = 12,
- BSP_IRQ_CART = 13,
- BSP_IRQ_NA14 = 14,
- BSP_IRQ_NA15 = 15,
- BSP_MAX_INT = 16 /**< BSP_MAX_INT <= _irq_max_vector in linkcmds */
-} rtems_irq_symbolic_name;
-
-
-extern void _irq_max_vector; /**< defined in lincmds */
-extern uint32_t irq_vector_table[BSP_MAX_INT]; /**< allocated in linkcmds */
</font><font color='#000088'>+#define BSP_IRQ_VBLANK 0
+#define BSP_IRQ_HBLANK 1
+#define BSP_IRQ_VCOUNTER 2
+#define BSP_IRQ_TIMER0 3
+#define BSP_IRQ_TIMER1 4
+#define BSP_IRQ_TIMER2 5
+#define BSP_IRQ_TIMER3 6
+#define BSP_IRQ_SERIAL 7
+#define BSP_IRQ_DMA0 8
+#define BSP_IRQ_DMA1 9
+#define BSP_IRQ_DMA2 10
+#define BSP_IRQ_DMA3 11
+#define BSP_IRQ_KEY 12
+#define BSP_IRQ_CART 13
+#define BSP_IRQ_NA14 14
+#define BSP_IRQ_NA15 15
+#define BSP_MAX_INT 16
</font>
<font color='#880000'>-/*-------------------------------------------------------------------------+
-| Function Prototypes.
-+--------------------------------------------------------------------------*/
-/*
- * ------------------------ RTEMS Single Irq Handler Mngt Routines ----------------
- */
-
-/**
- * @brief function to initialize the interrupt for a specific BSP
- */
-void BSP_rtems_irq_mngt_init();
</font><font color='#000088'>+#define BSP_INTERRUPT_VECTOR_MIN 0
</font>
<font color='#880000'>-#ifdef __cplusplus
-}
-#endif
</font><font color='#000088'>+#define BSP_INTERRUPT_VECTOR_MAX (BSP_MAX_INT - 1)
</font>
#endif /* _IRQ_H_ */
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/irq/irq.c:1.5 rtems/c/src/lib/libbsp/arm/gba/irq/irq.c:1.6
--- rtems/c/src/lib/libbsp/arm/gba/irq/irq.c:1.5 Sat Sep 6 12:32:10 2008
+++ rtems/c/src/lib/libbsp/arm/gba/irq/irq.c Fri Apr 30 09:55:52 2010
</font><font color='#997700'>@@ -6,6 +6,8 @@
</font> /*
* RTEMS GBA BSP
*
<font color='#000088'>+ * Copyright (c) 2010 embedded brains GmbH.
+ *
</font> * Copyright (c) 2002 by Jay Monkman <jtm@smoothsmoothie.com>
*
* Copyright (c) 2002 by Charlie Steader <charlies@poliac.com>
<font color='#997700'>@@ -20,144 +22,51 @@
</font> */
#include <bsp.h>
<font color='#880000'>-#include <irq.h>
-#include <gba_registers.h>
-#include <rtems/score/thread.h>
-#include <rtems/score/apiext.h>
</font><font color='#000088'>+#include <bsp/irq.h>
+#include <bsp/irq-generic.h>
</font>
<font color='#000088'>+#include <gba_registers.h>
</font>
<font color='#880000'>-/**
- * @brief isValidInterrupt function check that the value given for the irq line is valid.
- *
- * @param irq irq number
- * @return status code TRUE/FALSE (0/1)
- */
-static int isValidInterrupt(int irq)
</font><font color='#000088'>+void bsp_interrupt_dispatch(void)
</font> {
<font color='#880000'>- if ( (irq < 0) || (irq > BSP_MAX_INT)) {
- return 0;
- }
- return 1;
-}
</font><font color='#000088'>+ unsigned reg_ie = GBA_REG_IE;
+ unsigned reg_if = GBA_REG_IF & reg_ie;
+ rtems_vector_number vector = 31 - __builtin_clz(reg_if);
</font>
<font color='#880000'>-/*
- * ------------------------ RTEMS Single Irq Handler Mngt Routines ----------------
- */
</font><font color='#000088'>+ bsp_interrupt_handler_dispatch(vector);
</font>
<font color='#000088'>+ GBA_REG_IF = 1 << vector;
+}
</font>
<font color='#880000'>-/**
- * @brief BSP_install_rtems_irq_handler function install rtems irq handler.
- *
- * @param irq irq connect data
- * @return status code TRUE/FALSE (0/1)
- */
-int BSP_install_rtems_irq_handler (const rtems_irq_connect_data* irq)
</font><font color='#000088'>+rtems_status_code bsp_interrupt_vector_enable(rtems_vector_number vector)
</font> {
<font color='#880000'>- rtems_irq_hdl *HdlTable;
- rtems_interrupt_level level;
</font><font color='#000088'>+ GBA_REG_IE |= 1 << vector;
</font>
<font color='#880000'>- if (!isValidInterrupt(irq->name)) {
- return 0;
- }
- /*
- * Check if default handler is actually connected. If not issue an error.
- */
- HdlTable = (rtems_irq_hdl *) (uint32_t)VECTOR_TABLE;
- if (*(HdlTable + irq->name) != default_int_handler) {
- return 0;
- }
-
- rtems_interrupt_disable(level);
-
- /*
- * store the new handler
- */
- *(HdlTable + irq->name) = irq->hdl;
-
- /*
- * ack pending interrupt
- */
- GBA_REG_IF |= (1 << (irq->name));
-
- /*
- * initialize the control register for the concerned interrupt
- */
- GBA_REG_IE |= (1 << (irq->name));
-
- /*
- * Enable interrupt on device
- */
- if (irq->on)
-<span style="background-color: #FF0000"> </span> irq->on(irq);
</font><font color='#000088'>+ return RTEMS_SUCCESSFUL;
+}
</font>
<font color='#880000'>- rtems_interrupt_enable(level);
</font><font color='#000088'>+rtems_status_code bsp_interrupt_vector_disable(rtems_vector_number vector)
+{
+ GBA_REG_IE &= ~(1 << vector);
</font>
<font color='#880000'>- return 1;
</font><font color='#000088'>+ return RTEMS_SUCCESSFUL;
</font> }
<font color='#880000'>-/**
- * @brief BSP_remove_rtems_irq_handler function removes rtems irq handler.
- *
- * @param irq irq connect data
- * @return status code TRUE/FALSE (0/1)
- */
-int BSP_remove_rtems_irq_handler (const rtems_irq_connect_data* irq)
</font><font color='#000088'>+rtems_status_code bsp_interrupt_facility_initialize(void)
</font> {
<font color='#880000'>- rtems_irq_hdl *HdlTable;
- rtems_interrupt_level level;
</font><font color='#000088'>+ /* clear all interrupt status flags */
+ GBA_REG_IF = 0xffff;
+ /* disable all interrupts */
+ GBA_REG_IE = 0;
+ /* set master interrupt enable */
+ GBA_REG_IME = 1;
</font>
<font color='#880000'>- if (!isValidInterrupt(irq->name)) {
- return 0;
- }
- /*
- * Check if the handler is actually connected. If not issue an error.
- */
- HdlTable = (rtems_irq_hdl *) (uint32_t)VECTOR_TABLE;
- if (*(HdlTable + irq->name) != irq->hdl) {
- return 0;
- }
- rtems_interrupt_disable(level);
-
- /*
- * mask at INT controller level
- */
- GBA_REG_IE &= ~(1 << irq->name);
-
- /*
- * Disable interrupt on device
- */
- if (irq->off)
-<span style="background-color: #FF0000"> </span> irq->off(irq);
-
- /*
- * restore the default irq value
- */
- *(HdlTable + irq->name) = default_int_handler;
</font><font color='#000088'>+ /* Exception handler is already present in the ROM BIOS */
</font>
<font color='#880000'>- rtems_interrupt_enable(level);
-
- return 1;
</font><font color='#000088'>+ return RTEMS_SUCCESSFUL;
</font> }
<font color='#880000'>-
-/**
- * @brief _ThreadProcessSignalsFromIrq function check that the value given for the irq line is valid.
- *
- * @param cxt exeption frame
- * @return None
- */
-void _ThreadProcessSignalsFromIrq (CPU_Exception_frame* ctx)
</font><font color='#000088'>+void bsp_interrupt_handler_default(rtems_vector_number vector)
</font> {
<font color='#880000'>- /*
- * Process pending signals that have not already been
- * processed by _Thread_Dispatch. This happens quite
- * unfrequently : the ISR must have posted an action
- * to the current running thread.
- */
- if ( _Thread_Do_post_task_switch_extension ||
- _Thread_Executing->do_post_task_switch_extension )
- {
- _Thread_Executing->do_post_task_switch_extension = false;
- _API_extensions_Run_postswitch();
- }
</font><font color='#000088'>+ printk("spurious interrupt: %u\n", vector);
</font> }
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/preinstall.am:1.7 rtems/c/src/lib/libbsp/arm/gba/preinstall.am:1.8
--- rtems/c/src/lib/libbsp/arm/gba/preinstall.am:1.7 Thu Oct 2 16:37:34 2008
+++ rtems/c/src/lib/libbsp/arm/gba/preinstall.am Fri Apr 30 09:55:51 2010
</font><font color='#997700'>@@ -85,7 +85,15 @@
</font> $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds
PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds
<font color='#880000'>-$(PROJECT_INCLUDE)/irq.h: irq/irq.h $(PROJECT_INCLUDE)/$(dirstamp)
- $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/irq.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/irq.h
</font><font color='#000088'>+$(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
+
+$(PROJECT_INCLUDE)/bsp/irq.h: irq/irq.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
+ $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq.h
+PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq.h
</font>
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/start/start.S:1.4 rtems/c/src/lib/libbsp/arm/gba/start/start.S:1.5
--- rtems/c/src/lib/libbsp/arm/gba/start/start.S:1.4 Wed Apr 7 16:49:47 2010
+++ rtems/c/src/lib/libbsp/arm/gba/start/start.S Fri Apr 30 09:55:55 2010
</font><font color='#997700'>@@ -165,7 +165,7 @@
</font> .align
PUBLIC_ARM_FUNCTION(_gba_ISR_handler)
ldmfd r13!,{r0-r3,r12,r14}
<font color='#880000'>- b _ISR_Handler
</font><font color='#000088'>+ b arm_exc_interrupt
</font> LABEL_END(_gba_ISR_handler)
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/startup/bspstart.c:1.12 rtems/c/src/lib/libbsp/arm/gba/startup/bspstart.c:1.13
--- rtems/c/src/lib/libbsp/arm/gba/startup/bspstart.c:1.12 Tue Sep 16 13:59:04 2008
+++ rtems/c/src/lib/libbsp/arm/gba/startup/bspstart.c Fri Apr 30 09:55:55 2010
</font><font color='#997700'>@@ -20,13 +20,11 @@
</font>
#include <stdio.h>
#include <bsp.h>
<font color='#000088'>+#include <bsp/irq-generic.h>
</font> #include <rtems/bspIo.h>
#include <gba.h>
#include <conio.h>
<font color='#880000'>-/* External Prototypes */
-extern void rtems_irq_mngt_init(void);
-
</font> /** Chip registers */
volatile unsigned int *Regs = (unsigned int *)GBA_IO_REGS_ADDR;
<font color='#997700'>@@ -50,7 +48,9 @@
</font> /* rtems_exception_init_mngt(); */
/* Init rtems interrupt management */
<font color='#880000'>- rtems_irq_mngt_init();
</font><font color='#000088'>+ if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) {
+ _CPU_Fatal_halt(0xe);
+ }
</font> }
/**
<font color='#006600'>diff -u rtems/c/src/lib/libbsp/arm/gba/timer/timer.c:1.5 rtems/c/src/lib/libbsp/arm/gba/timer/timer.c:1.6
--- rtems/c/src/lib/libbsp/arm/gba/timer/timer.c:1.5 Thu Sep 4 23:36:16 2008
+++ rtems/c/src/lib/libbsp/arm/gba/timer/timer.c Fri Apr 30 09:55:55 2010
</font><font color='#997700'>@@ -29,7 +29,7 @@
</font>
#include <rtems.h>
#include <bsp.h>
<font color='#880000'>-#include <irq.h>
</font><font color='#000088'>+#include <bsp/irq.h>
</font> #include <gba.h>
/*
</pre>
<p> </p>
<a name='cs8'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
<font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
* at91rm9200/dbgu/dbgu.c, at91rm9200/usart/usart.c,
pxa255/ffuart/ffuart.c: Fixed warnings due to Termios API change.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libcpu/arm/ChangeLog.diff?r1=text&tr1=1.73&r2=text&tr2=1.74&diff_format=h">M</a></td><td width='1%'>1.74</td><td width='100%'>c/src/lib/libcpu/arm/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libcpu/arm/at91rm9200/dbgu/dbgu.c.diff?r1=text&tr1=1.6&r2=text&tr2=1.7&diff_format=h">M</a></td><td width='1%'>1.7</td><td width='100%'>c/src/lib/libcpu/arm/at91rm9200/dbgu/dbgu.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libcpu/arm/at91rm9200/usart/usart.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>c/src/lib/libcpu/arm/at91rm9200/usart/usart.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/c/src/lib/libcpu/arm/pxa255/ffuart/ffuart.c.diff?r1=text&tr1=1.6&r2=text&tr2=1.7&diff_format=h">M</a></td><td width='1%'>1.7</td><td width='100%'>c/src/lib/libcpu/arm/pxa255/ffuart/ffuart.c</td></tr>
</table>
<pre>
<font color='#006600'>diff -u rtems/c/src/lib/libcpu/arm/ChangeLog:1.73 rtems/c/src/lib/libcpu/arm/ChangeLog:1.74
--- rtems/c/src/lib/libcpu/arm/ChangeLog:1.73 Fri Apr 30 08:15:48 2010
+++ rtems/c/src/lib/libcpu/arm/ChangeLog Fri Apr 30 09:59:51 2010
</font><font color='#997700'>@@ -1,5 +1,10 @@
</font> 2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
<font color='#000088'>+ * at91rm9200/dbgu/dbgu.c, at91rm9200/usart/usart.c,
+ pxa255/ffuart/ffuart.c: Fixed warnings due to Termios API change.
+
+2010-04-30 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
</font> * at91rm9200/irq/irq.c, at91rm9200/irq/irq.h, lpc22xx/irq/irq.c,
lpc22xx/irq/irq.h, mc9328mxl/irq/irq.c, mc9328mxl/irq/irq.h,
pxa255/irq/irq.c, pxa255/irq/irq.h, s3c24xx/irq/irq.c,
<font color='#006600'>diff -u rtems/c/src/lib/libcpu/arm/at91rm9200/dbgu/dbgu.c:1.6 rtems/c/src/lib/libcpu/arm/at91rm9200/dbgu/dbgu.c:1.7
--- rtems/c/src/lib/libcpu/arm/at91rm9200/dbgu/dbgu.c:1.6 Sun Nov 29 22:58:24 2009
+++ rtems/c/src/lib/libcpu/arm/at91rm9200/dbgu/dbgu.c Fri Apr 30 09:59:51 2010
</font><font color='#997700'>@@ -32,7 +32,7 @@
</font> static int dbgu_first_open(int major, int minor, void *arg);
static int dbgu_last_close(int major, int minor, void *arg);
static int dbgu_read(int minor);
<font color='#880000'>-static int dbgu_write(int minor, const char *buf, int len);
</font><font color='#000088'>+static ssize_t dbgu_write(int minor, const char *buf, size_t len);
</font> static void dbgu_init(int minor);
static void dbgu_write_polled(int minor, char c);
static int dbgu_set_attributes(int minor, const struct termios *t);
<font color='#997700'>@@ -111,7 +111,7 @@
</font> *
* return 1 on success, -1 on error
*/
<font color='#880000'>-static int dbgu_write(int minor, const char *buf, int len)
</font><font color='#000088'>+static ssize_t dbgu_write(int minor, const char *buf, size_t len)
</font> {
int i, x;
char c;
<font color='#006600'>diff -u rtems/c/src/lib/libcpu/arm/at91rm9200/usart/usart.c:1.3 rtems/c/src/lib/libcpu/arm/at91rm9200/usart/usart.c:1.4
--- rtems/c/src/lib/libcpu/arm/at91rm9200/usart/usart.c:1.3 Fri Apr 9 15:24:55 2010
+++ rtems/c/src/lib/libcpu/arm/at91rm9200/usart/usart.c Fri Apr 30 09:59:51 2010
</font><font color='#997700'>@@ -32,7 +32,7 @@
</font> static int usart_first_open(int major, int minor, void *arg);
static int usart_last_close(int major, int minor, void *arg);
static int usart_read_polled(int minor);
<font color='#880000'>-static int usart_write_polled_support(int minor, const char *buf, int len);
</font><font color='#000088'>+static ssize_t usart_write_polled_support(int minor, const char *buf, size_t len);
</font> static void usart_init(int minor);
static void usart_write_polled(int minor, char c);
static int usart_set_attributes(int minor, const struct termios *t);
<font color='#997700'>@@ -152,7 +152,7 @@
</font> *
* return 1 on success, -1 on error
*/
<font color='#880000'>-static int usart_write_polled_support(int minor, const char *buf, int len)
</font><font color='#000088'>+static ssize_t usart_write_polled_support(int minor, const char *buf, size_t len)
</font> {
at91rm9200_usart_regs_t *usart;
int nwrite=0;
<font color='#006600'>diff -u rtems/c/src/lib/libcpu/arm/pxa255/ffuart/ffuart.c:1.6 rtems/c/src/lib/libcpu/arm/pxa255/ffuart/ffuart.c:1.7
--- rtems/c/src/lib/libcpu/arm/pxa255/ffuart/ffuart.c:1.6 Sun Nov 29 23:02:22 2009
+++ rtems/c/src/lib/libcpu/arm/pxa255/ffuart/ffuart.c Fri Apr 30 09:59:51 2010
</font><font color='#997700'>@@ -25,7 +25,7 @@
</font> static int ffuart_first_open(int major, int minor, void *arg);
static int ffuart_last_close(int major, int minor, void *arg);
static int ffuart_read(int minor);
<font color='#880000'>-static int ffuart_write(int minor, const char *buf, int len);
</font><font color='#000088'>+static ssize_t ffuart_write(int minor, const char *buf, size_t len);
</font> static void ffuart_init(int minor);
static void ffuart_write_polled(int minor, char c);
static int ffuart_set_attributes(int minor, const struct termios *t);
<font color='#997700'>@@ -102,9 +102,9 @@
</font> *
* return 1 on success, -1 on error
*/
<font color='#880000'>-static int ffuart_write(int minor, const char *buf, int len)
</font><font color='#000088'>+static ssize_t ffuart_write(int minor, const char *buf, size_t len)
</font> {
<font color='#880000'>- int i, x;
</font><font color='#000088'>+ size_t i, x;
</font> char c;
console_tbl *console_entry;
ffuart_reg_t *ffuart;
</pre>
<p> </p>
<p>--<br />
<small>Generated by <a href="http://www.codewiz.org/projects/index.html#loginfo">Deluxe Loginfo</a> 2.122 by Bernardo Innocenti <bernie@develer.com></small></p>
</body>
</html>