public inbox for ecos-patches@sourceware.org
 help / color / mirror / Atom feed
* kernel tests intr0/kintr0 patch
@ 2008-08-21 12:23 Sergei Gavrikov
  0 siblings, 0 replies; only message in thread
From: Sergei Gavrikov @ 2008-08-21 12:23 UTC (permalink / raw)
  To: eCos patches list

[-- Attachment #1: Type: text/plain, Size: 326 bytes --]

Hello

On some platforms (lpc2xxx, for example) kernel tests: kintr0, intr0
failed on cyg_interrupt_configure(), because a call tries configure
non-external interrupt. Entered HAL HAL_INTR_TEST_EINT_NUM gives a
chance to override cyg_interrupt_configure's argument. Same definition
was entered in LPC2XXX variant HAL.

Sergei

[-- Attachment #2: intr_tests.patch --]
[-- Type: text/x-diff, Size: 3838 bytes --]

Index: hal/arm/lpc2xxx/var/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/lpc2xxx/var/current/ChangeLog,v
retrieving revision 1.9
diff -u -r1.9 ChangeLog
--- hal/arm/lpc2xxx/var/current/ChangeLog	22 Jul 2008 18:52:16 -0000	1.9
+++ hal/arm/lpc2xxx/var/current/ChangeLog	21 Aug 2008 12:06:00 -0000
@@ -1,3 +1,8 @@
+2008-08-21  Sergei Gavrikov <sg@belvok.com>
+
+	* include/hal_var_ints.h: Added HAL_INTR_TEST_EINT_NUM for kernel
+	tests intr0/kintr0.
+
 2008-07-21  Uwe Kindler <uwe_kindler@web.de>
 
 	* cdl/hal_arm_lpc2xxx.cdl: Added option
Index: hal/arm/lpc2xxx/var/current/include/hal_var_ints.h
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/lpc2xxx/var/current/include/hal_var_ints.h,v
retrieving revision 1.3
diff -u -r1.3 hal_var_ints.h
--- hal/arm/lpc2xxx/var/current/include/hal_var_ints.h	15 Sep 2007 14:43:22 -0000	1.3
+++ hal/arm/lpc2xxx/var/current/include/hal_var_ints.h	21 Aug 2008 12:06:00 -0000
@@ -100,6 +100,9 @@
 #define HAL_INTR_TEST_PRIO_B 16
 #define HAL_INTR_TEST_PRIO_C 16
 
+/* use external interrupt 0 in kernel tests intr0/kintr0 */
+#define HAL_INTR_TEST_EINT_NUM CYGNUM_HAL_INTERRUPT_EINT0
+
 //The vector used by the Real time clock
 #define CYGNUM_HAL_INTERRUPT_RTC     CYGNUM_HAL_INTERRUPT_TIMER0
 
Index: kernel/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/kernel/current/ChangeLog,v
retrieving revision 1.144
diff -u -r1.144 ChangeLog
--- kernel/current/ChangeLog	15 Sep 2007 14:42:39 -0000	1.144
+++ kernel/current/ChangeLog	21 Aug 2008 12:06:23 -0000
@@ -1,3 +1,9 @@
+2008-08-21  Sergei Gavrikov  <sg@belvok.com>
+	* tests/intr0.cxx, tests/kintr0.c: cyg_interrupt_configure() uses
+	itself to configure external interrupts, it's agrument, v1, can be
+	overriden by HAL through HAL_INTR_TEST_EINT_NUM.
+
+	* 
 2007-08-23  Hans Rosenfeld  <rosenfeld@grumpf.hope-2000.org>
 
 	* tests/intr0.cxx, tests/kintr0.c: As suggested by Bart Veer,
Index: kernel/current/tests/intr0.cxx
===================================================================
RCS file: /cvs/ecos/ecos/packages/kernel/current/tests/intr0.cxx,v
retrieving revision 1.14
diff -u -r1.14 intr0.cxx
--- kernel/current/tests/intr0.cxx	15 Sep 2007 14:42:40 -0000	1.14
+++ kernel/current/tests/intr0.cxx	21 Aug 2008 12:06:23 -0000
@@ -78,6 +78,12 @@
 # define PRIO_C 1
 #endif
 
+#ifdef HAL_INTR_TEST_EINT_NUM
+# define EINT_NUM HAL_INTR_TEST_EINT_NUM
+#else
+# define EINT_NUM (CYGNUM_HAL_ISR_MIN + ( 6 % CYGNUM_HAL_ISR_COUNT))
+#endif
+
 static cyg_ISR isr0, isr1;
 static cyg_DSR dsr0, dsr1;
 
@@ -208,7 +214,7 @@
         v1 = 12 % CYGNUM_HAL_ISR_COUNT;
     else /* NOTE TRAILING ELSE... */
 #endif
-    v1 = CYGNUM_HAL_ISR_MIN + (6 % CYGNUM_HAL_ISR_COUNT);
+    v1 = EINT_NUM;
 
     Cyg_Interrupt::mask_interrupt(v1);
     Cyg_Interrupt::unmask_interrupt(v1);
Index: kernel/current/tests/kintr0.c
===================================================================
RCS file: /cvs/ecos/ecos/packages/kernel/current/tests/kintr0.c,v
retrieving revision 1.13
diff -u -r1.13 kintr0.c
--- kernel/current/tests/kintr0.c	15 Sep 2007 14:42:40 -0000	1.13
+++ kernel/current/tests/kintr0.c	21 Aug 2008 12:06:23 -0000
@@ -79,6 +79,12 @@
 # define PRIO_C 1
 #endif
 
+#ifdef HAL_INTR_TEST_EINT_NUM
+# define EINT_NUM HAL_INTR_TEST_EINT_NUM
+#else
+# define EINT_NUM (CYGNUM_HAL_ISR_MIN + ( 6 % CYGNUM_HAL_ISR_COUNT))
+#endif
+
 static cyg_interrupt intr_obj[2];
 
 static cyg_handle_t intr0, intr1;
@@ -165,7 +171,7 @@
         v1 = 12 % CYGNUM_HAL_ISR_COUNT;
     else /* NOTE TRAILING ELSE... */
 #endif
-    v1 = CYGNUM_HAL_ISR_MIN + ( 6 % CYGNUM_HAL_ISR_COUNT);
+    v1 = EINT_NUM;
 
     CHECK(flash());
     CHECK(flash());

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-08-21 12:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-08-21 12:23 kernel tests intr0/kintr0 patch Sergei Gavrikov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).