change log for rtems (2010-04-30)

rtems-vc at rtems.org rtems-vc at rtems.org
Fri Apr 30 12:11:45 UTC 2010


 *sh*:
2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* include/bootcard.h: Documentation.

M  1.167  c/src/lib/libbsp/shared/ChangeLog
M    1.9  c/src/lib/libbsp/shared/include/bootcard.h

diff -u rtems/c/src/lib/libbsp/shared/ChangeLog:1.166 rtems/c/src/lib/libbsp/shared/ChangeLog:1.167
--- rtems/c/src/lib/libbsp/shared/ChangeLog:1.166	Wed Apr 28 13:59:41 2010
+++ rtems/c/src/lib/libbsp/shared/ChangeLog	Fri Apr 30 06:17:49 2010
@@ -1,3 +1,7 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* include/bootcard.h: Documentation.
+
 2010-04-28	Joel Sherrill <joel.sherrilL at OARcorp.com>
 
 	* gdbstub/rtems-stub-glue.c: Remove warnings.
@@ -27,11 +31,11 @@
 2009-10-21	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
 	* include/irq-generic.h, src/irq-generic.c, src/irq-legacy.c,
-	src/irq-server: Update for interrupt handler type change.
+	src/irq-server.c: Update for interrupt handler type change.
 
 2009-10-09	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
-	* bootcard: Update for heap API changes.
+	* bootcard.c: Update for heap API changes.
 
 2009-09-08	Sebastian Huber <sebastian.huber at embedded-brains.de>
 

diff -u rtems/c/src/lib/libbsp/shared/include/bootcard.h:1.8 rtems/c/src/lib/libbsp/shared/include/bootcard.h:1.9
--- rtems/c/src/lib/libbsp/shared/include/bootcard.h:1.8	Tue Sep  8 08:35:07 2009
+++ rtems/c/src/lib/libbsp/shared/include/bootcard.h	Fri Apr 30 06:17:49 2010
@@ -117,7 +117,7 @@
  * - bsp_postdriver_hook()
  * - rtems_initialize_start_multitasking()
  *   - 1st task executes C++ global constructors
- *   - .... appplication runs ...
+ *   - .... application runs ...
  *   - exit
  * - back to here eventually
  * - bsp_cleanup()


 *sh*:
2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* include/irq-config.h: Removed file.
	* include/irq.h: New file (renamed from 'include/irq-config.h').
	* include/irq-generic.h, src/irq-info.c: Include <bsp/irq.h> instead
	of <bsp/irq-config.h>.
	* src/irq-server.c: Use events instead of semaphore.  Added error
	counter for multiple chain appends.  Added error counter to detect
	erroneous interrupt events.

M  1.168  c/src/lib/libbsp/shared/ChangeLog
R    1.3  c/src/lib/libbsp/shared/include/irq-config.h
M    1.9  c/src/lib/libbsp/shared/include/irq-generic.h
A    1.1  c/src/lib/libbsp/shared/include/irq.h
M    1.3  c/src/lib/libbsp/shared/src/irq-info.c
M    1.3  c/src/lib/libbsp/shared/src/irq-server.c

diff -u rtems/c/src/lib/libbsp/shared/ChangeLog:1.167 rtems/c/src/lib/libbsp/shared/ChangeLog:1.168
--- rtems/c/src/lib/libbsp/shared/ChangeLog:1.167	Fri Apr 30 06:17:49 2010
+++ rtems/c/src/lib/libbsp/shared/ChangeLog	Fri Apr 30 06:27:00 2010
@@ -1,5 +1,15 @@
 2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
+	* include/irq-config.h: Removed file.
+	* include/irq.h: New file (renamed from 'include/irq-config.h').
+	* include/irq-generic.h, src/irq-info.c: Include <bsp/irq.h> instead
+	of <bsp/irq-config.h>.
+	* src/irq-server.c: Use events instead of semaphore.  Added error
+	counter for multiple chain appends.  Added error counter to detect
+	erroneous interrupt events.
+
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
 	* include/bootcard.h: Documentation.
 
 2010-04-28	Joel Sherrill <joel.sherrilL at OARcorp.com>

