Martin Kojtal
38ae4f9289
Merge pull request #2128 from LMESTM/fix_F4_serial_it_issue2119
...
[STM32] Serial interrupt TC vs. TXE
2016-07-15 15:21:49 +01:00
Martin Kojtal
1201f4a09c
Merge pull request #2127 from svastm/fix_rtc_min_year
...
[STM32XX] Fix RTC minimum date
2016-07-15 15:03:14 +01:00
Bogdan Marinescu
a558c49240
Rebuild sources if configuration is changed
...
This commit adds a check for configuration data changes. If a change in
configuration data is detected, all the sources in the tree are rebuilt.
This is a fix for #2073 . #2162 was originally proposed as a fix, but it
was agreed that `--preinclude` is a more convenient way to include
configuration data, since it can be used to change the behaviour of
source files that don't include "mbed_config.h" directly, which is a big
advantage when importing 3rd party source trees. Compared to #2162 , this
commit has the disadvantage of rebuilding all the source files if a
configuration change is detected, but it was agreed that the advantage
of using `--preinclude` outweighs the disadvantage of the increased
compilation time.
2016-07-15 16:37:46 +03:00
0xc0170
f95265f38d
Exporters - progen TARGETS lazy evaluated
...
To speed up project.py, use @property for TARGETS.
When exporters are used, it would ask progen for all targets support
(number of tools x number of targets), this takes a lot of time, thus
lazily evaluated, and TARGETS are for backaward compatibility, not currently
used by project.py but by other scripts to check if a target is supported.
Profiling:
```
python tools\project.py -m K64F -i uvision -n MBED_10 -b
Before the change:
1 0.000 0.000 0.010 0.010 definitions.py:113(get_tool_definition)
824 0.004 0.000 2.990 0.004 definitions.py:124(is_supported)
1 0.000 0.000 0.000 0.000 definitions.py:145(get_debugger)
1 0.002 0.002 0.044 0.044 definitions.py:15(<module>)
384 0.002 0.000 2.986 0.008 definitions.py:26(_load_record)
1 0.000 0.000 0.000 0.000 definitions.py:32(ProGenMcus)
992 0.055 0.000 1.959 0.002 definitions.py:34(__init__)
1376 0.002 0.000 0.003 0.000 definitions.py:40(get_mcus)
384 0.001 0.000 1.070 0.003 definitions.py:43(get_mcu_record)
1 0.000 0.000 0.000 0.000 definitions.py:50(ProGenTargets)
992 0.000 0.000 0.000 0.000 definitions.py:52(__init__)
1196 0.002 0.000 0.004 0.000 definitions.py:55(get_targets)
204 0.001 0.000 1.922 0.009 definitions.py:58(get_mcu_record)
1 0.000 0.000 0.000 0.000 definitions.py:67(get_debugger)
1 0.000 0.000 0.000 0.000 definitions.py:74(ProGenDef)
992 0.008 0.000 1.973 0.002 definitions.py:83(__init__)
Days : 0
Hours : 0
Minutes : 0
Seconds : 4
Milliseconds : 723
Ticks : 47237302
TotalDays : 5.46728032407407E-05
TotalHours : 0.00131214727777778
TotalMinutes : 0.0787288366666667
TotalSeconds : 4.7237302
TotalMilliseconds : 4723.7302
After the change:
1 0.000 0.000 0.010 0.010 definitions.py:113(get_tool_definition)
2 0.000 0.000 0.025 0.012 definitions.py:124(is_supported)
1 0.000 0.000 0.000 0.000 definitions.py:145(get_debugger)
1 0.002 0.002 0.042 0.042 definitions.py:15(<module>)
3 0.000 0.000 0.035 0.012 definitions.py:26(_load_record)
1 0.000 0.000 0.000 0.000 definitions.py:32(ProGenMcus)
2 0.000 0.000 0.005 0.002 definitions.py:34(__init__)
5 0.000 0.000 0.000 0.000 definitions.py:40(get_mcus)
3 0.000 0.000 0.000 0.000 definitions.py:43(get_mcu_record)
1 0.000 0.000 0.000 0.000 definitions.py:50(ProGenTargets)
2 0.000 0.000 0.000 0.000 definitions.py:52(__init__)
5 0.000 0.000 0.000 0.000 definitions.py:55(get_targets)
3 0.000 0.000 0.035 0.012 definitions.py:58(get_mcu_record)
1 0.000 0.000 0.000 0.000 definitions.py:67(get_debugger)
1 0.000 0.000 0.000 0.000 definitions.py:74(ProGenDef)
2 0.000 0.000 0.005 0.003 definitions.py:83(__init__)
Days : 0
Hours : 0
Minutes : 0
Seconds : 1
Milliseconds : 178
Ticks : 11780618
TotalDays : 1.3634974537037E-05
TotalHours : 0.000327239388888889
TotalMinutes : 0.0196343633333333
TotalSeconds : 1.1780618
TotalMilliseconds : 1178.0618
```
2016-07-15 14:02:57 +01:00
Andrzej Puzdrowski
62543f1337
remove unrichable return statment
2016-07-15 13:16:01 +02:00
Andrzej Puzdrowski
d433b55763
changes from CR of IAR fixes for nRF5x port
2016-07-15 13:10:20 +02:00
Martin Kojtal
ee2f9174ad
Merge pull request #2097 from jamike/STM32F3
...
Target STM32F3
2016-07-15 11:05:02 +01:00
Martin Kojtal
829289bdd9
Merge pull request #2129 from jamike/Fix_for_#2124
...
Fix issue #2124 : IAR no rtos
2016-07-15 10:48:53 +01:00
Martin Kojtal
46057c5d70
Merge pull request #2103 from LMESTM/fix_pwmout_period
...
Fix pwmout period
2016-07-15 10:26:08 +01:00
Martin Kojtal
3d20b10b4d
Merge pull request #2172 from theotherjimmy/enfoce-supported-toolchains
...
[tools-build.py]Enforce supported toolchains
2016-07-15 09:02:14 +01:00
Martin Kojtal
3a2b752169
Merge pull request #2174 from theotherjimmy/return-from-build
...
[tools/build_api] Retrun truthy value on success from build_*
2016-07-15 09:01:31 +01:00
Sam Grove
eca0c69e6c
Merge pull request #2141 from theotherjimmy/project-argparse
...
[Project.py] Make -i and -m optional
2016-07-14 18:00:20 -05:00
Jimmy Brisson
6aa2bbb801
[tools/build_api] Retrun truthy value on success from build_*
...
before:
```
$ python tools/build.py -m NRF51_DK --source . -t GCC_ARM,ARM --build build --silent
[SNIP]
Completed in: (3.39)s
Build skipped:
* GCC_ARM::NRF51_DK
* ARM::NRF51_DK
```
after:
```
$ python tools/build.py -m NRF51_DK --source . -t GCC_ARM,ARM --build build --silent
[SNIP]
Completed in: (3.43)s
Build successes:
* GCC_ARM::NRF51_DK
* ARM::NRF51_DK
```
2016-07-14 13:55:51 -05:00
Jimmy Brisson
24fcb4700b
[tools-build.py]Enforce supported toolchains
...
by skipping unsupported combinations
2016-07-14 13:29:55 -05:00
Andrzej Puzdrowski
7eaef66ba2
rename scater file for nRF52 ARM_5
2016-07-14 17:09:30 +02:00
Andrzej Puzdrowski
5d7c5cf9c1
Corect nRF51 IAR scatre files in order to be compatible with softdevice 130 2.0.0
2016-07-14 17:03:06 +02:00
Andrzej Puzdrowski
7861cefb05
Fix: IAR build for NRF5x produce proper combined intel-hex file.
2016-07-14 16:37:02 +02:00
0xc0170
125754bf31
Exporter uvision - fix build_dir, only windows slashes allowed
...
uvision errors otherwise, not possible to create a path.
2016-07-14 14:21:05 +01:00
Andrzej Puzdrowski
f281ecd4be
Comand IAR toolchain to provide intel-hex as a build product.
2016-07-14 13:01:22 +02:00
Martin Kojtal
8d1d836387
Merge pull request #2164 from SeppoTakalo/master
...
Document the .mbedignore file
2016-07-14 11:14:34 +01:00
Seppo Takalo
a68eadd7cc
Document the .mbedignore file
2016-07-14 13:06:10 +03:00
Martin Kojtal
edd539b499
Merge pull request #2123 from jamike/remove_uARM_sys_cpp
...
[TARGET_STM] : remove sys.cpp not used in TOOLCHAIN_ARM_MICRO
2016-07-14 10:08:41 +01:00
0xc0170
9c3801b7b5
Config - fix - use basetring to check if a target is string
2016-07-13 14:59:48 +01:00
Bogdan Marinescu
d0d023ab58
Merge pull request #2122 from theotherjimmy/colorized-output
...
Colorized the short Warnings/Errors generated by the toolchains
2016-07-13 14:21:15 +03:00
Andrzej Puzdrowski
3c8c82b06c
make posible IAR compilation
...
IAR dosen't support "flexible array member" in c++ compilation
pm_peer_data_local_gatt_db_t::data[] -> pm_peer_data_local_gatt_db_t::data[1]
2016-07-13 13:16:36 +02:00
Vincent Coubard
9745eff74c
Merge commit 'ce830296d0297a8da543c24134bf859710fd7698' into epr_integration
...
Merge the EPR tag and the nordic branch together.
2016-07-13 12:06:02 +01:00
Przemek Wirkus
bba13ddad2
Replace in memap CSV report fields
...
Changes:
* This change impacts #2047
* In code summary columns were shortened and names changed a bit,
see [here](https://github.com/mbedmicro/mbed/pull/2047/files?w=1#diff-f9cb941bde5647a5763e18fc220efc51R410 )
* There is a need to allign memap CSV report fields (summary columns) with what
is in code now. This discrapency may create problems when generating reports
in the future. All columns should have the same name.
* memap CSV sumamry fields names changes:
'total_static_ram' -> 'static_ram'
'allocated_heap' -> 'heap'
'allocated_stack' -> 'stack'
See example of discrepancy:
'total_static_ram' vs 'static_ram'
'allocated_heap' vs 'heap'
'allocated_stack' vs 'stack'
What is in code and presented with prettytable:
+----------------------------------------+--------+-----------+------------+-------+-------+-----------+-------------+
| name | target | toolchain | static_ram | stack | heap | total_ram | total_flash |
+----------------------------------------+--------+-----------+------------+-------+-------+-----------+-------------+
| tests-mbed_drivers-c_strings | K64F | GCC_ARM | 11468 | 32768 | 65540 | 109776 | 74182 |
| tests-mbed_drivers-callback | K64F | GCC_ARM | 11980 | 32768 | 65540 | 110288 | 88406 |
| tests-mbedmicro-rtos-mbed-threads | K64F | GCC_ARM | 11468 | 32768 | 65540 | 109776 | 75918 |
| tests-mbedmicro-rtos-mbed-timer | K64F | GCC_ARM | 10788 | 32768 | 65540 | 109096 | 68534 |
+----------------------------------------+--------+-----------+------------+-------+-------+-----------+-------------+
vs CSV:
```
total_static_ram,allocated_heap,allocated_stack,total_ram,total_flash
10788,65540,32768,109096,67486
```
vs memstats_map.JSON:
```json
[
{
"module": "Fill",
"size": {
".data": 4,
".bss": 2257,
".text": 173
}
},
{
"summary": {
"total_flash": 67486,
"allocated_stack": 32768,
"total_static_ram": 10788,
"total_ram": 109096,
"allocated_heap": 65540
}
}
]
```
2016-07-13 11:25:04 +01:00
jeromecoutant
616494bcc1
Minor updates after ST internal review
2016-07-13 11:35:27 +02:00
Bogdan Marinescu
e9d225bb96
Merge pull request #2151 from mbedmicro/verbose_json_errors
...
More verrbose errors for JSON parsing
2016-07-13 10:29:31 +03:00
Bogdan Marinescu
99dbc8be4c
Merge pull request #2148 from mbedmicro/fix_targets_py
...
Fix targets py
2016-07-12 19:37:50 +03:00
Bogdan Marinescu
33dd3fe8ad
More verrbose errors for JSON parsing
...
This commit adds information about the location of problematic JSON
files when reporting a JSON parsing error.
Before this commit:
```
[ERROR] Expecting property name: line 7 column 9 (char 188)
```
After this commit:
```
Error parsing 'core/mbed_lib.json':
[ERROR] Expecting property name: line 7 column 9 (char 188)
```
2016-07-12 18:52:34 +03:00
jeromecoutant
d32c215f4e
Add new NUCLEO_F207ZG (CMSIS)
...
source: STM32Cube_FW_F2_V1.4.0
- CMSIS v2.1.1 => v2.1.2
- HAL v1.1.2 => v1.1.3
2016-07-12 16:40:30 +02:00
jeromecoutant
4f579ecf7f
Add new NUCLEO_F207ZG (HAL)
2016-07-12 16:38:23 +02:00
jeromecoutant
7ab31e8524
Add new STM32F2 family (HAL)
2016-07-12 16:38:19 +02:00
jeromecoutant
680a1c2c6d
libraries update to add NUCLEO_F207ZG
2016-07-12 16:38:15 +02:00
jeromecoutant
8d3cdfea59
tools update to add NUCLEO_F207ZG
2016-07-12 16:38:11 +02:00
jeromecoutant
9fc0a625bd
rtos update to add NUCLEO_F207ZG
2016-07-12 16:38:07 +02:00
jeromecoutant
cc729709fb
Update targets.json to add NUCLEO_F207ZG
2016-07-12 16:38:02 +02:00
Andrzej Puzdrowski
eaa9d3ba4f
Merge pull request #19 from nvlsianpu/add_nrf52_pwm_rebase
...
Add nrf52 PWM implementation.
2016-07-12 15:31:26 +02:00
Andrzej Puzdrowski
5d5ea9a050
CR changes for PWM of nRF52 part 3.
2016-07-12 15:30:32 +02:00
Andrzej Puzdrowski
3c93283dc0
CR changes for PWm nRF52 part 2.
2016-07-12 15:23:25 +02:00
Andrzej Puzdrowski
3519122760
cCR changes for nRF52 PwmOut implementation.
2016-07-12 15:12:09 +02:00
Bogdan Marinescu
9704edfca7
Fix add_py_targets and tests
...
Previously, add_py_targets assumed that it is not an error to add an
existing target if that target was previously added using
add_py_targets. This was done to aid testing, but it was weird, error
prone and broke with the latest changes to the caching mechanism. With
this commit:
- it is always an error to add a target that was previously added, which
is much more consistent.
- tests for the configuration mechanism use the newly added
'set_targets_json_location' function to clear the internal caches in
targets.py (and thus all previously added custom targets). As a side
effect, this commit also tests the 'set_targets_json_location'
function itself.
2016-07-12 14:42:21 +03:00
Bogdan Marinescu
6f86064ece
Merge pull request #2140 from mbedmicro/k64f_flow_control
...
Added flow control for K64F
2016-07-12 13:07:11 +03:00
Bogdan Marinescu
089b67cc79
Merge pull request #2144 from geky/stdio-baud-config
...
Add config option for stdio baud rate
2016-07-12 13:06:29 +03:00
Bogdan Marinescu
117b21df8f
It's now possible to specify the location of targets.json
...
With this change, it becomes possible to use targets.py with any
targets.json, not just the default one in ../hal/targets.json.
targets.py will still be initialized with the default targets.json, but
the code can then call "set_targets_json_location" to specify the new
location of targets.json. set_targets_json_location modifies all the
data "in place"; that is, it doesn't create a new TARGET_MAP,
TARGET_NAMES or alike, but rather modified the existing ones. This is
important, because code using this construct:
from tools.targets import TARGET_MAP
can work unmodified with this change.
2016-07-12 13:03:47 +03:00
Jimmy Brisson
50dbce9e74
Fixes to function caching in targets.py
...
Now funnctions are looked up in the cache using a (function name,
arguments) key, which makes it possible to cache different invocations
of the functions (with different arguments).
Also applied the @cached attribute to get_target.
2016-07-12 13:03:40 +03:00
Andrzej Puzdrowski
9f337875bb
PWM for nRF52 full debuged.
2016-07-12 11:47:34 +02:00
Andrzej Puzdrowski
7798651719
nRF52 PwmOut implementation debug
2016-07-12 11:44:42 +02:00
Andrzej Puzdrowski
07ce12fcc5
nrf52 PwmOut in progress.
2016-07-12 11:44:42 +02:00