Commit Graph

1488 Commits (9c1fd485299861c65e0c0e477dc111bebe40ae5c)

Author SHA1 Message Date
Sarah Marsh ba6eb98b5c Use only one flag for test configuration file
Tools will figure out if user passed in a custom path (to indicate configration file for module) or whether they used a keyword (to indicate they'd like to use an mbed OS configuration)
2017-09-20 18:29:37 -05:00
Sarah Marsh e982eed4ad Add option to add a configuration file for modules 2017-09-20 18:27:59 -05:00
Sarah Marsh 8c0bc781d9 Allow tools to use networkinterface configs in tests 2017-09-20 18:27:59 -05:00
Jimmy Brisson 727256a05d Remove prefix stuff from GCC memap parser
It's just not used anymore
2017-09-20 11:00:02 -05:00
Jimmy Brisson 3d5bea337f Test the module_add function 2017-09-20 10:49:12 -05:00
Jimmy Brisson 06203c4fcc Test GCC memap parser 2017-09-20 10:39:42 -05:00
Jimmy Brisson bcd89dae18 Test memap parsing for ARMC6 and IAR 2017-09-19 15:14:43 -05:00
Anna Bridge 02a10e5974 Merge pull request #5094 from deepikabhavnani/m23_armc6
ARMC6 support for Cortex-M23
2017-09-19 10:25:33 +01:00
Anna Bridge f18d2d862a Merge pull request #5091 from theotherjimmy/fix-nordic-concat
Correct booting on Nordic devices with ARMC6
2017-09-19 10:24:54 +01:00
Jimmy Brisson fdd4ae3056 Parse full paths from ARM map file
Now we don't have to scan!

This is a 20% speed improvement
2017-09-18 17:18:01 -05:00
Jimmy Brisson 8c54c4efa8 Display full paths in armlink output 2017-09-18 16:40:52 -05:00
Jimmy Brisson 6d135c26b3 Remove warnings for Zero sized sections
We just don't care if we don't know where they go
2017-09-18 15:45:05 -05:00
Jimmy Brisson 0d2a0a0c1d Parse filenames from IAR map file
Instead of scanning.

Is a 8ms/15% speedup.
2017-09-18 15:45:03 -05:00
Jimmy Brisson 2114ccd5a1 Refactor memap for speed 2017-09-18 15:24:18 -05:00
Jimmy Brisson a9bd33e51e Merge pull request #5103 from theotherjimmy/fix-memap-libs
Parse libraries with memap-arm
2017-09-18 09:12:48 -05:00
Jimmy Brisson faa3375397 Mock supported_toolchains values in tests 2017-09-15 17:59:46 -05:00
Jimmy Brisson 4e46aa9e02 Merge pull request #5111 from theotherjimmy/armc6-emit-deps
Emit dependency information with ARMC6
2017-09-15 17:50:23 -05:00
David Walters 7b4959125f Added in safety check if details_txt is None 2017-09-15 16:00:20 +01:00
David Walters aafe61414e Edited get_interface_version info for clarity 2017-09-15 15:49:08 +01:00
David Walters 256ab6114a Fixed mount_point example usage 2017-09-15 15:30:34 +01:00
David Walters e4b55dd6a0 Removed get_mounted_details_txt from test_api.py
Fixed minor typos in test_api.py
Added get_interface_version to detect_targets
2017-09-15 10:15:24 +01:00
Jimmy Brisson bd7f320387 Emit dependency information with ARMC6
Which allows it to be parsed
2017-09-14 16:17:44 -05:00
Deepika eea29d34a7 Corrected check for ARM/ARMC6 toolchain
ARMC6 support required ARM compiler support as mandatory requirement which
should not be the case. Cortex-M23/M33 devices are not suuported by ARM compiler5

Adding ARMC6 without ARM in target.json should work now.
2017-09-14 14:14:35 -05:00
Jimmy Brisson 7eccec425f Parse libraries with memap-arm 2017-09-14 09:50:47 -05:00
Jimmy Brisson a62f89da05 Correct uvision template to correctly pass include paths 2017-09-14 09:39:00 -05:00
Jimmy Brisson 8db0fa9819 Correct rename mistake in make arm compiler exporters 2017-09-14 09:14:47 -05:00
Deepika 60c600ac11 ARMC6 support for Cortex-M23 2017-09-13 17:07:05 -05:00
Jimmy Brisson 3e1b96d899 Disable response files on export
None of the exporters can handle them, so just don't do it
2017-09-13 15:14:26 -05:00
Jimmy Brisson 58372d3fdf Allow ARMC6 to run post-binary-hooks marked for ARM 2017-09-13 14:50:06 -05:00
Anna Bridge 7b428916f5 Merge pull request #4949 from theotherjimmy/feature-armc5+armc6
NEW TOOLCHAIN: Add the ARMC6 Compiler
2017-09-13 10:39:15 +01:00
Vincent Coubard 682816d86e Sleep: Disallow sleep for targets turning of the systick clock at sleep entry.
When the RTOS is present and the tickless mode is not implemented, it is
expected that the next tick issued by the Systick timer will wake up the MCU.
However nothing prevents an implementation of the ARM architecture to gate the
systick clock signal upon sleep entry.

Therefore on those targets sleep shall be prohibited if the RTOS is present and the
tickless mode is not implemented.

To ease life of porters , a new option has been added in the device add list:
STCLK_OF_DURING_SLEEP. This option expose that the target turn of the systick
clock during sleep.

Targets which exhibit such behavior shall add this define in their device_has list.
2017-09-13 10:28:02 +01:00
Jaakko Heikkilä 6b6187a405 export: Add missing flags to Sw4STM32
Some of the optimization and warning flags, which were supported by the
gnuarmeclipse exporter, were missing from the sw4stm32.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä c13b80cc75 export: Corrections to Sw4STM32 after review
Add double quotes to linker command unconditionally.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä 5b0fe22652 export: Fix invalid id's in Sw4STM32 project files 2017-09-13 12:05:27 +03:00
Jaakko Heikkilä b94ad5aa35 export: Remove build directories from excluded paths
Directories Debug and Release must not be excluded. Otherwise, Eclipse is
not able to find binaries, which are stored to build directories.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä 847276455b export: Add debug configuration to Sw4STM32 2017-09-13 12:05:27 +03:00
Jaakko Heikkilä 9d386b23e4 export: Fix Windows problems with Sw4STM32
Quoting linker preprocessor command, if path contains parentheses. Using
relative path to shorten list of included directories. Using Eclipse
variables to get path to preprocessor.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä e1d163ba0a export: Remove preprocessed ld files after build
Sometimes Sw4STM32 exporter receives wrong linker script file. Because build
directories cannot be excluded from scanned resources, ld files are removed.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä 98e578f707 export: Fix after testing Sw4STM32
Quotation marks in defines had to be replaced with html codes.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä e0cdda6e72 export: Invalid linker script path in Sw4STM32
Fixed invalid linker script path in project file.
Using 'defines' instead of 'symbols' in compiler options.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä d8d2b404cd export: Remove dublicate methods in Sw4STM32
Removed unused methods and methods with dublicate functionality.
Removed unused imports. Generating list of defines for assembler.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä 83127db09e export: Sw4STM32 inherits GNUARMEclipse
Sw4STM32 is using methods from GNUARMEclipse class to handle flags.
Flags are also passed to cproject file.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä dbf20fca39 export: Change linker script name
SW4STM32 linker script name now contains target name.
Print formatting is using new Python style.
2017-09-13 12:05:27 +03:00
Jaakko Heikkilä b2876c47d1 export: Fix sw4stm32 linker script problem
Added makefile.target, and rule for linker script pre-compilation.
2017-09-13 12:05:27 +03:00
Jarno Komula fbc4a89607 Review changes + including config header from toolchain.get_config_header() instead of hardcoding it to project file. 2017-09-13 12:05:27 +03:00
Jarno Komula 0b90c827bd Better readability. 2017-09-13 12:05:27 +03:00
Jarno Komula 2d27e2730f Review corrections. 2017-09-13 12:05:27 +03:00
Jarno Komula 6289596f04 Fixed sw4stm32 exporter 2017-09-13 12:05:27 +03:00
Shrikant Tudavekar fec2346627 add ARMC6 in supported compiler 2017-09-12 15:31:50 -05:00
David Walters 7ff57c4671 Changed DAPLink version to interface version. 2017-09-12 10:46:07 +01:00
Jimmy Brisson 23aafbfe6c Optimize space usage on builds
by not creating gigantic exception nonsense
2017-09-11 14:45:21 -05:00
Jimmy Brisson 8a9d79bcbd Add ARMC6 to supported matrix 2017-09-11 13:20:33 -05:00
Jimmy Brisson d56c19f253 Detect test skips with armc6 2017-09-11 13:20:33 -05:00
Jimmy Brisson 887d29372b Check for support in ARMC6 2017-09-11 13:20:33 -05:00
Jimmy Brisson d72f6dbfe4 Disable MULADDC assembly
It's not supported in ARMC6
2017-09-11 13:20:33 -05:00
Jimmy Brisson f4b7d8ba77 Avoid forcing preprocessing
We avoid forcing preprocessing by not replacing the first line when it's
not a shebang (#!). Should work pretty darn well.
2017-09-11 13:20:32 -05:00
Jimmy Brisson 06b00683c3 Genericify arm compiler exporter to versions 5 + 6 2017-09-11 13:20:32 -05:00
Jimmy Brisson e9d3166a5e Expose present get_compile_options API in Toolcahins 2017-09-11 13:20:32 -05:00
Jimmy Brisson 15a9a0382b Enable Compiling with ARMC6 across all targets
remove duplicate sys.cpp
2017-09-11 13:20:32 -05:00
Jimmy Brisson 1fef5553b4 Parse deps the same for GCC_ARM and ARMC6 2017-09-11 13:17:54 -05:00
Jimmy Brisson 98b4768434 Initial toolchain class for ARMC6
While ARMC6 does use the same linker (armlink) as ARM Compiler 5, it
is not compatible.

The reason for this incompatibility are twofold:
 * armlink may invoke the C preprocessor by adding a shebang
   (`#!`) to the top of their input files.
 * ARMC6 and ARMC5 differ in how you invoke the preprocessor:
   * ARMC5: `#! armcc -E`
   * ARMC6: `#! armclang -E`

This forces the tools to rewrite the shebang if it's wrong.

This does not yet handle dependencies properly
2017-09-11 13:17:54 -05:00
Deepika ca1f24cc0e Add -mcmse flag for GCC and improved logic for cpu core 2017-09-11 11:49:28 -05:00
Deepika 9422c351e4 Initial RTX and tools support for Cortex M-23/M-33 devices 2017-09-11 11:43:26 -05:00
David Walters d43a847667 Added additional DAPLink version info for `mbed detect` command` 2017-09-11 16:54:32 +01:00
mbedNoobNinja 3ba6620521 "ds5_5 & e2studio export fix" 2017-09-11 09:30:43 +03:00
Jimmy Brisson a108adf396 Merge pull request #4916 from JojoS62/add_MCUXpresso_exporter
Add mcuxpresso exporter
2017-09-08 09:44:25 -05:00
Martin Kojtal 814eaa99fe Merge pull request #5030 from chrissnow/uVision-LDFlags
Export uVision linker flags so that bootloader projects build correctly
2017-09-07 12:46:35 +01:00
Jimmy Brisson a3bb8e370b Allow eclipse to fail for mysteriously in build 2017-09-06 17:38:58 -05:00
Jimmy Brisson 9d51b1afa8 Add imports for build 2017-09-06 16:58:40 -05:00
Jimmy Brisson 7457bbbc5c Merge pull request #4665 from Archcady/enable_sdram
Enable sdram usage of REALTEK_RTL8195AM
2017-09-06 14:26:34 -05:00
Jimmy Brisson 5bcd97a2bc Merge pull request #4984 from theotherjimmy/unify-unit-tests
Unify mbed OS tools testing style with what's used in mbed-ls, htrun, greentea
2017-09-06 14:26:14 -05:00
Chris Snow e783e98066 Export linker flags so that bootloader projects build correctly 2017-09-05 22:03:29 +01:00
Jimmy Brisson 9d0e8abb11 Rename and simplify config test target names 2017-09-05 15:21:08 -05:00
Jimmy Brisson 399b6acfb1 Clean up json
Wipe out all blank lines in json:
  find tools/test -name 'test_data.json' | xargs sed -i -e '/^$/d'
Move all start braces back a space:
  find tools/test -name 'test_data.json' | xargs sed -i -e "s/^ {/{/"
2017-09-05 14:39:48 -05:00
Jimmy Brisson 4a937fe15e Linting and correcting comments 2017-09-05 13:30:16 -05:00
Martin Kojtal c291973f49 Merge pull request #4933 from 0xc0170/fix_stats_depth
test: fix stats depth variable scope
2017-09-04 16:48:53 +01:00
JojoS 32c56b2743 added support for targets with extra SDK
some targets need an additional SDK.
2017-09-01 09:45:42 +02:00
JojoS d00d6f412a add support for K64F target
added template for K64F
2017-09-01 09:43:36 +02:00
JojoS 2615982b3a applied patch from mmahadevan108
- fixes invalid char '#' in linker script
- added 'mbedclean'
2017-09-01 09:41:12 +02:00
Russ Butler ac22225ad9 Move Cortex specific RTX behind TARGET_CORTEX
Update directory structure to include RTX for only cortex targets, and
for all cortex targets. This patch accomplishes this by moving mbed-os
specific RTX files and RTX itself into rtos/TARGET_CORTEX along with
removing TARGET_CORTEX_M from the RTX5 directory.

The old directory structure:

rtos/rtx5/<mbed-os specific RTX files>
rtos/rtx5/TARGET_CORTEX_M/*
rtos/rtx4/*
rtos/<mbed-os specific RTX files>

Is re-arranged to:

rtos/TARGET_CORTEX/rtx5/*
rtos/TARGET_CORTEX/rtx4/*
rtos/TARGET_CORTEX/<mbed-os specific rtx files>

This both encapsulates RTX code more cleanly and makes it easier to
experiment with non-cortex cmsis-os2 backends, such as a posix
based cmsis-os2 backend.

Note - A potentially better name for the CORTEX_M directory would be
something like FEATURE_RTX5 since this directory only contains RTX5
related files. This cannot be done because there is not an easy way
to turn this feature on, since it cannot be done from mbed_lib.json.
2017-08-31 19:55:54 -05:00
Martin Kojtal b99e6b5f7a Pass stats depth to singletest correctly
Fixes #4930
2017-08-31 10:41:20 -05:00
Jimmy Brisson 318e92c028 Merge pull request #4950 from OpenNuvoton/nuvoton_usb
M487: Support USB device/host
2017-08-29 13:45:55 -05:00
Jimmy Brisson a2bcae0b7a Rework test_api testing and fix a bug
Bug was found by the new tests
2017-08-28 15:40:35 -05:00
Jimmy Brisson 817eb5ab05 Unify configuration testing and the travis command 2017-08-28 15:10:50 -05:00
Jimmy Brisson de9f9dd3a2 Convert memap tests to pytest style 2017-08-28 13:52:28 -05:00
Jimmy Brisson 177fb7933d Rework config_test to use py.test 2017-08-28 12:27:09 -05:00
Yuguo Zou c834b7faac Fix bugs for RTL8195AM with debug profile of compilers
1. Add alignment / padding for postbuild segments
2. Clear tcm.bss section
3. Remove TRAP_OverrideTable(), move lines to PLAT_Start()
2017-08-28 19:04:26 +08:00
Shrikant Tudavekar ddc9e0840a disable -f option for assembly files for IAR 2017-08-25 16:59:21 -05:00
Yuguo Zou a0064ae47c Remove extension in cmd
Remove extension in command line so the script could work on Linux
2017-08-24 11:26:40 +08:00
Phyo Kyaw 2cbca704d8 e2 studio exporter update 2017-08-23 17:00:55 +01:00
JojoS 025b8d9a4d changed execuatable name for tests 2017-08-23 17:02:33 +02:00
Jimmy Brisson dc6398a385 Check for mbed 5 support on export 2017-08-23 08:31:07 -05:00
JojoS f776631d3b added target LPCPC54608
from patch by mmahadevan108
2017-08-22 21:37:14 +02:00
Yuguo Zou 1e398cfc60 Add RTL8195AM support for mbed client with IAR
Move ticker related code to SRAM due to time drift sensitive
2017-08-22 17:34:00 +08:00
ccli8 a98ef4323d [M487] Update travis file 2017-08-22 10:57:37 +08:00
JojoS 07355e1362 removed empty project
was just an copy template for new targets
2017-08-21 22:19:42 +02:00
JojoS 9f628bb431 use UID class from gnuarmeclipse exporter
use global UID class
removed  outcommented code
2017-08-21 22:08:07 +02:00
JojoS e4570dbb49 add template for LPC1549 2017-08-21 21:26:16 +02:00
JojoS 9d77dffc2a fix export static_files to zip
fixed adding a list and a tuple
2017-08-16 23:37:35 +02:00
JojoS 6710e79486 fixed is_target_supported()
path for checking the templates was not independent
2017-08-16 23:04:08 +02:00