diff -u rtems/c/src/lib/libbsp/shared/include/irq-generic.h:1.8 rtems/c/src/lib/libbsp/shared/include/irq-generic.h:1.9
--- rtems/c/src/lib/libbsp/shared/include/irq-generic.h:1.8	Sun Nov 29 22:54:01 2009
+++ rtems/c/src/lib/libbsp/shared/include/irq-generic.h	Fri Apr 30 06:27:01 2010
@@ -9,7 +9,7 @@
 /*
  * Based on concepts of Pavel Pisa, Till Straumann and Eric Valette.
  *
- * Copyright (c) 2008, 2009
+ * Copyright (c) 2008, 2009, 2010
  * embedded brains GmbH
  * Obere Lagerstr. 30
  * D-82178 Puchheim
@@ -28,7 +28,7 @@
 
 #include <rtems/irq-extension.h>
 
-#include <bsp/irq-config.h>
+#include <bsp/irq.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -86,30 +86,30 @@
  *
  * The BSP interrupt support manages a sequence of interrupt vector numbers
  * ranging from @ref BSP_INTERRUPT_VECTOR_MIN to @ref BSP_INTERRUPT_VECTOR_MAX
- * including the end points.  It provides methods to @ref
- * bsp_interrupt_handler_install() "install", @ref
- * bsp_interrupt_handler_remove() "remove" and @ref
- * bsp_interrupt_handler_dispatch() "dispatch" interrupt handlers for each
+ * including the end points.  It provides methods to
+ * @ref bsp_interrupt_handler_install() "install",
+ * @ref bsp_interrupt_handler_remove() "remove" and
+ * @ref bsp_interrupt_handler_dispatch() "dispatch" interrupt handlers for each
  * vector number.  It implements parts of the RTEMS interrupt manager.
  *
  * The entry points to a list of interrupt handlers are stored in a table
  * (= handler table).
  *
- * You have to configure the BSP interrupt support in the bsp/irq-config.h file
- * for each BSP.  For a minimum configuration you have to provide @ref
- * BSP_INTERRUPT_VECTOR_MIN and @ref BSP_INTERRUPT_VECTOR_MAX.
+ * You have to configure the BSP interrupt support in the <bsp/irq.h> file
+ * for each BSP.  For a minimum configuration you have to provide
+ * @ref BSP_INTERRUPT_VECTOR_MIN and @ref BSP_INTERRUPT_VECTOR_MAX.
  *
- * For boards with small memory requirements you can define @ref
- * BSP_INTERRUPT_USE_INDEX_TABLE.  With an enabled index table the handler
+ * For boards with small memory requirements you can define
+ * @ref BSP_INTERRUPT_USE_INDEX_TABLE.  With an enabled index table the handler
  * table will be accessed via a small index table.  You can define the size of
  * the handler table with @ref BSP_INTERRUPT_HANDLER_TABLE_SIZE.  You must
- * provide a data type for the index table (@ref
- * bsp_interrupt_handler_index_type).  It must be an integer type big enough to
- * index the complete handler table.
- *
- * Normally new list entries are allocated from the heap.  You may define @ref
- * BSP_INTERRUPT_NO_HEAP_USAGE, if you do not want to use the heap.  For this
- * option you have to define @ref BSP_INTERRUPT_USE_INDEX_TABLE as well.
+ * provide a data type for the index table
+ * (@ref bsp_interrupt_handler_index_type).  It must be an integer type big
+ * enough to index the complete handler table.
+ *
+ * Normally new list entries are allocated from the heap.  You may define
+ * @ref BSP_INTERRUPT_NO_HEAP_USAGE, if you do not want to use the heap.  For
+ * this option you have to define @ref BSP_INTERRUPT_USE_INDEX_TABLE as well.
  *
  * You have to provide some special routines in your BSP (follow the links for
  * the details):
@@ -182,9 +182,9 @@
  *
  * This function shall enable the vector at the corresponding facility (in most
  * cases the interrupt controller).  It will be called then the first handler
- * is installed for the vector in bsp_interrupt_handler_install().  For a
- * vector out of range this function shall do nothing except returning
- * RTEMS_SUCCESSFUL.
+ * is installed for the vector in bsp_interrupt_handler_install().  It is
+ * guaranteed that the vector number is within the BSP_INTERRUPT_VECTOR_MIN and
+ * BSP_INTERRUPT_VECTOR_MAX range.
  *
  * @note You must not install or remove an interrupt handler in this function.
  * This may result in a deadlock.
@@ -198,9 +198,9 @@
  *
  * This function shall disable the vector at the corresponding facility (in
  * most cases the interrupt controller).  It will be called then the last
- * handler is removed for the vector in bsp_interrupt_handler_remove().  For a
- * vector out of range this function shall do nothing except returning
- * RTEMS_SUCCESSFUL.
+ * handler is removed for the vector in bsp_interrupt_handler_remove().  It is
+ * guaranteed that the vector number is within the BSP_INTERRUPT_VECTOR_MIN and
+ * BSP_INTERRUPT_VECTOR_MAX range.
  *
  * @note You must not install or remove an interrupt handler in this function.
  * This may result in a deadlock.

diff -u /dev/null rtems/c/src/lib/libbsp/shared/include/irq.h:1.1
--- /dev/null	Fri Apr 30 07:11:42 2010
+++ rtems/c/src/lib/libbsp/shared/include/irq.h	Fri Apr 30 06:27:01 2010
@@ -0,0 +1,77 @@
+/**
+ * @file
+ *
+ * @ingroup bsp_interrupt
+ *
+ * @brief BSP interrupt support configuration template.
+ */
+
+/*
+ * Based on concepts of Pavel Pisa, Till Straumann and Eric Valette.
+ *
+ * Copyright (c) 2008, 2009, 2010
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * D-82178 Puchheim
+ * Germany
+ * <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#ifndef LIBBSP_SHARED_IRQ_CONFIG_H
+#define LIBBSP_SHARED_IRQ_CONFIG_H
+
+#include <stdint.h>
+
+/**
+ * @addtogroup bsp_interrupt
+ *
+ * @{
+ */
+
+/**
+ * @brief Minimum vector number.
+ */
+#define BSP_INTERRUPT_VECTOR_MIN 0
+
+/**
+ * @brief Maximum vector number.
+ */
+#define BSP_INTERRUPT_VECTOR_MAX 0
+
+/**
+ * @brief Enables the index table.
+ *
+ * If you enable the index table, you have to define a size for the handler
+ * table (@ref BSP_INTERRUPT_HANDLER_TABLE_SIZE) and must provide an integer
+ * type capable to index the complete handler table (@ref
+ * bsp_interrupt_handler_index_type).
+ */
+#undef BSP_INTERRUPT_USE_INDEX_TABLE
+
+/**
+ * @brief Disables usage of the heap.
+ *
+ * If you define this, you have to define @ref BSP_INTERRUPT_USE_INDEX_TABLE as
+ * well.
+ */
+#undef BSP_INTERRUPT_NO_HEAP_USAGE
+
+#ifdef BSP_INTERRUPT_USE_INDEX_TABLE
+  /**
+   * @brief Size of the handler table.
+   */
+  #define BSP_INTERRUPT_HANDLER_TABLE_SIZE 0
+
+  /**
+   * @brief Integer type capable to index the complete handler table.
+   */
+  typedef uint8_t bsp_interrupt_handler_index_type;
+#endif
+
+/** @} */
+
+#endif /* LIBBSP_SHARED_IRQ_CONFIG_H */

