change log for rtems (2010-04-21)

rtems-vc at rtems.org rtems-vc at rtems.org
Wed Apr 21 23:35:00 UTC 2010


 *joel*:
2010-04-20	Allan Hessenflow <allanh at kallisti.com>

	* cpu_asm.S: L0-L3 were part of the interrupt context, but as
	Mike Frysinger noted they were not being zeroed before calling
	the C handlers. A patch that corrects this, as well as improving
	some of the push/pop order to avoid stalls.

M   1.35  cpukit/score/cpu/bfin/ChangeLog
M    1.9  cpukit/score/cpu/bfin/cpu_asm.S

diff -u rtems/cpukit/score/cpu/bfin/ChangeLog:1.34 rtems/cpukit/score/cpu/bfin/ChangeLog:1.35
--- rtems/cpukit/score/cpu/bfin/ChangeLog:1.34	Sat Apr 17 14:24:16 2010
+++ rtems/cpukit/score/cpu/bfin/ChangeLog	Tue Apr 20 08:27:48 2010
@@ -1,3 +1,10 @@
+2010-04-20	Allan Hessenflow <allanh at kallisti.com>
+
+	* cpu_asm.S: L0-L3 were part of the interrupt context, but as
+	Mike Frysinger noted they were not being zeroed before calling
+	the C handlers. A patch that corrects this, as well as improving
+	some of the push/pop order to avoid stalls.
+
 2010-04-17	Allan Hessenflow <allanh at kallisti.com>
 
 	* cpu.c, cpu_asm.S, rtems/score/cpu.h: Fine tune registers saved in the

diff -u rtems/cpukit/score/cpu/bfin/cpu_asm.S:1.8 rtems/cpukit/score/cpu/bfin/cpu_asm.S:1.9
--- rtems/cpukit/score/cpu/bfin/cpu_asm.S:1.8	Sat Apr 17 14:24:16 2010
+++ rtems/cpukit/score/cpu/bfin/cpu_asm.S	Tue Apr 20 08:27:48 2010
@@ -383,10 +383,10 @@
 	[--sp] = r3;
 	[--sp] = p3;
 	[--sp] = p2;
-	[--sp] = lt1;
-	[--sp] = lt0;
 	[--sp] = lc1;
 	[--sp] = lc0;
+	[--sp] = lt1;
+	[--sp] = lt0;
 	[--sp] = lb1;
 	[--sp] = lb0;
 	[--sp] = i3;
@@ -406,8 +406,13 @@
 	[--sp] = b1;
 	[--sp] = b0;
 	[--sp] = rets;
-	r1 = fp; /* is this really what should be passed here? */
 	/* call user isr; r0 = vector number, r1 = frame pointer */
+	r1 = fp; /* is this really what should be passed here? */
+	r2 = 0;
+	l0 = r2;
+	l1 = r2;
+	l2 = r2;
+	l3 = r2;
 	sp += -12; /* bizarre abi... */
 	call (p0);
 	sp += 12;
@@ -430,10 +435,10 @@
 	i3 = [sp++];
 	lb0 = [sp++];
 	lb1 = [sp++];
-	lc0 = [sp++];
-	lc1 = [sp++];
 	lt0 = [sp++];
 	lt1 = [sp++];
+	lc0 = [sp++];
+	lc1 = [sp++];
 	p2 = [sp++];
 	p3 = [sp++];
 	r3 = [sp++];
@@ -515,10 +520,10 @@
 	[--sp] = p2;
 	[--sp] = p1;
 	[--sp] = p0;
-	[--sp] = lt1;
-	[--sp] = lt0;
 	[--sp] = lc1;
 	[--sp] = lc0;
+	[--sp] = lt1;
+	[--sp] = lt0;
 	[--sp] = lb1;
 	[--sp] = lb0;
 	[--sp] = i3;
@@ -537,6 +542,11 @@
 	[--sp] = b2;
 	[--sp] = b1;
 	[--sp] = b0;
+	r2 = 0;
+	l0 = r2;
+	l1 = r2;
+	l2 = r2;
+	l3 = r2;
 	sp += -12; /* bizarre abi... */
 	call __Thread_Dispatch;
 	sp += 12;
@@ -558,10 +568,10 @@
 	i3 = [sp++];
 	lb0 = [sp++];
 	lb1 = [sp++];
-	lc0 = [sp++];
-	lc1 = [sp++];
 	lt0 = [sp++];
 	lt1 = [sp++];
+	lc0 = [sp++];
+	lc1 = [sp++];
 	p0 = [sp++];
 	p1 = [sp++];
 	p2 = [sp++];


 *ralf*:
2010-04-20	Ralf Corsépius <ralf.corsepius at rtems.org>

	* console/console.c: Reflect termios-API having changed.

M  1.105  c/src/lib/libbsp/sh/gensh4/ChangeLog
M    1.8  c/src/lib/libbsp/sh/gensh4/console/console.c

diff -u rtems/c/src/lib/libbsp/sh/gensh4/ChangeLog:1.104 rtems/c/src/lib/libbsp/sh/gensh4/ChangeLog:1.105
--- rtems/c/src/lib/libbsp/sh/gensh4/ChangeLog:1.104	Wed Oct 21 05:55:37 2009
+++ rtems/c/src/lib/libbsp/sh/gensh4/ChangeLog	Tue Apr 20 03:13:58 2010
@@ -1,3 +1,7 @@
+2010-04-20	Ralf Corsépius <ralf.corsepius at rtems.org>
+
+	* console/console.c: Reflect termios-API having changed.
+
 2009-10-21	Ralf Corsépius <ralf.corsepius at rtems.org>
 
 	* make/custom/gensh4.cfg: Remove RTEMS_BSP_FAMILY.

diff -u rtems/c/src/lib/libbsp/sh/gensh4/console/console.c:1.7 rtems/c/src/lib/libbsp/sh/gensh4/console/console.c:1.8
--- rtems/c/src/lib/libbsp/sh/gensh4/console/console.c:1.7	Wed Apr 23 16:51:25 2008
+++ rtems/c/src/lib/libbsp/sh/gensh4/console/console.c	Tue Apr 20 03:13:58 2010
@@ -65,8 +65,8 @@
  * RETURNS:
  *     result code
  */
-static int
-console_interrupt_write(int minor, const char *buf, int len)
+static ssize_t
+console_interrupt_write(int minor, const char *buf, size_t len)
 {
         return sh4uart_interrupt_write(&sh4_uarts[minor], buf, len);
 }
@@ -82,8 +82,8 @@
  * RETURNS:
  *     result code
  */
-static int
-console_poll_write(int minor, const char *buf, int len)
+static ssize_t
+console_poll_write(int minor, const char *buf, size_t len)
 {
         return sh4uart_poll_write(&sh4_uarts[minor], buf, len);
 }



--

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/20100421/03ef9b4c/attachment-0001.html>


More information about the vc mailing list