diff --git a/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC176X/TOOLCHAIN_GCC_ARM/LPC1768.ld b/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC176X/TOOLCHAIN_GCC_ARM/LPC1768.ld index 9ad0af0be0..57b24ac38c 100644 --- a/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC176X/TOOLCHAIN_GCC_ARM/LPC1768.ld +++ b/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC176X/TOOLCHAIN_GCC_ARM/LPC1768.ld @@ -114,6 +114,41 @@ SECTIONS } > RAM + + /* Code can explicitly ask for data to be + placed in these higher RAM banks where + they will be left uninitialized. + */ + .AHBSRAM0 (NOLOAD): + { + Image$$RW_IRAM2$$Base = . ; + *(AHBSRAM0) + Image$$RW_IRAM2$$ZI$$Limit = .; + } > USB_RAM + + .AHBSRAM1 (NOLOAD): + { + Image$$RW_IRAM3$$Base = . ; + *(AHBSRAM1) + Image$$RW_IRAM3$$ZI$$Limit = .; + } > ETH_RAM + + /* .data_RAM2 : ALIGN(4) + { + FILL(0xff) + *(.data.$RAM2*) + *(.data.$ETH_RAM*) + . = ALIGN(4) ; + } > ETH_RAM AT>FLASH + + .bss_RAM2 : ALIGN(4) + { + *(.bss.$RAM2*) + *(.bss.$ETH_RAM*) + . = ALIGN(4) ; + } > ETH_RAM + */ + .bss : { __bss_start__ = .; @@ -121,6 +156,7 @@ SECTIONS *(COMMON) __bss_end__ = .; } > RAM + .heap : { diff --git a/libraries/net/eth/lwip-eth/arch/lpc17_emac.c b/libraries/net/eth/lwip-eth/arch/lpc17_emac.c index 7518d72ab5..9b7ce41375 100644 --- a/libraries/net/eth/lwip-eth/arch/lpc17_emac.c +++ b/libraries/net/eth/lwip-eth/arch/lpc17_emac.c @@ -142,6 +142,8 @@ struct lpc_enetdata { # define ETHMEM_SECTION ALIGNED(8) #endif +#define ETHMEM_SECTION __attribute__((section("AHBSRAM1"),aligned)) + /** \brief LPC EMAC driver work data */ ETHMEM_SECTION struct lpc_enetdata lpc_enetdata; diff --git a/libraries/tests/mbed/env/test_env.cpp b/libraries/tests/mbed/env/test_env.cpp index ed88de24b0..1fc3aa1c2d 100644 --- a/libraries/tests/mbed/env/test_env.cpp +++ b/libraries/tests/mbed/env/test_env.cpp @@ -13,11 +13,11 @@ void led_blink(PinName led) { void notify_completion(bool success) { if (success) { - printf("{{success}}"NL); + printf("{{success}}" NL ); } else { - printf("{{failure}}"NL); + printf("{{failure}}" NL ); } - printf("{{end}}"NL); + printf("{{end}}" NL); led_blink(success?LED1:LED4); } diff --git a/workspace_tools/libraries.py b/workspace_tools/libraries.py index aa5bb2c234..453922a17e 100644 --- a/workspace_tools/libraries.py +++ b/workspace_tools/libraries.py @@ -71,7 +71,7 @@ LIBRARIES = [ "source_dir": [ETH_SOURCES, LWIP_SOURCES], "build_dir": ETH_LIBRARY, "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_SOURCES, LWIP_SOURCES], - "supported": CORTEX_ARM_SUPPORT + # "supported": CORTEX_ARM_SUPPORT }, { diff --git a/workspace_tools/settings.py b/workspace_tools/settings.py index 0e48d27b86..9317aae200 100644 --- a/workspace_tools/settings.py +++ b/workspace_tools/settings.py @@ -76,7 +76,8 @@ ARM_CPPLIB = join(ARM_LIB, "cpplib") MY_ARM_CLIB = join(ARM_PATH, "lib", "microlib") # GCC ARM -GCC_ARM_PATH = "C:/arm-none-eabi-gcc-4_7/bin" +# GCC_ARM_PATH = "C:/arm-none-eabi-gcc-4_7/bin" +GCC_ARM_PATH = "" # GCC CodeSourcery GCC_CS_PATH = "C:/Program Files (x86)/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI/bin" diff --git a/workspace_tools/tests.py b/workspace_tools/tests.py index 366049327c..7f9aa9af8e 100644 --- a/workspace_tools/tests.py +++ b/workspace_tools/tests.py @@ -503,79 +503,79 @@ TESTS = [ "id": "NET_1", "description": "TCP client hello world", "source_dir": join(TEST_DIR, "net", "helloworld", "tcpclient"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_2", "description": "UDP client hello world", "source_dir": join(TEST_DIR, "net", "helloworld", "udpclient"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_3", "description": "TCP echo server", "source_dir": join(TEST_DIR, "net", "echo", "tcp_server"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_4", "description": "TCP echo client", "source_dir": join(TEST_DIR, "net", "echo", "tcp_client"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_5", "description": "UDP echo server", "source_dir": join(TEST_DIR, "net", "echo", "udp_server"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_6", "description": "UDP echo client", "source_dir": join(TEST_DIR, "net", "echo", "udp_client"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_7", "description": "HTTP client", "source_dir": join(TEST_DIR, "net", "protocols", "HTTPClient_HelloWorld"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_8", "description": "NTP client", "source_dir": join(TEST_DIR, "net", "protocols", "NTPClient_HelloWorld"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_9", "description": "Multicast Send", "source_dir": join(TEST_DIR, "net", "helloworld", "multicast_send"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_10", "description": "Multicast Receive", "source_dir": join(TEST_DIR, "net", "helloworld", "multicast_receive"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_11", "description": "Broadcast Send", "source_dir": join(TEST_DIR, "net", "helloworld", "broadcast_send"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_12", "description": "Broadcast Receive", "source_dir": join(TEST_DIR, "net", "helloworld", "broadcast_receive"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, { "id": "NET_13", "description": "TCP client echo loop", "source_dir": join(TEST_DIR, "net", "echo", "tcp_client_loop"), "dependencies": [MBED_LIBRARIES, RTOS_LIBRARIES, ETH_LIBRARY], - "supported": CORTEX_ARM_SUPPORT, + # "supported": CORTEX_ARM_SUPPORT, }, # Vodafone tests diff --git a/workspace_tools/toolchains/gcc.py b/workspace_tools/toolchains/gcc.py index 22ca32dae6..8ec65ee2d7 100644 --- a/workspace_tools/toolchains/gcc.py +++ b/workspace_tools/toolchains/gcc.py @@ -62,7 +62,7 @@ class GCC(mbedToolchain): self.asm = [join(tool_path, "arm-none-eabi-as")] + self.cpu self.cc = [join(tool_path, "arm-none-eabi-gcc"), "-std=gnu99"] + common_flags - self.cppc =[join(tool_path, "arm-none-eabi-g++"), "-std=gnu++98"] + common_flags + self.cppc =[join(tool_path, "arm-none-eabi-g++"), "-std=gnu++11"] + common_flags self.ld = [join(tool_path, "arm-none-eabi-gcc"), "-Wl,--gc-sections", "-Wl,--wrap,main"] + self.cpu self.sys_libs = ["stdc++", "supc++", "m", "c", "gcc"]