summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-11-30 14:10:38 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-11-30 14:10:38 +0000
commitc1a24fbea67e4f531d44d43507029aee2b01641b (patch)
treed89746fcc875b7e29415ca1f2e52e65c73c99504
parent2000-11-30 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-c1a24fbea67e4f531d44d43507029aee2b01641b.tar.bz2
2000-11-30 Joel Sherrill <joel@OARcorp.com>
* README: Updated to reflect current status. Misaligned reference during initialization may be compiler problem. * console/console-io.c: Added support for printk(). * startup/linkcmds: Reserve 512K for RTEMS Workspace.
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/ChangeLog7
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/README28
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/console/console-io.c7
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/startup/linkcmds2
4 files changed, 33 insertions, 11 deletions
diff --git a/c/src/lib/libbsp/mips/jmr3904/ChangeLog b/c/src/lib/libbsp/mips/jmr3904/ChangeLog
index ba0eba1974..9427326c90 100644
--- a/c/src/lib/libbsp/mips/jmr3904/ChangeLog
+++ b/c/src/lib/libbsp/mips/jmr3904/ChangeLog
@@ -1,3 +1,10 @@
+2000-11-30 Joel Sherrill <joel@OARcorp.com>
+
+ * README: Updated to reflect current status. Misaligned reference
+ during initialization may be compiler problem.
+ * console/console-io.c: Added support for printk().
+ * startup/linkcmds: Reserve 512K for RTEMS Workspace.
+
2000-11-27 Joel Sherrill <joel@OARcorp.com>
* startup/linkcmds: Fix typo and add extra 0 to base address.
diff --git a/c/src/lib/libbsp/mips/jmr3904/README b/c/src/lib/libbsp/mips/jmr3904/README
index b3fdc24d20..a6d974712b 100644
--- a/c/src/lib/libbsp/mips/jmr3904/README
+++ b/c/src/lib/libbsp/mips/jmr3904/README
@@ -8,16 +8,24 @@ Simulator Invocation
====================
The following is not 100% correct since it does not work. :)
-target sim --board=jmr3904pal --memory-region 0xffff8000,0x900 \
- --memory-region 0xffffe000,0x4 --memory-region 0xb2100000,0x4
- --memory-region 0x8800000,0x100000 -memory-region 0x80000000,0x40000 \
- --memory-region 0xfffff300,0x10
+target sim --board=jmr3904pal --memory-region 0x8800000,0x100000
Status
======
-This BSP is not working. It gets to the point where the
-console_outbyte_polled() routine is called during printf
-and it locks up checking for a status bit. This is probably
-a simulator initialization issue related to the setup command.
-As of 25 Nov 2000, email was sent to the gdb and newlib maintainers
-asking for advice.
+
++ printk() works and is being called from bsp_start as prove.
+
++ There appears to be a compilation problem in _Thread_Handler_initialization
+where _Thread_Ready_chain[1] is only 1 byte -- not 12 from
+_Thread_Ready_chain[0]. I am throwing this to the RTEMS list
+first before reporting it.
+
+Made it to bsp_start
+mips-core: 4 byte write to unaligned address 0x8803bb01 at 0x8800d83c
+
+Program received signal SIGBUS, Bus error.
+0x8800d83c in _Chain_Initialize_empty (the_chain=0x8803bb01)
+ at ../../../../../jmr3904/lib/include/rtems/score/chain.inl:222
+222 the_chain->first = _Chain_Tail( the_chain );
+(gdb) q
+
diff --git a/c/src/lib/libbsp/mips/jmr3904/console/console-io.c b/c/src/lib/libbsp/mips/jmr3904/console/console-io.c
index 5a301fe4f1..1ad3d9af29 100644
--- a/c/src/lib/libbsp/mips/jmr3904/console/console-io.c
+++ b/c/src/lib/libbsp/mips/jmr3904/console/console-io.c
@@ -121,3 +121,10 @@ int console_inbyte_nonblocking(
return -1;
}
+#include <bspIo.h>
+
+void JMR3904_output_char(char c) { console_outbyte_polled( 0, c ); }
+
+BSP_output_char_function_type BSP_output_char = JMR3904_output_char;
+BSP_polling_getchar_function_type BSP_poll_char = NULL;
+
diff --git a/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds b/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds
index e6d73d9cea..d26b2c1148 100644
--- a/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds
@@ -77,7 +77,7 @@ SECTIONS
. += _StackSize;
_clear_end = .;
WorkspaceBase = .;
- . += 64K; /* reserve some memory for workspace */
+ . += 512K; /* reserve some memory for workspace */
HeapBase = .;
. += HeapSize; /* reserve some memory for heap */
}