change log for rtems (2011-11-08)

rtems-vc at rtems.org rtems-vc at rtems.org
Tue Nov 8 10:10:49 UTC 2011


 *sh*:
2011-11-08	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* new-exceptions/bspsupport/ppc_exc_async_normal.S: Bugfix for
	MPC5674F.  Use it for all to be safe.
	* mpc55xx/include/emios.h: Fixed eMIOS module count.
	* mpc55xx/include/irq.h: Fixed CAN vector numbers.
	BSP_INTERRUPT_HANDLER_TABLE_SIZE is now a BSP option.

M  1.405  c/src/lib/libcpu/powerpc/ChangeLog
M    1.2  c/src/lib/libcpu/powerpc/mpc55xx/include/emios.h
M    1.8  c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h
M    1.2  c/src/lib/libcpu/powerpc/new-exceptions/bspsupport/ppc_exc_async_normal.S

diff -u rtems/c/src/lib/libcpu/powerpc/ChangeLog:1.404 rtems/c/src/lib/libcpu/powerpc/ChangeLog:1.405
--- rtems/c/src/lib/libcpu/powerpc/ChangeLog:1.404	Mon Oct 10 03:37:06 2011
+++ rtems/c/src/lib/libcpu/powerpc/ChangeLog	Tue Nov  8 04:05:50 2011
@@ -1,3 +1,11 @@
+2011-11-08	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* new-exceptions/bspsupport/ppc_exc_async_normal.S: Bugfix for
+	MPC5674F.  Use it for all to be safe.
+	* mpc55xx/include/emios.h: Fixed eMIOS module count.
+	* mpc55xx/include/irq.h: Fixed CAN vector numbers.
+	BSP_INTERRUPT_HANDLER_TABLE_SIZE is now a BSP option.
+
 2011-10-10	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
 	* mpc55xx/include/fsl-mpc567x.h: Added EQADC as an alias to EQADC_A.

diff -u rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/emios.h:1.1 rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/emios.h:1.2
--- rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/emios.h:1.1	Tue Jul 21 03:37:08 2009
+++ rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/emios.h	Tue Nov  8 04:05:50 2011
@@ -28,6 +28,8 @@
 #include <rtems.h>
 #include <rtems/chain.h>
 
+#include <bspopts.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif /* __cplusplus */
@@ -169,7 +171,11 @@
 
 /** @} */
 
-#define MPC55XX_EMIOS_CHANNEL_NUMBER 24U
+#if MPC55XX_CHIP_TYPE / 10 == 567
+  #define MPC55XX_EMIOS_CHANNEL_NUMBER 32U
+#else
+  #define MPC55XX_EMIOS_CHANNEL_NUMBER 24U
+#endif
 
 #define MPC55XX_EMIOS_VALUE_MAX 0x00ffffffU
 

diff -u rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h:1.7 rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h:1.8
--- rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h:1.7	Wed Aug 31 10:50:30 2011
+++ rtems/c/src/lib/libcpu/powerpc/mpc55xx/include/irq.h	Tue Nov  8 04:05:50 2011
@@ -219,26 +219,26 @@
 #define MPC55XX_IRQ_ESCI(mod) (MPC55XX_IRQ_ESCI_BASE(mod) + 0U)
 
 /* FlexCAN */
