diff --git a/ChangeLog b/ChangeLog index a9fb4a38ad8..a37777d2435 100644 --- a/ChangeLog +++ b/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/Documentation/NuttX.html b/Documentation/NuttX.html index 67d628ca0b7..4ea3c1f50fc 100644 --- a/Documentation/NuttX.html +++ b/Documentation/NuttX.html @@ -8,7 +8,7 @@

NuttX RTOS

-

Last Updated: September 3, 2010

+

Last Updated: September 5, 2010

@@ -1948,6 +1948,10 @@ nuttx-5.10 2010-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> 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 <spudmonkey@racsa.co.cr> diff --git a/arch/arm/src/arm/up_vectoraddrexcptn.S b/arch/arm/src/arm/up_vectoraddrexcptn.S index ceb27b7be80..e034c394f68 100644 --- a/arch/arm/src/arm/up_vectoraddrexcptn.S +++ b/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 * * Redistribution and use in source and binary forms, with or without diff --git a/arch/arm/src/arm/up_vectortab.S b/arch/arm/src/arm/up_vectortab.S index b1efcce3f81..a7972fa3c20 100644 --- a/arch/arm/src/arm/up_vectortab.S +++ b/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 * * Redistribution and use in source and binary forms, with or without diff --git a/configs/ea3131/locked/mklocked.sh b/configs/ea3131/locked/mklocked.sh index 0bd8f0896a1..3696888b04e 100755 --- a/configs/ea3131/locked/mklocked.sh +++ b/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/sched/pthread_initialize.c b/sched/pthread_initialize.c index 8ba06e9b0fd..7aa4ed7087b 100644 --- a/sched/pthread_initialize.c +++ b/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 * * Redistribution and use in source and binary forms, with or without diff --git a/sched/task_start.c b/sched/task_start.c index add6409e7ab..5d1e7418067 100644 --- a/sched/task_start.c +++ b/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 * * 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)); }