diff -u rtems/c/src/lib/libbsp/shared/src/irq-info.c:1.2 rtems/c/src/lib/libbsp/shared/src/irq-info.c:1.3
--- rtems/c/src/lib/libbsp/shared/src/irq-info.c:1.2	Tue Sep  8 08:35:07 2009
+++ rtems/c/src/lib/libbsp/shared/src/irq-info.c	Fri Apr 30 06:27:01 2010
@@ -7,7 +7,7 @@
  */
 
 /*
- * Copyright (c) 2008, 2009
+ * Copyright (c) 2008, 2009, 2010
  * embedded brains GmbH
  * Obere Lagerstr. 30
  * D-82178 Puchheim
@@ -21,11 +21,8 @@
 
 #include <inttypes.h>
 
-#include <rtems/irq.h>
-
 #include <bsp/irq-generic.h>
 #include <bsp/irq-info.h>
-#include <bsp/irq-config.h>
 
 typedef struct {
   void *context;

diff -u rtems/c/src/lib/libbsp/shared/src/irq-server.c:1.2 rtems/c/src/lib/libbsp/shared/src/irq-server.c:1.3
--- rtems/c/src/lib/libbsp/shared/src/irq-server.c:1.2	Wed Oct 21 10:07:38 2009
+++ rtems/c/src/lib/libbsp/shared/src/irq-server.c	Fri Apr 30 06:27:01 2010
@@ -7,7 +7,7 @@
  */
 
 /*
- * Copyright (c) 2009
+ * Copyright (c) 2009, 2010
  * embedded brains GmbH
  * Obere Lagerstr. 30
  * D-82178 Puchheim
@@ -21,68 +21,89 @@
 
 #include <stdlib.h>
 
+#include <rtems.h>
+#include <rtems/chain.h>
+
 #include <bsp/irq-generic.h>
 
+#define BSP_INTERRUPT_EVENT RTEMS_EVENT_13
+
 typedef struct bsp_interrupt_server_entry {
+  rtems_chain_node node;
   rtems_vector_number vector;
   rtems_interrupt_handler handler;
   void *arg;
-  struct bsp_interrupt_server_entry *volatile next;
 } bsp_interrupt_server_entry;
 
-static rtems_id bsp_interrupt_server_semaphore = RTEMS_ID_NONE;
+static rtems_id bsp_interrupt_server_id = RTEMS_ID_NONE;
 
-/* LIFO list head */
-static bsp_interrupt_server_entry *volatile
-bsp_interrupt_server_list_head = NULL;
+static RTEMS_CHAIN_DEFINE_EMPTY(bsp_interrupt_server_chain);
 
 static rtems_status_code bsp_interrupt_server_is_initialized(void)
 {
-  if (bsp_interrupt_server_semaphore != RTEMS_ID_NONE) {
+  if (bsp_interrupt_server_id != RTEMS_ID_NONE) {
     return RTEMS_SUCCESSFUL;
   } else {
     return RTEMS_INCORRECT_STATE;
   }
 }
 
+static unsigned bsp_interrupt_server_errors;
+
 static void bsp_interrupt_server_trigger(void *arg)
 {
   bsp_interrupt_server_entry *e = arg;
-  rtems_interrupt_level level;
 
   bsp_interrupt_vector_disable(e->vector);
 
-  /* Add interrupt server entry to the list */
+  if (e->node.next == NULL) {
+    rtems_chain_append(&bsp_interrupt_server_chain, &e->node);
+  } else {
+    ++bsp_interrupt_server_errors;
+  }
+
+  rtems_event_send(bsp_interrupt_server_id, BSP_INTERRUPT_EVENT);
+}
+
+static bsp_interrupt_server_entry *bsp_interrupt_server_get_entry(void)
+{
+  rtems_interrupt_level level;
+  bsp_interrupt_server_entry *e;
+
   rtems_interrupt_disable(level);
-  e->next = bsp_interrupt_server_list_head;
-  bsp_interrupt_server_list_head = e;
+  e = (bsp_interrupt_server_entry *)
+    rtems_chain_get_unprotected(&bsp_interrupt_server_chain);
+  if (e != NULL) {
+    e->node.next = NULL;
+  }
   rtems_interrupt_enable(level);
 
-  rtems_semaphore_release(bsp_interrupt_server_semaphore);
+  return e;
 }
 
 static void bsp_interrupt_server_task(rtems_task_argument arg)
 {
   rtems_status_code sc = RTEMS_SUCCESSFUL;
-  rtems_id sema = bsp_interrupt_server_semaphore;
-  rtems_interrupt_level level;
-  bsp_interrupt_server_entry *e = NULL;
 
   while (true) {
-    sc = rtems_semaphore_obtain(sema, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
+    rtems_event_set events = 0;
+    bsp_interrupt_server_entry *e = NULL;
+
+    sc = rtems_event_receive(
+      BSP_INTERRUPT_EVENT,
+      RTEMS_EVENT_ALL | RTEMS_WAIT,
+      RTEMS_NO_TIMEOUT,
+      &events
+    );
     if (sc != RTEMS_SUCCESSFUL) {
       break;
     }
 
-    /* Fetch next interrupt server entry from the list */
-    rtems_interrupt_disable(level);
-    e = bsp_interrupt_server_list_head;
-    bsp_interrupt_server_list_head = e->next;
-    rtems_interrupt_enable(level);
-
-    (*e->handler)(e->arg);
+    while ((e = bsp_interrupt_server_get_entry()) != NULL) {
+      (*e->handler)(e->arg);
 
-    bsp_interrupt_vector_enable(e->vector);
+      bsp_interrupt_vector_enable(e->vector);
+    }
   }
 
   rtems_task_delete(RTEMS_SELF);
@@ -137,7 +158,7 @@
     return RTEMS_NOT_IMPLEMENTED;
   }
 
-  e = malloc(sizeof(bsp_interrupt_server_entry));
+  e = calloc(1, sizeof(*e));
   if (e == NULL) {
     return RTEMS_NO_MEMORY;
   }
@@ -220,67 +241,34 @@
 )
 {
   rtems_status_code sc = RTEMS_SUCCESSFUL;
-  rtems_id sema_id = RTEMS_ID_NONE;
-  rtems_id task_id = RTEMS_ID_NONE;
-  rtems_interrupt_level level;
 
   if (server != NULL) {
     return RTEMS_NOT_IMPLEMENTED;
   }
 
-  sc = rtems_semaphore_create(
-    rtems_build_name('I', 'R', 'Q', 'S'),
-    0,
-    RTEMS_LOCAL | RTEMS_FIFO | RTEMS_COUNTING_SEMAPHORE,
-    0,
-    &sema_id
-  );
-  if (sc != RTEMS_SUCCESSFUL) {
-    return sc;
-  }
-
   sc = rtems_task_create(
     rtems_build_name('I', 'R', 'Q', 'S'),
     priority,
     stack_size,
     modes,
     attributes,
-    &task_id
+    &bsp_interrupt_server_id
   );
   if (sc != RTEMS_SUCCESSFUL) {
-    rtems_semaphore_delete(sema_id);
-
-    return sc;
-  }
-
-  /* Initialize global data (this must be done before the task starts) */
-  rtems_interrupt_disable(level);
-  if (bsp_interrupt_server_semaphore == RTEMS_ID_NONE) {
-    bsp_interrupt_server_semaphore = sema_id;
-    sc = RTEMS_SUCCESSFUL;
-  } else {
-    sc = RTEMS_INCORRECT_STATE;
-  }
-  rtems_interrupt_enable(level);
-  if (sc != RTEMS_SUCCESSFUL) {
-    rtems_semaphore_delete(sema_id);
-    rtems_task_delete(task_id);
-
-    return sc;
+    return RTEMS_TOO_MANY;
   }
 
   sc = rtems_task_start(
-    task_id,
+    bsp_interrupt_server_id,
     bsp_interrupt_server_task,
     0
   );
   if (sc != RTEMS_SUCCESSFUL) {
     /* In this case we could also panic */
-    bsp_interrupt_server_semaphore = RTEMS_ID_NONE;
-    rtems_semaphore_delete(sema_id);
-    rtems_task_delete(task_id);
+    rtems_task_delete(bsp_interrupt_server_id);
+    bsp_interrupt_server_id = RTEMS_ID_NONE;
 
-    return sc;
+    return RTEMS_TOO_MANY;
   }
 
   return RTEMS_SUCCESSFUL;


 *sh*:
Removed file.

R    1.7  c/src/lib/libbsp/arm/lpc24xx/network/network.c

 *sh*:
2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* shared/irq/irq-config.h: Removed file.
	* shared/irq/irq.h: Moved defines from 'shared/irq/irq-config.h'.

M   1.64  c/src/lib/libbsp/i386/ChangeLog
R    1.1  c/src/lib/libbsp/i386/shared/irq/irq-config.h
M   1.15  c/src/lib/libbsp/i386/shared/irq/irq.h

diff -u rtems/c/src/lib/libbsp/i386/ChangeLog:1.63 rtems/c/src/lib/libbsp/i386/ChangeLog:1.64
--- rtems/c/src/lib/libbsp/i386/ChangeLog:1.63	Mon Apr 12 11:34:38 2010
+++ rtems/c/src/lib/libbsp/i386/ChangeLog	Fri Apr 30 06:36:14 2010
@@ -1,3 +1,8 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* shared/irq/irq-config.h: Removed file.
+	* shared/irq/irq.h: Moved defines from 'shared/irq/irq-config.h'.
+
 2010-04-12	Ralf Corsépius <ralf.corsepius at rtems.org>
 
 	* shared/comm/uart.c, shared/comm/uart.h: Reflect termios API

diff -u rtems/c/src/lib/libbsp/i386/shared/irq/irq.h:1.14 rtems/c/src/lib/libbsp/i386/shared/irq/irq.h:1.15
--- rtems/c/src/lib/libbsp/i386/shared/irq/irq.h:1.14	Fri Jul  3 10:08:54 2009
+++ rtems/c/src/lib/libbsp/i386/shared/irq/irq.h	Fri Apr 30 06:36:16 2010
@@ -57,6 +57,9 @@
 #define BSP_RT_TIMER1	      	8
 #define BSP_RT_TIMER3		10
 
+#define BSP_INTERRUPT_VECTOR_MIN BSP_LOWEST_OFFSET
+#define BSP_INTERRUPT_VECTOR_MAX BSP_MAX_OFFSET
+
 /*
  * Type definition for RTEMS managed interrupts
  */


 *sh*:
2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* Makefile.am, preinstall.am: Update for generic interrupt support
	changes.

M  1.142  c/src/lib/libbsp/i386/i386ex/ChangeLog
M   1.45  c/src/lib/libbsp/i386/i386ex/Makefile.am
M    1.8  c/src/lib/libbsp/i386/i386ex/preinstall.am
M  1.256  c/src/lib/libbsp/i386/pc386/ChangeLog
M   1.56  c/src/lib/libbsp/i386/pc386/Makefile.am
M    1.9  c/src/lib/libbsp/i386/pc386/preinstall.am
M  1.135  c/src/lib/libbsp/i386/ts_386ex/ChangeLog
M   1.42  c/src/lib/libbsp/i386/ts_386ex/Makefile.am
M    1.8  c/src/lib/libbsp/i386/ts_386ex/preinstall.am

diff -u rtems/c/src/lib/libbsp/i386/i386ex/ChangeLog:1.141 rtems/c/src/lib/libbsp/i386/i386ex/ChangeLog:1.142
--- rtems/c/src/lib/libbsp/i386/i386ex/ChangeLog:1.141	Thu Dec 10 07:56:21 2009
+++ rtems/c/src/lib/libbsp/i386/i386ex/ChangeLog	Fri Apr 30 06:42:40 2010
@@ -1,3 +1,8 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* Makefile.am, preinstall.am: Update for generic interrupt support
+	changes.
+
 2009-12-10	Ralf Corsépius <ralf.corsepius at rtems.org>
 
 	* console/console.c: Eliminate casts.

diff -u rtems/c/src/lib/libbsp/i386/i386ex/Makefile.am:1.44 rtems/c/src/lib/libbsp/i386/i386ex/Makefile.am:1.45
--- rtems/c/src/lib/libbsp/i386/i386ex/Makefile.am:1.44	Fri Jul  3 10:07:54 2009
+++ rtems/c/src/lib/libbsp/i386/i386ex/Makefile.am	Fri Apr 30 06:42:41 2010
@@ -23,7 +23,6 @@
 
 include_bsp_HEADERS = ../../i386/shared/irq/irq.h \
     ../../i386/shared/irq/irq_asm.h \
-    ../../i386/shared/irq/irq-config.h \
     ../../shared/include/irq-generic.h \
     ../../shared/include/irq-info.h
 

diff -u rtems/c/src/lib/libbsp/i386/i386ex/preinstall.am:1.7 rtems/c/src/lib/libbsp/i386/i386ex/preinstall.am:1.8
--- rtems/c/src/lib/libbsp/i386/i386ex/preinstall.am:1.7	Fri Jul  3 10:07:54 2009
+++ rtems/c/src/lib/libbsp/i386/i386ex/preinstall.am	Fri Apr 30 06:42:41 2010
@@ -65,10 +65,6 @@
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq_asm.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq_asm.h
 
-$(PROJECT_INCLUDE)/bsp/irq-config.h: ../../i386/shared/irq/irq-config.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
-	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq-config.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq-config.h
-
 $(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

diff -u rtems/c/src/lib/libbsp/i386/pc386/ChangeLog:1.255 rtems/c/src/lib/libbsp/i386/pc386/ChangeLog:1.256
--- rtems/c/src/lib/libbsp/i386/pc386/ChangeLog:1.255	Mon Apr 12 11:33:00 2010
+++ rtems/c/src/lib/libbsp/i386/pc386/ChangeLog	Fri Apr 30 06:43:01 2010
@@ -1,3 +1,8 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* Makefile.am, preinstall.am: Update for generic interrupt support
+	changes.
+
 2010-04-12	Ralf Corsépius <ralf.corsepius at rtems.org>
 
 	* console/console.c, console/ps2_mouse.c: Reflect termios API

diff -u rtems/c/src/lib/libbsp/i386/pc386/Makefile.am:1.55 rtems/c/src/lib/libbsp/i386/pc386/Makefile.am:1.56
--- rtems/c/src/lib/libbsp/i386/pc386/Makefile.am:1.55	Fri Oct  9 08:00:08 2009
+++ rtems/c/src/lib/libbsp/i386/pc386/Makefile.am	Fri Apr 30 06:43:01 2010
@@ -28,7 +28,6 @@
 
 include_bsp_HEADERS = ../../i386/shared/irq/irq.h \
     ../../i386/shared/irq/irq_asm.h ../../i386/shared/comm/tty_drv.h \
-    ../../i386/shared/irq/irq-config.h \
     ../../shared/include/irq-generic.h \
     ../../shared/include/irq-info.h
 

diff -u rtems/c/src/lib/libbsp/i386/pc386/preinstall.am:1.8 rtems/c/src/lib/libbsp/i386/pc386/preinstall.am:1.9
--- rtems/c/src/lib/libbsp/i386/pc386/preinstall.am:1.8	Wed Jul 29 09:09:34 2009
+++ rtems/c/src/lib/libbsp/i386/pc386/preinstall.am	Fri Apr 30 06:43:01 2010
@@ -65,10 +65,6 @@
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/tty_drv.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/tty_drv.h
 
-$(PROJECT_INCLUDE)/bsp/irq-config.h: ../../i386/shared/irq/irq-config.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
-	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq-config.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq-config.h
-
 $(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

diff -u rtems/c/src/lib/libbsp/i386/ts_386ex/ChangeLog:1.134 rtems/c/src/lib/libbsp/i386/ts_386ex/ChangeLog:1.135
--- rtems/c/src/lib/libbsp/i386/ts_386ex/ChangeLog:1.134	Fri Nov  6 01:52:39 2009
+++ rtems/c/src/lib/libbsp/i386/ts_386ex/ChangeLog	Fri Apr 30 06:43:18 2010
@@ -1,3 +1,8 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* Makefile.am, preinstall.am: Update for generic interrupt support
+	changes.
+
 2009-11-06	Ralf Corsépius <ralf.corsepius at rtems.org>
 
 	* clock/ckinit.c: Remove nested externs.

diff -u rtems/c/src/lib/libbsp/i386/ts_386ex/Makefile.am:1.41 rtems/c/src/lib/libbsp/i386/ts_386ex/Makefile.am:1.42
--- rtems/c/src/lib/libbsp/i386/ts_386ex/Makefile.am:1.41	Fri Jul  3 10:07:26 2009
+++ rtems/c/src/lib/libbsp/i386/ts_386ex/Makefile.am	Fri Apr 30 06:43:19 2010
@@ -27,7 +27,6 @@
 
 include_bsp_HEADERS = ../../i386/shared/irq/irq.h \
     ../../i386/shared/irq/irq_asm.h \
-    ../../i386/shared/irq/irq-config.h \
     ../../shared/include/irq-generic.h \
     ../../shared/include/irq-info.h
 

diff -u rtems/c/src/lib/libbsp/i386/ts_386ex/preinstall.am:1.7 rtems/c/src/lib/libbsp/i386/ts_386ex/preinstall.am:1.8
--- rtems/c/src/lib/libbsp/i386/ts_386ex/preinstall.am:1.7	Fri Jul  3 10:07:26 2009
+++ rtems/c/src/lib/libbsp/i386/ts_386ex/preinstall.am	Fri Apr 30 06:43:19 2010
@@ -65,10 +65,6 @@
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq_asm.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq_asm.h
 
-$(PROJECT_INCLUDE)/bsp/irq-config.h: ../../i386/shared/irq/irq-config.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
-	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq-config.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq-config.h
-
 $(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


 *sh*:
2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* libcpu/powerpc/mpc55xx/include/irq.h: Move defines from
	'libbsp/powerpc/mpc55xxevb/include/irq-config.h'.
	* libbsp/powerpc/mpc55xxevb/include/irq-config.h: Removed file.
	* libbsp/powerpc/mpc55xxevb/Makefile.am,
	libbsp/powerpc/mpc55xxevb/preinstall.am: Reflect changes above.

M   1.50  c/src/lib/libbsp/powerpc/mpc55xxevb/ChangeLog
M   1.21  c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am
R    1.1  c/src/lib/libbsp/powerpc/mpc55xxevb/include/irq-config.h
M    1.8  c/src/lib/libbsp/powerpc/mpc55xxevb/preinstall.am
M  1.352  c/src/lib/libcpu/powerpc/ChangeLog
M    1.5  c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h

diff -u rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/ChangeLog:1.49 rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/ChangeLog:1.50
--- rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/ChangeLog:1.49	Wed Apr  7 09:19:55 2010
+++ rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/ChangeLog	Fri Apr 30 06:59:05 2010
@@ -1,3 +1,8 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* include/irq-config.h: Removed file.
+	* Makefile.am, preinstall.am: Reflect changes above.
+
 2010-04-07      Thomas Doerfler <Thomas.Doerfler at embedded-brains.de>
 
 	* configure.ac, startup/bspstart.c:

diff -u rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am:1.20 rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am:1.21
--- rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am:1.20	Wed Apr  7 01:44:41 2010
+++ rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am	Fri Apr 30 06:59:05 2010
@@ -36,7 +36,6 @@
 nodist_include_HEADERS = include/bspopts.h ../../shared/tod.h \
     ../../shared/include/coverhd.h
 include_bsp_HEADERS = include/mpc55xxevb.h \
-    include/irq-config.h \
     include/smsc9218i.h \
     ../../shared/include/irq-generic.h \
     ../../shared/include/irq-info.h \

diff -u rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/preinstall.am:1.7 rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/preinstall.am:1.8
--- rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/preinstall.am:1.7	Wed Apr  7 01:44:41 2010
+++ rtems/c/src/lib/libbsp/powerpc/mpc55xxevb/preinstall.am	Fri Apr 30 06:59:05 2010
@@ -85,10 +85,6 @@
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/mpc55xxevb.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/mpc55xxevb.h
 
-$(PROJECT_INCLUDE)/bsp/irq-config.h: include/irq-config.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
-	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/irq-config.h
-PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq-config.h
-
 $(PROJECT_INCLUDE)/bsp/smsc9218i.h: include/smsc9218i.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 	$(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/smsc9218i.h
 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/smsc9218i.h

diff -u rtems/c/src/lib/libcpu/powerpc/ChangeLog:1.351 rtems/c/src/lib/libcpu/powerpc/ChangeLog:1.352
--- rtems/c/src/lib/libcpu/powerpc/ChangeLog:1.351	Wed Apr 28 12:17:59 2010
+++ rtems/c/src/lib/libcpu/powerpc/ChangeLog	Fri Apr 30 06:59:04 2010
@@ -1,3 +1,8 @@
+2010-04-30	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* mpc55xx/include/irq.h: Move defines from
+	'libbsp/powerpc/mpc55xxevb/include/irq-config.h'.
+
 2010-04-28	Joel Sherrill <joel.sherrilL at OARcorp.com>
 
 	* mpc5xx/clock/clock.c, mpc5xx/console-generic/console-generic.c,

diff -u rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h:1.4 rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h:1.5
--- rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h:1.4	Wed Apr  7 09:19:55 2010
+++ rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h	Fri Apr 30 06:59:05 2010
@@ -7,7 +7,7 @@
  */
 
 /*
- * Copyright (c) 2008
+ * Copyright (c) 2008, 2010
  * Embedded Brains GmbH
  * Obere Lagerstr. 30
  * D-82178 Puchheim
@@ -159,6 +159,27 @@
 
 rtems_status_code mpc55xx_intc_clear_software_irq( rtems_vector_number vector);
 
+/**
+ * @addtogroup bsp_interrupt
+ *
+ * @{
+ */
+
+#define BSP_INTERRUPT_VECTOR_MIN 0
+
+#define BSP_INTERRUPT_VECTOR_MAX 328
+
+#define BSP_INTERRUPT_USE_INDEX_TABLE
+
+#define BSP_INTERRUPT_NO_HEAP_USAGE
+
+#ifdef BSP_INTERRUPT_USE_INDEX_TABLE
+  #define BSP_INTERRUPT_HANDLER_TABLE_SIZE 63
+  typedef uint8_t bsp_interrupt_handler_index_type;
+#endif
+
+/** @} */
+
 #ifdef __cplusplus
 };
 #endif /* __cplusplus */



--

Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20100430/1a5c2918/attachment.html>


More information about the vc mailing list