diff --git a/Platforms/IPSS/ARMCM0/LinkScripts/AC6/lnk.sct b/Platforms/IPSS/ARMCM0/LinkScripts/AC6/lnk.sct index fad866a2..ed2acaf7 100755 --- a/Platforms/IPSS/ARMCM0/LinkScripts/AC6/lnk.sct +++ b/Platforms/IPSS/ARMCM0/LinkScripts/AC6/lnk.sct @@ -13,17 +13,18 @@ LOAD_REGION 0x0 { *.o (RESET, +First) * (InRoot$$$Sections) - * (+RO) + * (+RO-CODE) } - DATA 0x20000000 0x4000 + DATA 0x20000000 0x7000 { - * (+RW,+ZI) + * (+RO-DATA) + * (+RW,+ZI) } - ARM_LIB_STACK 0x20006000 ALIGN 64 EMPTY -0x00002000 + ARM_LIB_STACK 0x2000C000 ALIGN 64 EMPTY -0x00002000 {} - ARM_LIB_HEAP 0x20006000 ALIGN 64 EMPTY 0x0050000 + ARM_LIB_HEAP 0x2000C000 ALIGN 64 EMPTY 0x0050000 {} } diff --git a/Platforms/IPSS/ARMCM0/system_ARMCM0.c b/Platforms/IPSS/ARMCM0/system_ARMCM0.c index 6f4a6ab4..5f1e43a2 100755 --- a/Platforms/IPSS/ARMCM0/system_ARMCM0.c +++ b/Platforms/IPSS/ARMCM0/system_ARMCM0.c @@ -70,7 +70,8 @@ void SystemInit (void) int stdout_putchar(char txchar) { - SERIAL_DATA = txchar; + SERIAL_DATA = txchar; + return(txchar); } int stderr_putchar(char txchar) diff --git a/Platforms/IPSS/ARMCM33/LinkScripts/AC6/lnk.sct b/Platforms/IPSS/ARMCM33/LinkScripts/AC6/lnk.sct index 56b3e9be..907ce1de 100755 --- a/Platforms/IPSS/ARMCM33/LinkScripts/AC6/lnk.sct +++ b/Platforms/IPSS/ARMCM33/LinkScripts/AC6/lnk.sct @@ -12,20 +12,21 @@ LOAD_REGION 0x0 { - CODE +0 0x0007ffff + CODE +0 0x30000 { *.o (RESET, +First) * (InRoot$$$Sections) - * (+RO) + * (+RO-CODE) } - DATA 0x20000000 0x4000 + DATA 0x20000000 0x7000 { + * (+RO-DATA) * (+RW,+ZI) } - ARM_LIB_STACK 0x20006000 ALIGN 64 EMPTY -0x00002000 + ARM_LIB_STACK 0x2000C000 ALIGN 64 EMPTY -0x00002000 {} - ARM_LIB_HEAP 0x20006000 ALIGN 64 EMPTY 0x0050000 + ARM_LIB_HEAP 0x2000C000 ALIGN 64 EMPTY 0x00050000 {} } diff --git a/Platforms/IPSS/ARMCM33/system_ARMCM33.c b/Platforms/IPSS/ARMCM33/system_ARMCM33.c index 69b264f5..69bf7af0 100755 --- a/Platforms/IPSS/ARMCM33/system_ARMCM33.c +++ b/Platforms/IPSS/ARMCM33/system_ARMCM33.c @@ -255,7 +255,8 @@ typedef struct int stdout_putchar(char txchar) { - SERIAL_DATA = txchar; + SERIAL_DATA = txchar; + return(txchar); } int stderr_putchar(char txchar) diff --git a/Platforms/IPSS/ARMCM4/system_ARMCM4.c b/Platforms/IPSS/ARMCM4/system_ARMCM4.c index b31bae24..2b60ecfd 100755 --- a/Platforms/IPSS/ARMCM4/system_ARMCM4.c +++ b/Platforms/IPSS/ARMCM4/system_ARMCM4.c @@ -70,7 +70,8 @@ uint32_t SystemCoreClock = SYSTEM_CLOCK; /* System Core Clock Frequency */ int stdout_putchar(char txchar) { - SERIAL_DATA = txchar; + SERIAL_DATA = txchar; + return(txchar); } int stderr_putchar(char txchar) diff --git a/Platforms/IPSS/ARMCM7/LinkScripts/AC6/lnk.sct b/Platforms/IPSS/ARMCM7/LinkScripts/AC6/lnk.sct index 7cc17d07..6e24b770 100755 --- a/Platforms/IPSS/ARMCM7/LinkScripts/AC6/lnk.sct +++ b/Platforms/IPSS/ARMCM7/LinkScripts/AC6/lnk.sct @@ -22,9 +22,9 @@ LOAD_REGION 0x0 * (+RW,+ZI) } - ARM_LIB_STACK 0x21000000 ALIGN 64 EMPTY 0x00002000 + ARM_LIB_STACK 0x20100000 ALIGN 64 EMPTY -0x00002000 {} - ARM_LIB_HEAP 0x22000000 ALIGN 64 EMPTY 0x00100000 + ARM_LIB_HEAP 0x20100000 ALIGN 64 EMPTY 0x00100000 {} } diff --git a/Platforms/IPSS/ARMCM7/system_ARMCM7.c b/Platforms/IPSS/ARMCM7/system_ARMCM7.c index 732aa491..a20e6b7e 100755 --- a/Platforms/IPSS/ARMCM7/system_ARMCM7.c +++ b/Platforms/IPSS/ARMCM7/system_ARMCM7.c @@ -82,7 +82,8 @@ void SystemCoreClockUpdate (void) int stdout_putchar(char txchar) { - SERIAL_DATA = txchar; + SERIAL_DATA = txchar; + return(txchar); } int stderr_putchar(char txchar)