-#define MPC55XX_IRQ_CAN_BOFF_TWRN_RWRN(mod) (MPC55XX_IRQ_CAN(mod) + 0U)
-#define MPC55XX_IRQ_CAN_ERR(mod) (MPC55XX_IRQ_CAN(mod) + 1U)
-#define MPC55XX_IRQ_CAN_BUF_0(mod) (MPC55XX_IRQ_CAN(mod) + 3U)
-#define MPC55XX_IRQ_CAN_BUF_1(mod) (MPC55XX_IRQ_CAN(mod) + 4U)
-#define MPC55XX_IRQ_CAN_BUF_2(mod) (MPC55XX_IRQ_CAN(mod) + 5U)
-#define MPC55XX_IRQ_CAN_BUF_3(mod) (MPC55XX_IRQ_CAN(mod) + 6U)
-#define MPC55XX_IRQ_CAN_BUF_4(mod) (MPC55XX_IRQ_CAN(mod) + 7U)
-#define MPC55XX_IRQ_CAN_BUF_5(mod) (MPC55XX_IRQ_CAN(mod) + 8U)
-#define MPC55XX_IRQ_CAN_BUF_6(mod) (MPC55XX_IRQ_CAN(mod) + 9U)
-#define MPC55XX_IRQ_CAN_BUF_7(mod) (MPC55XX_IRQ_CAN(mod) + 10U)
-#define MPC55XX_IRQ_CAN_BUF_8(mod) (MPC55XX_IRQ_CAN(mod) + 12U)
-#define MPC55XX_IRQ_CAN_BUF_9(mod) (MPC55XX_IRQ_CAN(mod) + 12U)
-#define MPC55XX_IRQ_CAN_BUF_10(mod) (MPC55XX_IRQ_CAN(mod) + 13U)
-#define MPC55XX_IRQ_CAN_BUF_11(mod) (MPC55XX_IRQ_CAN(mod) + 14U)
-#define MPC55XX_IRQ_CAN_BUF_12(mod) (MPC55XX_IRQ_CAN(mod) + 15U)
-#define MPC55XX_IRQ_CAN_BUF_13(mod) (MPC55XX_IRQ_CAN(mod) + 16U)
-#define MPC55XX_IRQ_CAN_BUF_14(mod) (MPC55XX_IRQ_CAN(mod) + 17U)
-#define MPC55XX_IRQ_CAN_BUF_15(mod) (MPC55XX_IRQ_CAN(mod) + 18U)
-#define MPC55XX_IRQ_CAN_BUF_16_31(mod) (MPC55XX_IRQ_CAN(mod) + 19U)
-#define MPC55XX_IRQ_CAN_BUF_32_63(mod) (MPC55XX_IRQ_CAN(mod) + 20U)
+#define MPC55XX_IRQ_CAN_BOFF_TWRN_RWRN(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 0U)
+#define MPC55XX_IRQ_CAN_ERR(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 1U)
+#define MPC55XX_IRQ_CAN_BUF_0(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 3U)
+#define MPC55XX_IRQ_CAN_BUF_1(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 4U)
+#define MPC55XX_IRQ_CAN_BUF_2(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 5U)
+#define MPC55XX_IRQ_CAN_BUF_3(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 6U)
+#define MPC55XX_IRQ_CAN_BUF_4(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 7U)
+#define MPC55XX_IRQ_CAN_BUF_5(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 8U)
+#define MPC55XX_IRQ_CAN_BUF_6(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 9U)
+#define MPC55XX_IRQ_CAN_BUF_7(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 10U)
+#define MPC55XX_IRQ_CAN_BUF_8(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 12U)
+#define MPC55XX_IRQ_CAN_BUF_9(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 12U)
+#define MPC55XX_IRQ_CAN_BUF_10(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 13U)
+#define MPC55XX_IRQ_CAN_BUF_11(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 14U)
+#define MPC55XX_IRQ_CAN_BUF_12(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 15U)
+#define MPC55XX_IRQ_CAN_BUF_13(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 16U)
+#define MPC55XX_IRQ_CAN_BUF_14(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 17U)
+#define MPC55XX_IRQ_CAN_BUF_15(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 18U)
+#define MPC55XX_IRQ_CAN_BUF_16_31(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 19U)
+#define MPC55XX_IRQ_CAN_BUF_32_63(mod) (MPC55XX_IRQ_CAN_BASE(mod) + 20U)
 
 /* FlexRay */
 #define MPC55XX_IRQ_FLEXRAY_MIF(mod) (MPC55XX_IRQ_FLEXRAY_BASE(mod) + 0U)
@@ -303,13 +303,9 @@
 
 #define BSP_INTERRUPT_VECTOR_MAX MPC55XX_IRQ_MAX
 
