Skip to content

Commit dd70336

Browse files
author
Bogdan Marinescu
committed
[LPC11U24] Take advantage of the full 8K of RAM
The linker command scripts/startup files used only 4K of RAM on this target.
1 parent 0c33d40 commit dd70336

File tree

7 files changed

+22
-14
lines changed

7 files changed

+22
-14
lines changed

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_ARM_MICRO/LPC11U24.sct

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,12 @@ LR_IROM1 0x00000000 0x8000 { ; load region size_region (32k)
66
.ANY (+RO)
77
}
88
; 8_byte_aligned(48 vect * 4 bytes) = 8_byte_aligned(0xC0) = 0xC0
9-
; 8KB - 0xC0 = 0xF40
10-
RW_IRAM1 0x100000C0 0xF40 {
9+
; 8KB - 0xC0 = 0x1F40
10+
RW_IRAM1 0x100000C0 0x1F40 {
1111
.ANY (+RW +ZI)
1212
}
13+
RW_IRAM2 0x20004000 0x800 { ; RW data, USB RAM
14+
.ANY (USBRAM)
15+
}
1316
}
1417

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_ARM_MICRO/startup_LPC11xx.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Stack_Size EQU 0x00000400
2525
EXPORT __initial_sp
2626

2727
Stack_Mem SPACE Stack_Size
28-
__initial_sp EQU 0x10001000 ; Top of RAM from LPC11U
28+
__initial_sp EQU 0x10002000 ; Top of RAM from LPC11U
2929

3030

3131
Heap_Size EQU 0x00000000

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_ARM_STD/LPC11U24.sct

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,12 @@ LR_IROM1 0x00000000 0x8000 { ; load region size_region (32k)
66
.ANY (+RO)
77
}
88
; 8_byte_aligned(48 vect * 4 bytes) = 8_byte_aligned(0xC0) = 0xC0
9-
; 8KB - 0xC0 = 0xF40
10-
RW_IRAM1 0x100000C0 0xF40 {
9+
; 8KB - 0xC0 = 0x1F40
10+
RW_IRAM1 0x100000C0 0x1F40 {
1111
.ANY (+RW +ZI)
1212
}
13+
RW_IRAM2 0x20004000 0x800 { ; RW data, USB RAM
14+
.ANY (USBRAM)
15+
}
1316
}
1417

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_ARM_STD/startup_LPC11xx.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
; *
2020
; *****************************************************************************/
2121

22-
__initial_sp EQU 0x10001000 ; Top of RAM from LPC11U
22+
__initial_sp EQU 0x10002000 ; Top of RAM from LPC11U
2323

2424
PRESERVE8
2525
THUMB

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/LPC11U24.ld

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
MEMORY
55
{
66
FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 32K
7-
RAM (rwx) : ORIGIN = 0x100000C0, LENGTH = 0xF40
7+
RAM (rwx) : ORIGIN = 0x100000C0, LENGTH = 0x1F40
8+
USB_RAM (rwx): ORIGIN = 0x20004000, LENGTH = 0x800
89
}
910

1011
/* Linker script to place sections and symbol values. Should be used together

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_CR/LPC11U24.ld

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ MEMORY
77
{
88
/* Define each memory region */
99
MFlash32 (rx) : ORIGIN = 0x0, LENGTH = 0x8000 /* 32k */
10-
RamLoc4 (rwx) : ORIGIN = 0x100000C0, LENGTH = 0xF40 /* 4k */
10+
RamLoc8 (rwx) : ORIGIN = 0x100000C0, LENGTH = 0x1F40 /* 8k */
1111
RamUsb2 (rwx) : ORIGIN = 0x20004000, LENGTH = 0x800 /* 2k */
1212
}
1313
/* Define a symbol for the top of each memory region */
1414
__top_MFlash32 = 0x0 + 0x8000;
15-
__top_RamLoc4 = 0x10000000 + 0x1000;
15+
__top_RamLoc8 = 0x10000000 + 0x2000;
1616
__top_RamUsb2 = 0x20004000 + 0x800;
1717

1818
ENTRY(ResetISR)
@@ -116,7 +116,7 @@ SECTIONS
116116
.uninit_RESERVED : ALIGN(4)
117117
{
118118
KEEP(*(.bss.$RESERVED*))
119-
} > RamLoc4
119+
} > RamLoc8
120120

121121
.data : ALIGN(4)
122122
{
@@ -126,7 +126,7 @@ SECTIONS
126126
*(.data*)
127127
. = ALIGN(4) ;
128128
_edata = .;
129-
} > RamLoc4 AT>MFlash32
129+
} > RamLoc8 AT>MFlash32
130130

131131

132132
.bss_RAM2 : ALIGN(4)
@@ -145,8 +145,8 @@ SECTIONS
145145
. = ALIGN(4) ;
146146
_ebss = .;
147147
PROVIDE(end = .);
148-
} > RamLoc4
148+
} > RamLoc8
149149

150150
PROVIDE(_pvHeapStart = .);
151-
PROVIDE(_vStackTop = __top_RamLoc4 - 0);
151+
PROVIDE(_vStackTop = __top_RamLoc8 - 0);
152152
}

libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_CS/LPC11U24.ld

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ MEMORY
2727
{
2828
rom (rx) : ORIGIN = 0x00000000, LENGTH = 32K
2929

30-
ram (rwx) : ORIGIN = 0x100000C0, LENGTH = 0xF40
30+
ram (rwx) : ORIGIN = 0x100000C0, LENGTH = 0x1F40
31+
usb_ram (rwx) : ORIGIN = 0x20004000, LENGTH = 0x800
3132
}
3233

3334
/* These force the linker to search for particular symbols from

0 commit comments

Comments
 (0)