summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2010-09-05 19:13:48 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2010-09-05 19:13:48 +0000
commit7c64ca00e9dcd6b2d3c0647145aa8cc92e447acd (patch)
tree91f5c6e926a8353194bfd320a00afd711a54a807
parent08f9be9b748dfa310b3150e0a931e3aa89c09eeb (diff)
downloadnuttx-7c64ca00e9dcd6b2d3c0647145aa8cc92e447acd.tar.gz
nuttx-7c64ca00e9dcd6b2d3c0647145aa8cc92e447acd.tar.bz2
nuttx-7c64ca00e9dcd6b2d3c0647145aa8cc92e447acd.zip
paging debug fixes
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2922 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r--nuttx/ChangeLog4
-rw-r--r--nuttx/Documentation/NuttX.html6
-rw-r--r--nuttx/arch/arm/src/arm/up_vectoraddrexcptn.S2
-rw-r--r--nuttx/arch/arm/src/arm/up_vectortab.S2
-rwxr-xr-xnuttx/configs/ea3131/locked/mklocked.sh80
-rw-r--r--nuttx/sched/pthread_initialize.c2
-rw-r--r--nuttx/sched/task_start.c5
7 files changed, 95 insertions, 6 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index a9fb4a38a..a37777d24 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -1254,3 +1254,7 @@
lm3s8962 contributed by Larry Arnold.
* configs/lm328962-ek - Support for the TI/Stellaris EKC-LM3S8962
board (also contributed by Larry Arnold).
+ * arch/arm/src/lpc313x/lpc313x_boot.c - The call to lpc313x_boardinitialized()
+ should not be conditioned on CONFIG_ARCH_LEDs being defined!
+ * arch/arm/src/lpc313x/ - APB0 and APB1 cannot lie in different
+ sections; they are too close together.
diff --git a/nuttx/Documentation/NuttX.html b/nuttx/Documentation/NuttX.html
index 67d628ca0..4ea3c1f50 100644
--- a/nuttx/Documentation/NuttX.html
+++ b/nuttx/Documentation/NuttX.html
@@ -8,7 +8,7 @@
<tr align="center" bgcolor="#e4e4e4">
<td>
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
- <p>Last Updated: September 3, 2010</p>
+ <p>Last Updated: September 5, 2010</p>
</td>
</tr>
</table>
@@ -1948,6 +1948,10 @@ nuttx-5.10 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
lm3s8962 contributed by Larry Arnold.
* configs/lm328962-ek - Support for the TI/Stellaris EKC-LM3S8962
board (also contributed by Larry Arnold).
+ * arch/arm/src/lpc313x/lpc313x_boot.c - The call to lpc313x_boardinitialized()
+ should not be conditioned on CONFIG_ARCH_LEDs being defined!
+ * arch/arm/src/lpc313x/ - APB0 and APB1 cannot lie in different
+ sections; they are too close together.
pascal-2.1 2010-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
diff --git a/nuttx/arch/arm/src/arm/up_vectoraddrexcptn.S b/nuttx/arch/arm/src/arm/up_vectoraddrexcptn.S
index ceb27b7be..e034c394f 100644
--- a/nuttx/arch/arm/src/arm/up_vectoraddrexcptn.S
+++ b/nuttx/arch/arm/src/arm/up_vectoraddrexcptn.S
@@ -1,7 +1,7 @@
/************************************************************************************
* arch/arm/src/src/up_vectoraddrexceptn.S
*
- * Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2008-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
diff --git a/nuttx/arch/arm/src/arm/up_vectortab.S b/nuttx/arch/arm/src/arm/up_vectortab.S
index b1efcce3f..a7972fa3c 100644
--- a/nuttx/arch/arm/src/arm/up_vectortab.S
+++ b/nuttx/arch/arm/src/arm/up_vectortab.S
@@ -1,7 +1,7 @@
/****************************************************************************
* arch/arm/src/arm/up_vectortab.S
*
- * Copyright (C) 2007, 2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2007, 2009-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
diff --git a/nuttx/configs/ea3131/locked/mklocked.sh b/nuttx/configs/ea3131/locked/mklocked.sh
index 0bd8f0896..3696888b0 100755
--- a/nuttx/configs/ea3131/locked/mklocked.sh
+++ b/nuttx/configs/ea3131/locked/mklocked.sh
@@ -65,6 +65,9 @@ fi
function checkconfig () {
CONFIGLINE=`cat "$CONFIG" | grep "$1="`
+ if [ -z "$CONFIGLINE" ]; then
+ echo "n"
+ fi
if [ "X${CONFIGLINE}" = "X${1}=y" ]; then
echo "y"
else
@@ -72,6 +75,17 @@ function checkconfig () {
fi
}
+function checkzero () {
+ CONFIGLINE=`cat "$CONFIG" | grep "$1="`
+ if [ -z "$CONFIGLINE" ]; then
+ echo "y"
+ fi
+ if [ "X${CONFIGLINE}" = "X${1}=0" ]; then
+ echo "y"
+ else
+ echo "n"
+ fi
+}
############################################################################
# Interrupt Handlers
############################################################################
@@ -124,9 +138,75 @@ fi
# initialization code. That optimization has not yet been made and, as
# consequence, the 1-time initialization code takes up precious memory
# in the locked memory region.
+#
+# up_boot is a low-level initialization function called by __start:
echo "EXTERN(up_boot)" >>ld-locked.inc
+# All of the initialization functions that are called by os_start up to
+# the point where the page fill worker thread is started must also be
+# included in the locked text section (at least for now)
+
+answer=$(checkzero CONFIG_TASK_NAME_SIZE)
+if [ $answer = n ]; then
+ echo "EXTERN(up_boot)" >>ld-locked.inc
+fi
+
+echo "EXTERN(dq_addfirst)" >>ld-locked.inc
+echo "EXTERN(up_initial_state)" >>ld-locked.inc
+
+answer=$(checkconfig CONFIG_HEAP_BASE)
+if [ $answer = n ]; then
+ echo "EXTERN(up_allocate_heap)" >>ld-locked.inc
+fi
+
+echo "EXTERN(mm_initialize)" >>ld-locked.inc
+echo "EXTERN(irq_initialize)" >>ld-locked.inc
+#echo "EXTERN(user_initialize)" >>ld-locked.inc
+echo "EXTERN(wd_initialize)" >>ld-locked.inc
+
+answer=$(checkconfig CONFIG_DISABLE_CLOCK)
+if [ $answer = n ]; then
+ echo "EXTERN(clock_initialize)" >>ld-locked.inc
+fi
+
+answer=$(checkconfig CONFIG_DISABLE_POSIX_TIMERS)
+if [ $answer = n ]; then
+ echo "EXTERN(timer_initialize)" >>ld-locked.inc
+fi
+
+answer=$(checkconfig CONFIG_DISABLE_SIGNALS)
+if [ $answer = n ]; then
+ echo "EXTERN(sig_initialize)" >>ld-locked.inc
+fi
+
+echo "EXTERN(sem_initialize)" >>ld-locked.inc
+
+answer=$(checkconfig CONFIG_DISABLE_MQUEUE)
+if [ $answer = n ]; then
+ echo "EXTERN(mq_initialize)" >>ld-locked.inc
+fi
+
+answer=$(checkconfig CONFIG_DISABLE_PTHREAD)
+if [ $answer = n ]; then
+ echo "EXTERN(pthread_initialize)" >>ld-locked.inc
+fi
+
+answer=$(checkzero CONFIG_NFILE_DESCRIPTORS)
+if [ $answer = n ]; then
+ echo "EXTERN(fs_initialize)" >>ld-locked.inc
+fi
+
+answer=$(checkconfig CONFIG_NET)
+if [ $answer = y ]; then
+ echo "EXTERN(net_initialize)" >>ld-locked.inc
+fi
+
+echo "EXTERN(up_initialize)" >>ld-locked.inc
+echo "EXTERN(lib_initialize)" >>ld-locked.inc
+echo "EXTERN(sched_setupidlefiles)" >>ld-locked.inc
+echo "EXTERN(task_create)" >>ld-locked.inc
+
############################################################################
# Idle Loop
############################################################################
diff --git a/nuttx/sched/pthread_initialize.c b/nuttx/sched/pthread_initialize.c
index 8ba06e9b0..7aa4ed708 100644
--- a/nuttx/sched/pthread_initialize.c
+++ b/nuttx/sched/pthread_initialize.c
@@ -1,7 +1,7 @@
/****************************************************************************
* sched/pthread_initialize.c
*
- * Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2007-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
diff --git a/nuttx/sched/task_start.c b/nuttx/sched/task_start.c
index add6409e7..5d1e74180 100644
--- a/nuttx/sched/task_start.c
+++ b/nuttx/sched/task_start.c
@@ -1,7 +1,7 @@
/****************************************************************************
* sched/task_start.c
*
- * Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
+ * Copyright (C) 2007-2010 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
*
* Redistribution and use in source and binary forms, with or without
@@ -108,7 +108,8 @@ void task_start(void)
}
/* Call the 'main' entry point passing argc and argv. If/when
- * the task returns, */
+ * the task returns.
+ */
exit(tcb->entry.main(argc, tcb->argv));
}