-#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;
+#ifdef BSP_INTERRUPT_HANDLER_TABLE_SIZE
+  #define BSP_INTERRUPT_USE_INDEX_TABLE
+  #define BSP_INTERRUPT_NO_HEAP_USAGE
 #endif
 
 /** @} */

diff -u rtems/c/src/lib/libcpu/powerpc/new-exceptions/bspsupport/ppc_exc_async_normal.S:1.1 rtems/c/src/lib/libcpu/powerpc/new-exceptions/bspsupport/ppc_exc_async_normal.S:1.2
--- rtems/c/src/lib/libcpu/powerpc/new-exceptions/bspsupport/ppc_exc_async_normal.S:1.1	Thu Jul 21 10:03:31 2011
+++ rtems/c/src/lib/libcpu/powerpc/new-exceptions/bspsupport/ppc_exc_async_normal.S	Tue Nov  8 04:05:50 2011
@@ -73,6 +73,7 @@
 	mfmsr	FRAME_REGISTER
 	oris	FRAME_REGISTER, FRAME_REGISTER, MSR_SPE >> 16
 	mtmsr	FRAME_REGISTER
+	isync
 #endif
 
 	/* Move frame pointer to non-volatile FRAME_REGISTER */


 *sh*:
2011-11-08	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* include/utility.h: Fixed some casts.
	* include/irq-generic.h: Define bsp_interrupt_handler_index_type
	conditionally.

M  1.196  c/src/lib/libbsp/shared/ChangeLog
M   1.10  c/src/lib/libbsp/shared/include/irq-generic.h
M    1.9  c/src/lib/libbsp/shared/include/utility.h

diff -u rtems/c/src/lib/libbsp/shared/ChangeLog:1.195 rtems/c/src/lib/libbsp/shared/ChangeLog:1.196
--- rtems/c/src/lib/libbsp/shared/ChangeLog:1.195	Mon Nov  7 02:20:26 2011
+++ rtems/c/src/lib/libbsp/shared/ChangeLog	Tue Nov  8 04:08:14 2011
@@ -1,3 +1,9 @@
+2011-11-08	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* include/utility.h: Fixed some casts.
+	* include/irq-generic.h: Define bsp_interrupt_handler_index_type
+	conditionally.
+
 2011-11-07	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
 	* console_private.h: Removed Console_Port_Minor declaration.

diff -u rtems/c/src/lib/libbsp/shared/include/irq-generic.h:1.9 rtems/c/src/lib/libbsp/shared/include/irq-generic.h:1.10
--- rtems/c/src/lib/libbsp/shared/include/irq-generic.h:1.9	Fri Apr 30 06:27:01 2010
+++ rtems/c/src/lib/libbsp/shared/include/irq-generic.h	Tue Nov  8 04:08:14 2011
@@ -65,6 +65,13 @@
 extern bsp_interrupt_handler_entry bsp_interrupt_handler_table [];
 
 #ifdef BSP_INTERRUPT_USE_INDEX_TABLE
+  #if BSP_INTERRUPT_HANDLER_TABLE_SIZE < 0x100
+    typedef uint8_t bsp_interrupt_handler_index_type;
+  #elif BSP_INTERRUPT_HANDLER_TABLE_SIZE < 0x10000
+    typedef uint16_t bsp_interrupt_handler_index_type;
+  #else
+    typedef uint32_t bsp_interrupt_handler_index_type;
+  #endif
   extern bsp_interrupt_handler_index_type bsp_interrupt_handler_index_table [];
 #endif
 
@@ -102,10 +109,7 @@
  * 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.
+ * the handler table with @ref BSP_INTERRUPT_HANDLER_TABLE_SIZE.
  *
  * 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

