itoa() from Ryan Sundberg

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5741 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2013-03-14 18:30:06 +00:00
parent 804f9a6d8a
commit f9ca53339d
2 changed files with 17 additions and 91 deletions

View File

@ -52,7 +52,8 @@
* ------- ---- Padded to 4KB * ------- ---- Padded to 4KB
* 0x10000 1000: User .data region. Size is variable. * 0x10000 1000: User .data region. Size is variable.
* ------- ---- User .bss region Size is variable. * ------- ---- User .bss region Size is variable.
* ------- ---- Beginning of kernel heap * ------- ---- Beginning of kernel heap. Size determined by
* CONFIG_MM_KERNEL_HEAPSIZE.
* 0x10000 8000: Beginning of user heap. Can vary with other settings. * 0x10000 8000: Beginning of user heap. Can vary with other settings.
* 0x10001 0000: End+1 of CPU RAM * 0x10001 0000: End+1 of CPU RAM
*/ */

View File

@ -42,7 +42,21 @@
* *
* For MPU support, the kernel-mode NuttX section is assumed to be 64Kb of * For MPU support, the kernel-mode NuttX section is assumed to be 64Kb of
* FLASH and 4Kb of SRAM. That, of course, can be optimized as needed (See * FLASH and 4Kb of SRAM. That, of course, can be optimized as needed (See
* also configs/sam3u-ek/scripts/kernel-space.ld). * also configs/open1788/scripts/kernel-space.ld). A detailed memory map
* for the CPU SRAM region is as follows:
*
* 0x20000 0000: Kernel .data region. Typical size: 0.1KB
* ------- ---- Kernel .bss region. Typical size: 1.8KB
* ------- ---- Kernel IDLE thread stack (approximate). Size is
* determined by CONFIG_IDLETHREAD_STACKSIZE and
* adjustments for alignment. Typical is 1KB.
* ------- ---- Padded to 4KB
* 0x20000 1000: User .data region. Size is variable.
* ------- ---- User .bss region Size is variable.
* ------- ---- Beginning of kernel heap. Size determined by
* CONFIG_MM_KERNEL_HEAPSIZE.
* ------- ---- Beginning of user heap. Can vary with other settings.
* 0x20000 8000: End+1 of CPU RAM
*/ */
MEMORY MEMORY
@ -61,92 +75,3 @@ MEMORY
sram2 (rwx) : ORIGIN = 0x20080000, LENGTH = 16K sram2 (rwx) : ORIGIN = 0x20080000, LENGTH = 16K
} }
/* Make sure that the critical memory management functions are in user-space.
* Currently, the plan is that the memory manager will reside in user-space
* but be usable both by kernel- and user-space code
*/
EXTERN(umm_initialize)
EXTERN(umm_addregion)
EXTERN(umm_trysemaphore)
EXTERN(umm_givesemaphore)
EXTERN(malloc)
EXTERN(realloc)
EXTERN(zalloc)
EXTERN(free)
OUTPUT_ARCH(arm)
SECTIONS
{
.userspace : {
*(.userspace)
} > uflash
.text : {
_stext = ABSOLUTE(.);
*(.vectors)
*(.text .text.*)
*(.fixup)
*(.gnu.warning)
*(.rodata .rodata.*)
*(.gnu.linkonce.t.*)
*(.glue_7)
*(.glue_7t)
*(.got)
*(.gcc_except_table)
*(.gnu.linkonce.r.*)
_etext = ABSOLUTE(.);
} > uflash
.init_section : {
_sinit = ABSOLUTE(.);
*(.init_array .init_array.*)
_einit = ABSOLUTE(.);
} > uflash
.ARM.extab : {
*(.ARM.extab*)
} > uflash
__exidx_start = ABSOLUTE(.);
.ARM.exidx : {
*(.ARM.exidx*)
} > uflash
__exidx_end = ABSOLUTE(.);
_eronly = ABSOLUTE(.);
.data : {
_sdata = ABSOLUTE(.);
*(.data .data.*)
*(.gnu.linkonce.d.*)
CONSTRUCTORS
_edata = ABSOLUTE(.);
} > usram1 AT > uflash
.bss : {
_sbss = ABSOLUTE(.);
*(.bss .bss.*)
*(.gnu.linkonce.b.*)
*(COMMON)
_ebss = ABSOLUTE(.);
} > usram1
/* Stabs debugging sections. */
.stab 0 : { *(.stab) }
.stabstr 0 : { *(.stabstr) }
.stab.excl 0 : { *(.stab.excl) }
.stab.exclstr 0 : { *(.stab.exclstr) }
.stab.index 0 : { *(.stab.index) }
.stab.indexstr 0 : { *(.stab.indexstr) }
.comment 0 : { *(.comment) }
.debug_abbrev 0 : { *(.debug_abbrev) }
.debug_info 0 : { *(.debug_info) }
.debug_line 0 : { *(.debug_line) }
.debug_pubnames 0 : { *(.debug_pubnames) }
.debug_aranges 0 : { *(.debug_aranges) }
}