Every ARM architecture must export g_instackbase
This commit is contained in:
parent
293b5d7723
commit
3303e04e78
@ -63,8 +63,14 @@
|
|||||||
# undef CONFIG_ARCH_USBDUMP
|
# undef CONFIG_ARCH_USBDUMP
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Output debug info if stack dump is selected -- even if
|
/* Check if we can dump stack usage information */
|
||||||
* debug is not selected.
|
|
||||||
|
#ifndef CONFIG_DEBUG
|
||||||
|
# undef CONFIG_DEBUG_STACK
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Output debug info if stack dump is selected -- even if debug is not
|
||||||
|
* selected.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef CONFIG_ARCH_STACKDUMP
|
#ifdef CONFIG_ARCH_STACKDUMP
|
||||||
@ -213,7 +219,7 @@ static void up_dumpstate(void)
|
|||||||
|
|
||||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||||
istackbase = (uint32_t)&g_intstackbase;
|
istackbase = (uint32_t)&g_intstackbase;
|
||||||
istacksize = (CONFIG_ARCH_INTERRUPTSTACK & ~3) - 4;
|
istacksize = (CONFIG_ARCH_INTERRUPTSTACK & ~3);
|
||||||
|
|
||||||
/* Show interrupt stack info */
|
/* Show interrupt stack info */
|
||||||
|
|
||||||
@ -221,6 +227,9 @@ static void up_dumpstate(void)
|
|||||||
lldbg("IRQ stack:\n");
|
lldbg("IRQ stack:\n");
|
||||||
lldbg(" base: %08x\n", istackbase);
|
lldbg(" base: %08x\n", istackbase);
|
||||||
lldbg(" size: %08x\n", istacksize);
|
lldbg(" size: %08x\n", istacksize);
|
||||||
|
#ifdef CONFIG_DEBUG_STACK
|
||||||
|
lldbg(" used: %08x\n", up_check_intstack());
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Does the current stack pointer lie within the interrupt
|
/* Does the current stack pointer lie within the interrupt
|
||||||
* stack?
|
* stack?
|
||||||
@ -247,6 +256,9 @@ static void up_dumpstate(void)
|
|||||||
lldbg("User stack:\n");
|
lldbg("User stack:\n");
|
||||||
lldbg(" base: %08x\n", ustackbase);
|
lldbg(" base: %08x\n", ustackbase);
|
||||||
lldbg(" size: %08x\n", ustacksize);
|
lldbg(" size: %08x\n", ustacksize);
|
||||||
|
#ifdef CONFIG_DEBUG_STACK
|
||||||
|
lldbg(" used: %08x\n", up_check_tcbstack(rtcb));
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Dump the user stack if the stack pointer lies within the allocated user
|
/* Dump the user stack if the stack pointer lies within the allocated user
|
||||||
* stack memory.
|
* stack memory.
|
||||||
@ -256,10 +268,14 @@ static void up_dumpstate(void)
|
|||||||
{
|
{
|
||||||
up_stackdump(sp, ustackbase);
|
up_stackdump(sp, ustackbase);
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
lldbg("sp: %08x\n", sp);
|
lldbg("sp: %08x\n", sp);
|
||||||
lldbg("stack base: %08x\n", ustackbase);
|
lldbg("stack base: %08x\n", ustackbase);
|
||||||
lldbg("stack size: %08x\n", ustacksize);
|
lldbg("stack size: %08x\n", ustacksize);
|
||||||
|
#ifdef CONFIG_DEBUG_STACK
|
||||||
|
lldbg("stack used: %08x\n", up_check_tcbstack(rtcb));
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Dump the user stack if the stack pointer lies within the allocated user
|
/* Dump the user stack if the stack pointer lies within the allocated user
|
||||||
* stack memory.
|
* stack memory.
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/************************************************************************************
|
/************************************************************************************
|
||||||
* arch/arm/src/c5471/c5471_vectors.S
|
* arch/arm/src/c5471/c5471_vectors.S
|
||||||
*
|
*
|
||||||
* Copyright (C) 2007-2009 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2007-2009, 2014 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@ -472,7 +472,9 @@ up_vectoraddrexcptn:
|
|||||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||||
.bss
|
.bss
|
||||||
.align 4
|
.align 4
|
||||||
.globl g_intstackbase
|
.global g_intstackalloc
|
||||||
|
.global g_intstackbase
|
||||||
|
.type g_intstackalloc, object
|
||||||
.type g_intstackbase, object
|
.type g_intstackbase, object
|
||||||
g_intstackalloc:
|
g_intstackalloc:
|
||||||
.skip ((CONFIG_ARCH_INTERRUPTSTACK & ~3) - 4)
|
.skip ((CONFIG_ARCH_INTERRUPTSTACK & ~3) - 4)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* arch/arm/src/kinetis/kinetis_vectors.S
|
* arch/arm/src/kinetis/kinetis_vectors.S
|
||||||
* arch/arm/src/chip/kinetis_vectors.S
|
* arch/arm/src/chip/kinetis_vectors.S
|
||||||
*
|
*
|
||||||
* Copyright (C) 2011, 2013 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2011, 2013-2014 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@ -848,6 +848,7 @@ exception_common:
|
|||||||
|
|
||||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||||
.bss
|
.bss
|
||||||
|
.global g_intstackalloc
|
||||||
.global g_intstackbase
|
.global g_intstackbase
|
||||||
.align 4
|
.align 4
|
||||||
g_intstackalloc:
|
g_intstackalloc:
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* arch/arm/src/lpc17xx/lpc17_vectors.S
|
* arch/arm/src/lpc17xx/lpc17_vectors.S
|
||||||
* arch/arm/src/chip/lpc17_vectors.S
|
* arch/arm/src/chip/lpc17_vectors.S
|
||||||
*
|
*
|
||||||
* Copyright (C) 2010-2011, 2013 Gregory Nutt. All rights reserved.
|
* Copyright (C) 2010-2011, 2013-2014 Gregory Nutt. All rights reserved.
|
||||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@ -460,6 +460,7 @@ exception_common:
|
|||||||
|
|
||||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||||
.bss
|
.bss
|
||||||
|
.global g_intstackalloc
|
||||||
.global g_intstackbase
|
.global g_intstackbase
|
||||||
.align 4
|
.align 4
|
||||||
g_intstackalloc:
|
g_intstackalloc:
|
||||||
|
@ -469,6 +469,7 @@ exception_common:
|
|||||||
|
|
||||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||||
.bss
|
.bss
|
||||||
|
.global g_intstackalloc
|
||||||
.global g_intstackbase
|
.global g_intstackbase
|
||||||
.align 4
|
.align 4
|
||||||
g_intstackalloc:
|
g_intstackalloc:
|
||||||
|
@ -450,6 +450,7 @@ exception_common:
|
|||||||
|
|
||||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||||
.bss
|
.bss
|
||||||
|
.global g_intstackalloc
|
||||||
.global g_intstackbase
|
.global g_intstackbase
|
||||||
.align 4
|
.align 4
|
||||||
g_intstackalloc:
|
g_intstackalloc:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user