diff -u rtems/c/src/lib/libbsp/shared/include/utility.h:1.8 rtems/c/src/lib/libbsp/shared/include/utility.h:1.9
--- rtems/c/src/lib/libbsp/shared/include/utility.h:1.8	Thu Oct 14 04:34:57 2010
+++ rtems/c/src/lib/libbsp/shared/include/utility.h	Tue Nov  8 04:08:14 2011
@@ -7,16 +7,19 @@
  */
 
 /*
- * Copyright (c) 2008, 2010
- * embedded brains GmbH
- * Obere Lagerstr. 30
- * D-82178 Puchheim
- * Germany
- * <rtems at embedded-brains.de>
+ * Copyright (c) 2008-2011 embedded brains GmbH.  All rights reserved.
+ *
+ *  embedded brains GmbH
+ *  Obere Lagerstr. 30
+ *  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.
+ *
+ * $Id$
  */
 
 #ifndef LIBCPU_SHARED_UTILITY_H
@@ -25,13 +28,14 @@
 #include <stdint.h>
 
 #define BSP_BIT8(bit) \
-  ((uint8_t) (((uint8_t) 1) << (bit)))
+  ((uint8_t) (((unsigned int) 1) << (bit)))
 
 #define BSP_MSK8(first_bit, last_bit) \
   ((uint8_t) ((BSP_BIT8((last_bit) - (first_bit) + 1) - 1) << (first_bit)))
 
 #define BSP_FLD8(val, first_bit, last_bit) \
-  ((uint8_t) (((val) << (first_bit)) & BSP_MSK8(first_bit, last_bit)))
+  ((uint8_t) \
+    ((((unsigned int) (val)) << (first_bit)) & BSP_MSK8(first_bit, last_bit)))
 
 #define BSP_FLD8GET(reg, first_bit, last_bit) \
   ((uint8_t) (((reg) & BSP_MSK8(first_bit, last_bit)) >> (first_bit)))
@@ -41,13 +45,14 @@
     | BSP_FLD8(val, first_bit, last_bit)))
 
 #define BSP_BIT16(bit) \
-  ((uint16_t) (((uint16_t) 1) << (bit)))
+  ((uint16_t) (((unsigned int) 1) << (bit)))
 
 #define BSP_MSK16(first_bit, last_bit) \
   ((uint16_t) ((BSP_BIT16((last_bit) - (first_bit) + 1) - 1) << (first_bit)))
 
 #define BSP_FLD16(val, first_bit, last_bit) \
-  ((uint16_t) (((val) << (first_bit)) & BSP_MSK16(first_bit, last_bit)))
+  ((uint16_t) \
+    ((((unsigned int) (val)) << (first_bit)) & BSP_MSK16(first_bit, last_bit)))
 
 #define BSP_FLD16GET(reg, first_bit, last_bit) \
   ((uint16_t) (((reg) & BSP_MSK16(first_bit, last_bit)) >> (first_bit)))
@@ -63,7 +68,8 @@
   ((uint32_t) ((BSP_BIT32((last_bit) - (first_bit) + 1) - 1) << (first_bit)))
 
 #define BSP_FLD32(val, first_bit, last_bit) \
-  ((uint32_t) (((val) << (first_bit)) & BSP_MSK32(first_bit, last_bit)))
+  ((uint32_t) \
+    ((((uint32_t) (val)) << (first_bit)) & BSP_MSK32(first_bit, last_bit)))
 
 #define BSP_FLD32GET(reg, first_bit, last_bit) \
   ((uint32_t) (((reg) & BSP_MSK32(first_bit, last_bit)) >> (first_bit)))
@@ -79,7 +85,8 @@
   ((uint64_t) ((BSP_BIT64((last_bit) - (first_bit) + 1) - 1) << (first_bit)))
 
 #define BSP_FLD64(val, first_bit, last_bit) \
-  ((uint64_t) (((val) << (first_bit)) & BSP_MSK64(first_bit, last_bit)))
+  ((uint64_t) \
+    ((((uint64_t) (val)) << (first_bit)) & BSP_MSK64(first_bit, last_bit)))
 
 #define BSP_FLD64GET(reg, first_bit, last_bit) \
   ((uint64_t) (((reg) & BSP_MSK64(first_bit, last_bit)) >> (first_bit)))



--

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/20111108/0f43b260/attachment.html>


More information about the vc mailing list