Commit Graph

3450 Commits (296961de027b4dd1cd86fe87e3f3e4bdc9072f68)

Author SHA1 Message Date
Janne Kiiskila e20f2d30a2 target_test - assert if sectors keyword missing
Assert it properly and thus give out the target name where the
issue is, rather than just error out with KeyError and leave the
poor sod wondering where exactly the issue is.

Before:
```

=================================== FAILURES ===================================
_____________________________ test_bl_has_sectors ______________________________
    def test_bl_has_sectors():
        """Assert a bootloader supporting pack has sector information"""
        cache = Cache(True, True)
        named_targets = (
            target for target in TARGETS if
            (hasattr(target, "device_name") and getattr(target, "bootloader_supported", False))
        )
        for target in named_targets:
            assert target.device_name in cache.index,\
                ("Target %s contains invalid device_name %s" %
                 (target.name, target.device_name))
>           assert cache.index[target.device_name]["sectors"],\
                ("Device name %s is misssing sector information" %
                 (target.device_name))
E           KeyError: 'sectors'
```

After

```
___________________________________________________ test_bl_has_sectors ___________________________________________________

    def test_bl_has_sectors():
        """Assert a bootloader supporting pack has sector information"""
        # ToDo: validity checks for the information IN the sectors!
        cache = Cache(True, True)
        named_targets = (
            target for target in TARGETS if
            (hasattr(target, "device_name") and getattr(target, "bootloader_supported", False))
        )
        for target in named_targets:
            assert target.device_name in cache.index,\
                ("Target %s contains invalid device_name %s" %
                 (target.name, target.device_name))
>           assert "sectors" in cache.index[target.device_name],\
                ("Target %s does not have sectors" %
                 (target.name))
E           AssertionError: Target NUCLEO_L073RZ does not have sectors
E           assert 'sectors' in {'algorithms': [{'default': True, 'file_name': 'CMSIS/Flash/STM32L0xx_192.FLM', 'ram_size': None, 'ram_start': None, ....on_secure_callable': False, 'peripheral': False, ...}, 'default': True, 'size': 196608, 'start': 134217728, ...}}, ...}

```

This helps you finding the offending target a bit faster.

Kudos to Jammu Kekkonen (jammu.kekkonen@arm.com) to figuring out how to actually
run this test & the assertion.

Ref: Mbed OS issue #12219
2020-01-09 16:50:45 +02:00
Martin Kojtal dc6320239b
Merge pull request #12162 from JanneKiiskila/CMSIS-pack-STM32WB
CMSIS-pack update for STM32WB-family
2020-01-09 15:03:25 +01:00
Martin Kojtal 974baaf199
Merge pull request #12143 from VeijoPesonen/blockdevices_testable
Blockdevice config changes to make it possible to run littlefs filesystem tests
2020-01-09 12:04:20 +01:00
d-kato 3a2ab1b56e GR_LYCHEE: enable bootloader support 2020-01-09 16:18:14 +09:00
d-kato aad53c2377 RZ_A1H: enable bootloader support 2020-01-09 16:15:50 +09:00
Janne Kiiskila 0a7eb62b9d Size & sectors also for STM32WB55VGYx
The size was still 16 megabytes, while in reality it is one megabyte.
Added the sectors, too (see previous commit msg for details).
2020-01-08 22:00:41 +02:00
Janne Kiiskila 7816f29a57 Sector size definitions to index.json/STM32WB5xx
Adding manually the sector sizes now. The reference manual states
these chips have a fairly nice memory map as sectors are evenly sized
and fairly small. Quote from reference manual;

"The Flash memory is organized as follows:
• A main memory block containing 256 pages of 4 KB, each page with eight rows of
512 bytes."

https://www.st.com/content/ccc/resource/technical/document/reference_manual/group0/83/cf/94/7a/35/a9/43/58/DM00318631/files/DM00318631.pdf/jcr:content/translations/en.DM00318631.pdf
- chapter 3.3.1 Flash memory organization
- internal flash starts at address 0x0800 0000
2020-01-08 21:54:03 +02:00
Janne Kiiskila 51f22e2f59 Fix ROM size for STM32WB55RGVx (16 MB -> 1 MB)
Per feedback from STM the correct ROM size is 1 MB, instead of
16 MB. The KEIL source information is (in the pack itself) wrong, since
the KEIL webpage lists it as a 16 MB part, too - but if you look into
other sources - it is indeed 1 MB.
2020-01-08 15:39:02 +02:00
Janne Kiiskila dfb62a22bf CMSIS-pack update for STM32WB-family
Update of the tools/arm_pack_manager/index.json -file for the
STM32WB-chipset family.
2020-01-08 15:38:11 +02:00
Rajkumar Kanagaraj de3c737581 uARM: Fix deprecate warning printing wrongly for other toolchains. 2020-01-07 08:02:31 -08:00
Martin Kojtal 3e790cc9ab
Merge pull request #12065 from AriParkkila/cell-fea-nidd
Non-IP socket implementation for NIDD over CP
2020-01-07 15:55:15 +01:00
Martin Kojtal b943b5f4db
Merge pull request #12179 from jamesbeyond/update_ble
TESTS: Update testing of examples in mbed-os
2020-01-07 11:25:19 +01:00
Ari Parkkila 27024b34e3 Cellular: Add NIDD over CP socket tests 2020-01-06 22:35:18 -08:00
Rajkumar Kanagaraj 504ef7e7e1 Incorporated the review comment 2020-01-03 10:13:39 -08:00
Rajkumar Kanagaraj e5c6254372 Greentea test :Added the print in the exception handler 2020-01-03 09:36:26 -08:00
Qinghao Shi d047b28242 TOOLS: add some inline comments 2020-01-03 17:26:11 +00:00
Veijo Pesonen 67676dc123 SPIFReducedBlockDevice: Makes default configuration to use mbed_lib.json settings
SPIFReducedBlockDevice parameters come from mbed_lib.json if not provided
explicitly.

Introduced an app config file for running filesystem tests with RSPIF
block device
2020-01-03 15:30:13 +02:00
Veijo Pesonen 23f87877a1 SPIFBlockDevice: Makes default configuration to use mbed_lib.json settings
SPIFBlockDevice parameters come from mbed_lib.json if not provided
explicitly.

Introduced an app config file for running filesystem tests with SPIF
modules
2020-01-03 15:28:41 +02:00
Veijo Pesonen 3be2b8bf12 QSPIFBlockDevice: Makes default configuration to use mbed_lib.json settings
QSPIFBlockDevice parameters come from mbed_lib.json if not provided
explicitly.

Introduced an app config file for running filesystem tests with QSPIF
modules
2020-01-03 15:25:40 +02:00
Veijo Pesonen 803ae3444d SDBlockDevice: Makes default configuration to use mbed_lib.json settings
SDBlockDevice parameters come from mbed_lib.json if not provided
explicitly.

Introduced an app config file for running filesystem tests.
2020-01-03 15:25:40 +02:00
Qinghao Shi e957b4f0e0 remove BLE from feature key 2020-01-02 18:48:48 +00:00
Qinghao Shi 8a4d5d0a75 bootloader not support K66F, change back to K64F 2020-01-02 17:17:05 +00:00
Qinghao Shi 4bce603b7d replace K66F with DISCO_L475VG_IOT01A in some example to balancing the test workload 2020-01-01 00:32:52 +00:00
Qinghao Shi 5008753a64 add DISCO_L475VG_IOT01A and remove K66F for ble examples 2020-01-01 00:11:41 +00:00
Qinghao Shi 0e8b7cdf83 add extra ble example to complie test 2020-01-01 00:08:11 +00:00
Rajkumar Kanagaraj 6d081eeb70 Fixed the build tools test case failure,incorporated review comments 2019-12-23 03:54:18 -08:00
Rajkumar Kanagaraj 957dca2082 Enabling small C library option and deprecating uARM toolchain
- By default, Mbed OS build tools use standard C library for all supported toolchains.
   It is possible to use smaller C libraries by overriding the "target.default_lib" option
   with "small". This option is only currently supported for the GCC_ARM toolchain.
   This override config option is now extended in the build tool for ARM toolchain.
 - Add configuration option to specify libraries supported for each toolchain per targets.
 - Move __aeabi_assert function from rtos to retarget code so it’s available for bare metal.
 - Use 2 memory region model for ARM toolchain scatter file for the following targets:
   NUCLEO_F207ZG, STM32F411xE, STM32F429xI, NUCLEO_L073RZ, STM32F303xE
 - Add a warning message in the build tools to deprecate uARM toolchain.
 - NewLib-Nano C library is not supporting floating-point and printf with %hhd,%hhu,%hhX,%lld,%llu,%llX
   format specifier so skipping those green tea test cases.
2019-12-19 10:05:11 -08:00
Anna Bridge bef36f5f3e
Merge pull request #12093 from ABOSTM/SUPPORT_NUCLEO_G071RB
TARGET_STM: add support of board NUCLEO_G071RB
2019-12-19 15:26:08 +00:00
Graham Hammond 9cdf5fc31d Notify on configuration exception rather than breaking build 2019-12-16 11:55:26 +00:00
Alexandre Bourdiol 528ac279fe Targets: adapt NUCLEO_G071RB to CMSIS-pack info update 2019-12-13 16:42:40 +01:00
Janne Kiiskila cec05474b2 Update CMSIS-pack info for STM32G-family
Update the CMSIS-pack info to `index.json` in arm_pack_manager -folder.
The update happens via python project.py --update-packs and a modified
version of the cmsis-pack-manager tool, which allows the download of
(most) CMSIS-pack files. The changes for this family ONLY are then updated
to the `index.json` -file.

Mbed OS PR #12093 need this change, as they refer to a target (device_name)
from the updated CMSIS-packs.

Ref: https://github.com/ARMmbed/mbed-os/pull/12093
2019-12-13 16:18:43 +02:00
Alexandre Bourdiol 7c52aa59ec TARGET_STM: add support of board NUCLEO_G071RB 2019-12-12 14:00:04 +01:00
Vikas Katariya 4a84e14634 PSA setup template changes.
Ideally, there is nothing wrong, but it seems to produce AStyle
error when release script runs for PSA Auto-generated files.
Therefore removed the spaces from the problematic line.

Fixes #12084

Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
2019-12-11 15:45:47 +00:00
Martin Kojtal 095e8836d7
Merge pull request #12078 from AriParkkila/cell-ppp-ip
Cellular: Add PPP/IP config flags in CellularInterface.json
2019-12-11 14:24:20 +01:00
Ari Parkkila 95d15fe69a Cellular: Add PPP/IP config flags in CellularInterface.json 2019-12-10 22:39:21 -08:00
Anna Bridge 0c227a0756
Merge pull request #12059 from 0xc0170/JammuKekkonen-remove_hiding_config_errors
Config: fix bootloader config errors - propagate errors
2019-12-10 18:33:59 +00:00
Martin Kojtal d7e0012bc7 tools: regions only if bootloader is supported
We removed catching and passing, we want to know for any misconfiguration if bootloader
is supported. Regions should check if bootloader is supported. In case not, just return.
Otherwise we catch any error.

This should help us to uncover missing regions or other config error (in case bootloader
is enabled via bootloader_supported set to true).
2019-12-10 14:09:29 +00:00
Jammu Kekkonen 5ec7a0b625 Remove hiding of config errors related to RAM and ROM regions handling.
Currently any misconfiguration of, for example, bootloader feature will cause the
build system to just silently drop it and continue building which can lead to
completed builds of something the user didn't want to build in worst case and
failing builds after compilation (=wasted time) in the best.
2019-12-10 14:09:28 +00:00
Antti Kauppila 0f861a1e40 APN lookup fix
tools folder had a reference to ppp-cell-iface.apn-lookup which is removed.
This commit removes the reference to non-existing configuration
2019-12-09 15:29:13 +02:00
Martin Kojtal 412a9317de
Merge pull request #12017 from VeijoPesonen/remove_nvstore
NVStore: already deprecated implementation removed
2019-12-05 09:10:30 +01:00
Martin Kojtal 2cf56b8f6d
Merge pull request #11891 from hugueskamba/hk-enable-minimal-printf-in-tools
minimal-printf: Enable using a target configuration parameter
2019-12-04 10:14:54 +01:00
Kevin Bracey ea2ec8d4f6 GCC: remove -fno-delete-null-pointer-checks
For GCC we're being cautious by passing the
`-fno-delete-null-pointer-checks`. This option prevents some
optimisation opportunities, so removing it can reduce code size.

One particular optimisation loss occurs in `Callback` where a test
similar to this occurs:

    extern void myfunc();

    inline void foo(void (*fnptr)())
    {
        if (fnptr) {
            do A;
        } else {
            do B;
        }
    };

    foo(myfunc);

With `-fno-delete-null-pointer-checks`, the compiler does not assume
that `&myfunc` is non-null, and inserts the "null check" - seeing if the
address is 0. But performing that test of the address is incorrect
anyway - if myfunc actually could be at address 0, we'd still want to do
A.

Anyway, we do not have an equivalent option enabled for either Clang or
IAR, and we have performed clean-ups avoiding issues with
apparently-null vector tables in Clang already, for example #10534.

Therefore it should(TM) be safe to remove the option for GCC. We do not
have general data or code at address 0, only vectors are likely to be
there, so it does not make sense to be globally restricting code
generation for that.
2019-12-04 09:57:47 +02:00
Veijo Pesonen 060a1c6df7 NVStore: deprecated implementation removed 2019-12-03 15:36:31 +02:00
Hugues Kamba d5aef28145 minimal-printf: Enable using a target configuration parameter 2019-12-03 12:31:51 +00:00
Martin Kojtal 7177d8fefe
Merge pull request #11950 from ABOSTM/DISCO_H747I_TICKLESS
DISCO_H747I: add support of MBED_TICKLESS
2019-11-29 09:48:09 +01:00
Martin Kojtal 57f9a1eea8
Merge pull request #11921 from madchutney/tools/py3-fixes
Updates to tools for Python 3 compatibility
2019-11-27 16:29:50 +01:00
Alexandre Bourdiol 42a0407a56 export: fix IAR definition for dual core STM32 DISCO_H747I 2019-11-27 14:26:09 +01:00
Graham Hammond 23b12f4d1b Add in a couple of missed conversions 2019-11-27 11:08:50 +00:00
Martin Kojtal 27012ff8e7
Merge pull request #10618 from kjbracey-arm/gcc8
Tools: check for GCC 9, rather than 6
2019-11-26 13:11:20 +01:00
Kevin Bracey 5342f0fa00 Tools: check for GCC 9, rather than 6
Planning to update to supporting GCC 9 as found in GNU Tools for Arm
Embedded Processors 9-2019q4-major.

Newer GCC in particular supports ARMv8-M security extensions, and
link-time optimisation - two areas of interest.

Should be no code changes required, but need to change the warning in
the toolchain script.
2019-11-26 11:52:47 +02:00
Kyle Kearney ac8a8a6079 Add target for CY8CPROTO-062S3-4343W 2019-11-25 11:41:39 -08:00
Graham Hammond c223ac99b3 Remove unnecessary change found during over shoulder review 2019-11-25 13:43:58 +00:00
Martin Kojtal e03180d13d
Merge pull request #11865 from maciejbocianski/iar_lto
IAR: Enable linker optimizations for develop/release profile
2019-11-23 18:47:59 +01:00
Graham Hammond 32a9a8b9f6 Minor fixes 2019-11-21 16:27:19 +00:00
Graham Hammond d2b968142d Updates to *.py in 'tools/' for Python 3 2019-11-21 16:06:59 +00:00
Graham Hammond e723571474 Updates to `/tools` for Python 3 compatibility 2019-11-21 15:02:37 +00:00
Maciej Bocianski 683ba969b5 IAR: Enable inline linker optimizations for develop/release profile
- add --inline option to linker flags
  Some routines are so small that they can fit in the space of the
  instruction that calls the routine. Use this option to make the
  linker replace the call of a routine with the body of the routine,
  where applicable.
2019-11-21 09:05:03 +01:00
Qinghao Shi e6fe03f698 TOOLS: fix failed python test 2019-11-20 15:58:37 +00:00
Qinghao Shi 44825560ca TOOLS: enable build greentea test with gcov options 2019-11-20 10:07:12 +00:00
Anna Bridge 71c6b9aca5
Merge pull request #11872 from jussisip/update_examples
Change mbed-os-example-wifi to build only DISCO_L475VG_IOT01A
2019-11-19 17:03:37 +00:00
Jussi Siponen 1c4a5b9d87 Change wifi example to build only DISCO_L475VG_IOT01A
Currently mbed-os-example-blinky and mbed-os-example-wifi are built for each and every target in Mbed OS. This will change that only DISCO_L475VG_IOT01A is built for mbed-os-example-wifi. DISCO_L475VG_IOT01A was chosen as its one of the wi-fi supported boards and having integrated wi-fi.
2019-11-18 13:46:50 +02:00
Martin Kojtal eab1c2e594
Merge pull request #11796 from hugueskamba/hk-add-minimal-console-to-retarget
mbed_retarget: Add a minimal console implementation to provide basic functionalities
2019-11-13 17:11:27 +01:00
Hugues Kamba 051991fafb mbed_retarget: Add a minimal console implementation to provide basic functionalities
The retarget code allocates an array of FileHandle* for console and file
handling (filehandles). A tiny target only needs a console (putc/getc).
There is no need for file handling.

The POSIX layer and the array of FileHandle* is not required for small
targets that only need a console ; this code is optionally compiled
out if the configuration parameter platform.stdio-minimal-console-only is
set to `"true"`.
2019-11-11 15:14:00 +00:00
Vikas Katariya cdb5ebdd6b Documentation update for tools/psa
Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
2019-11-08 14:57:06 +00:00
Vikas Katariya dae119e7ea PSA release script changes.
Since the offline build is made to auto-generate PSA related components
and services for Secure targets, we can change the output directory to
update the files in the respective locations.
TARGET_PSA
  --TARGET_MBED_SPM
    --COMPONENT_SPE
      psa_setup.c
  --TARGET_TFM
    --COMPONENT_SPE
      --inc
	tfm_partition_defs.inc
        tfm_partition_list.inc
        tfm_service_list.inc
        tfm_spm_signal_defs.h
  --services
    --inc
      autogen_sid.h
      mbed_spm_partitions.h

The release script is been modified to commit these files if there are
any changes detected when `--commit` argument is passed.
Cleaning of auto-generated is been removed as it uses the main directory
for its operations, but PSA auto-generation will work if any of the
service and application-based manifests are updated.

Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
2019-11-08 14:57:06 +00:00
Vikas Katariya bd02761136 Remove auto-generation for non-secure PSA targets.
Only generate PSA headers/source related to components and services
when Secure build is initiated during compile time of PSA targets.
Let the Non-secure build rely on the checked-in files already present.

Signed-off-by: Vikas Katariya <Vikas.Katariya@arm.com>
2019-11-08 14:57:06 +00:00
Martin Kojtal 7b6a6d70df
Merge pull request #11833 from jamesbeyond/exp_github
TESTS: turn off blinky log compare test due to example changed
2019-11-08 13:31:26 +01:00
Mark Edgeworth a8fbd59b05 IOTBTOOL-333: Fix SimpleQueue build failure on py3
Build system was using an internal feature of the Pool class that is unavailable
in a py3 system. This would cause an exception if tool execution failed.
Offending code has now been removed
2019-11-06 12:02:16 +00:00
Qinghao Shi 667a416a47 TESTS: turn off blinky log compare test due to example changed 2019-11-06 11:21:21 +00:00
Janne Kiiskila 83daa5052b Update CMSIS pack index json for STM32H7xx family
Manually replaced the existing STM32H7 section and replaced it with the
context of updated `index.json` that pulled in the Keil packs available
today, as of 18th October, 2019.

See related PR; https://github.com/ARMmbed/mbed-os/pull/11707
2019-11-04 17:57:19 +02:00
Martin Kojtal d3fb5fb664
Merge pull request #11475 from jamesbeyond/exp_update
TEST: add atecc608a example to compilation test
2019-11-04 09:50:45 +01:00
Martin Kojtal a927ab8f7c
Merge pull request #11789 from jeromecoutant/PR_STM32H7
STM32H7: code and feature alignment for both NUCLEO and DISCO targets
2019-11-04 09:48:09 +01:00
Qinghao Shi 6d47ec37fb TEST: turn on sub examples build test 2019-11-01 00:06:21 +00:00
Qinghao Shi e4188b6ad7 TEST: update example.json file 2019-11-01 00:01:36 +00:00
Qinghao Shi 38776fbd99 TEST: add atecc608a example to compilation test 2019-10-31 23:57:14 +00:00
jeromecoutant 0c740e7095 STM32H7: update PeripheralPin generation script and pin files accordingly 2019-10-31 14:11:00 +01:00
Mark Edgeworth e7964caf93 IOTBTOOL-377: Fix scatter file include path online 2019-10-30 15:51:08 +00:00
Martin Kojtal df79609cc5
Merge pull request #11675 from jeromecoutant/PR_USB_STEP1
STM32 USB update step 1
2019-10-28 14:06:15 +01:00
Martin Kojtal 5a5b0f620d
Merge pull request #11571 from AriParkkila/OS_THREAD_LIBSPACE_NUM
Allow OS_THREAD_LIBSPACE_NUM as a macro
2019-10-28 11:09:23 +01:00
Martin Kojtal 83c4a80082
Merge pull request #11710 from jamesbeyond/exp_github
Update examples testing scripts
2019-10-28 09:50:36 +01:00
Qinghao Shi a211cf16a9 EXAMPLES: temporarily turn off build for NFC examples 2019-10-25 17:33:27 +01:00
Martin Kojtal 73f52fd201
Merge pull request #11724 from ThunderSoft123/master
iar export for TT_M3HQ and TT_M4G9
2019-10-22 16:26:27 +02:00
panyz0725@thundersoft.com ac09176274 iar export for TT_M3HQ and TT_M4G9 2019-10-22 16:38:59 +08:00
Martin Kojtal 5eeeaca670
Merge pull request #11429 from hugueskamba/hk-no-float-validation
Move script to check for floats and make it Python 2 compatible
2019-10-22 09:34:56 +02:00
Hugues Kamba c712d2f6ee Move script to check for floats and make it Python 2 compatible.
All scripts pertaining to example projects tests should be in the same
directory. The test framework uses Python2 therefore this script also needs
to be Python2 compatible.
2019-10-21 14:05:22 +01:00
jeromecoutant 5340c00965 STM32 gen PeriphPin script update for USB 2019-10-21 14:49:17 +02:00
Qinghao Shi 5100bddc99 EXAMPLES: fix a typo in the path 2019-10-21 12:33:08 +01:00
Martin Kojtal 1dac871523
Merge pull request #11457 from OPpuolitaival/py_params
tools: add silent option to build
2019-10-21 09:19:12 +02:00
Amanda Butler 924787fb0f
Edit README.md
Edit file, mostly for formatting and grammar.
2019-10-18 17:04:32 -05:00
Martin Kojtal 4af05bb370
Merge pull request #11648 from rohfle/target-olimex-stm32e407
OLIMEX_STM32E407_F407ZG: Added new target platform
2019-10-18 16:05:05 +02:00
Qinghao Shi 61c170f5f9 EXAMPLES: remove default build profiles 2019-10-18 12:41:49 +01:00
Qinghao Shi 59a4ad680d EXAMPLES: add README file 2019-10-17 23:06:11 +01:00
toyowata 5389536953 Add bootloader support for Seeed Arch-MAX 2019-10-17 10:05:03 +09:00
Qinghao Shi 52b4c39496 EXAMPLES: temporarily turn off the complie test for sub example 2019-10-17 01:10:24 +01:00
Qinghao Shi 88d5079504 EXAMPLES: update comments and fix bugs 2019-10-17 00:57:15 +01:00
Rohan Fletcher 4a078a9bbe Added Olimex STM32E407 to arm_pack_manager 2019-10-17 11:55:09 +13:00
Qinghao Shi cf02be63ff EXAMPLES: update console output format 2019-10-16 23:46:18 +01:00
Qinghao Shi 6876362689 EXAMPLES: update build_repo function 2019-10-16 18:09:36 +01:00
Qinghao Shi 3f0add7e44 EXAMPLES: update export_repos function 2019-10-16 18:06:24 +01:00
Qinghao Shi 4c5f94075f EXAMPLES: update examples_lib.py
- add logging function
 - update clone function
 - update deploy function
 - update source function
 - add symlink function
2019-10-16 18:00:33 +01:00
Qinghao Shi 640ea73a01 EXAMPLES: improve examples.py cli help messages 2019-10-16 17:52:42 +01:00
Qinghao Shi fa86629ec6 EXAMPLES: add list amd Symlink functions 2019-10-16 17:47:36 +01:00
Qinghao Shi 2f6f066f07 EXAMPLES: update examples.json file
- remove "mbed" and "test-repo-source" key
 - add "sub-repo-example" key as an indicator if an example has sub examples
 - add "subs" key to sotre sub examples names
2019-10-16 17:20:05 +01:00
Qinghao Shi f317753a1d EXAMPLES: add test key for remaining examples 2019-10-16 15:56:10 +01:00
Alexandre Bourdiol adcf0e2fa5 DISCO_H747I Dualcore support
Add 2 targets for DISCO_H747I dualcore:
* DISCO_H747I      -> for CM7 core
* DISCO_H747I_CM4  -> for CM4 core

Current restrictions:
* TICKLESS deactivated
* DeepSleep not supported (DeepSleep wrapped to sleep)

Warning: use of the same IP (example I2C1) by both core at the same time is not prevented,
but is strongly not recommended.
Some Hardware Semaphore are use for common IP, to manage concurrent access by both cores: Flash, GPIO, RCC.

Warning: Drag and drop of binary to DISCO_H747I will flash CM7.
         In order to flash CM4, one can use STM32 CubeProgrammer tool.
2019-10-14 18:02:57 +02:00
Cruz Monrreal II 70ee402340 Fixed Travis CI issue where jobs were/are getting stalled while fetching packages.
Something on Travis CI's side has changed such that invoking the 'wait' command within a script attempts to wait on some other jobs in addition to those spawned within the CI job.

Workaround is to explicitly collect the PIDs for processes spawned within the script and only wait on those.
2019-10-11 16:06:01 -05:00
Anna Bridge 97e11cc781
Merge pull request #11176 from OpenNuvoton/nuvoton_m252kg
Support Nuvoton target NUMAKER_M252KG
2019-10-11 14:33:06 +01:00
Anna Bridge a65718dab2
Merge pull request #11638 from JuhPuur/imgtool_python3_fix
Change imgtool lib import to relative import
2019-10-08 10:37:39 +01:00
Anna Bridge f1295b9aa7
Merge pull request #11573 from felser/add_413_dragonfly
Add 413 dragonfly
2019-10-07 16:48:07 +01:00
Juhani Puurula bdaa38c1bb Change imgtool lib import to relative import 2019-10-03 12:12:43 +03:00
Ben Cooke dd778c4126 Add MTS_DRAGONFLY_F413RH platform to mbed-os 2019-09-30 13:50:40 -05:00
Chun-Chieh Li b478a19895 [M252KG] Add missing 'sectors' into arm_pack_manager/index.json 2019-09-27 17:45:57 +08:00
Ari Parkkila ed4b948d8e Allow OS_THREAD_LIBSPACE_NUM as a macro 2019-09-26 04:33:53 -07:00
Martin Kojtal a5aa820f25
Merge pull request #11489 from OPpuolitaival/build_jobs
Examples.py add --jobs argument
2019-09-20 14:13:11 +02:00
Martin Kojtal 4f7339af78
Merge pull request #11456 from ARMmbed/349-spaces_in_path
IOTBTOOL-349: Correct handling of spaces in project name.
2019-09-19 10:37:31 +02:00
Martin Kojtal 030e3e1f72
Merge pull request #11498 from 0xc0170/fix_iar
iar export: fix invalid optmization flag - remove from misc
2019-09-19 09:33:29 +02:00
Olli-Pekka Puolitaival ff2778f5f6 Fix documentation 2019-09-17 15:26:06 +03:00
Martin Kojtal 2f1f219d73 iar export: fix invalid optmization flag - remove from misc
The exported project uses project file to set optimization, we can provide this
via misc options. It was recently changed to Ol and this was not handled in our
scripts.
2019-09-17 13:21:27 +01:00
Martin Kojtal ffbd92c5a9
Merge pull request #11288 from OpenNuvoton/nuvoton_m2351_comb-sec-nonsec
M2351: Enhance secure/non-secure image build flow for non-PSA target
2019-09-17 12:18:16 +02:00
ccli8 82f60d913e
Remove 'PSA' check from test spec conversion
This is unnecessary because all TZ targets must follow the naming rule: PLATFORM_[NPSA_]S/NS
2019-09-16 23:25:44 +08:00
Olli-Pekka Puolitaival 350c0eff22 Make able to define build jobs amount when building examples 2019-09-16 13:30:24 +03:00
Chun-Chieh Li ad5e94a9c6 Convert TZ target name 'NPSA' to test spec platform name
1.  All TZ targets should have name pattern: PLATFORM_[PSA_/NPSA_]S/NS, where:
    (1) 'PLATFORM' for test spec platform name
    (2) 'PSA/NPSA' for PSA/non-PSA targets. Defaults to PSA target on absent.
    (3) 'S'/'NS' for secure/non-secure targets
2. Secure target may participate in Greentea, so its name is also truncated here.
2019-09-16 11:59:13 +08:00
Chun-Chieh Li 0ed126ba79 M2351: Add post-binary hook into uvision whitelist
This is necessary for exporting M2351 uvision project.
2019-09-16 11:02:16 +08:00
Chun-Chieh Li e9e85f5307 M2351: Support non-PSA secure/non-secure combined build
Support secure/non-secure combined build for non-PSA target:
1.  In secure post-build, deliver built secure image to TARGET_NU_PREBUILD_SECURE
    directory which is to combine later.
2.  In non-secure post-build, merge non-secure image with secure image saved in
    TARGET_NU_PREBUILD_SECURE directory.
3.  In non-secure post-build, user can also drop pre-built secure image saved in
    TARGET_NU_PREBUILD_SECURE directory and provide its own by adding the line below
    in mbed_app.json:
    "target.extra_labels_remove": ["NU_PREBUILD_SECURE"]
2019-09-16 10:37:08 +08:00
Martin Kojtal 01bb1b94d7
Merge pull request #11467 from OpenNuvoton/nuvoton_conv_tz_test_spec
Convert TZ target name to test spec platform name
2019-09-12 12:35:12 +02:00
Martin Kojtal dc02e0bce7
Merge pull request #11464 from jamesbeyond/exp_update
TEST: update compare log file name
2019-09-12 11:09:04 +02:00
Martin Kojtal 306e144146
Merge pull request #11445 from matthew-macovsky-cypress/pr/makefile-fix
Add catch-all rule to makefile template
2019-09-12 07:31:28 +02:00
Chun-Chieh Li a489a7313b Convert TZ target name to test spec platform name
1.  All TZ targets should have name pattern: PLATFORM_[PSA_]S/NS, where:
    (1) 'PLATFORM' for test spec platform name
    (2) 'PSA' is optional to distinguish PSA/non-PSA targets, especially when
        both PSA/non-PSA targets are supported
    (3) 'S'/'NS' for secure/non-secure targets
2. Secure target may participate in Greentea, so its name is also truncated here.
2019-09-12 11:29:26 +08:00
Qinghao Shi 7203154566 TEST: update compare log file name 2019-09-11 19:01:48 +01:00
Olli-Pekka Puolitaival a53cdcd188 Remove --extra-verbose-notifications because not in use anywhere 2019-09-11 14:37:06 +03:00
Olli-Pekka Puolitaival ed8d49dfb5 Add silent option in test.py also 2019-09-11 14:32:38 +03:00
Mark Edgeworth 6d7089eb35 Review changes 2019-09-11 12:27:46 +01:00
Mark Edgeworth 65d6015179
Update tools/toolchains/mbed_toolchain.py
Co-Authored-By: Graham Hammond <graham.hammond@arm.com>
2019-09-11 12:18:50 +01:00
Olli-Pekka Puolitaival daddc7dcb8 Remove not used code lines 2019-09-11 14:06:35 +03:00
Mark Edgeworth 6f37fd91a8 IOTBTOOL-349: Correct handling of spaces in project name.
This fixes an issue where a space in the name of a project would cause a link failure
2019-09-11 11:22:56 +01:00
Martin Kojtal 0e04d74c80
Merge pull request #11254 from jh228/patch-1
Update gcc.py for preprocessing in linker script
2019-09-10 19:41:09 +02:00
Martin Kojtal 0f1962e86d
Merge pull request #11437 from hugueskamba/hk-harmonize-doxygen-grouping
Harmonise Doxygen comments in drivers, events, platform and rtos dirs
2019-09-10 10:56:41 +02:00
Matthew Macovsky 4f83141b90 Add catch-all rule to makefile template 2019-09-09 19:13:43 +01:00
Hugues Kamba 5933dec3b7 Harmonise Doxygen comments in drivers, events, platform and rtos dirs
When a Doxygen group has been defined (created), all its needed to add
documentation to that group is `\addtogroup`. Since all the information
about the group is preserved, it is not necessary to mention the group
hierarchy again with `\ingroup`. This PR removes unnecessary Doxygen lines
across the `drivers`, `events`, `platform` and `rtos` directories.

It also ensures that new groups are created with `\defgroup` once and
referenced with `\addtogroup` whenever documentation needs to be added to
an existing group.
2019-09-09 10:59:51 +01:00
Martin Kojtal 5cbede4a0b
Merge pull request #11438 from hugueskamba/hk-correct-doxy-spellchecker-error-msg
Correct doxy-spellchecker error message
2019-09-09 11:13:50 +02:00
Martin Kojtal 458523219a
Merge pull request #11006 from linlingao/pr10692
Introduce an Mbed config to enable XIP
2019-09-09 11:09:21 +02:00
Hugues Kamba 074b379439 Correct doxy-spellchecker error message 2019-09-07 21:00:21 +01:00
Martin Kojtal 5f4698f81f
Merge pull request #11382 from OPpuolitaival/very_verbose
Use very verbose to see more details in case of problem
2019-09-05 09:44:33 +02:00
Martin Kojtal a924c02a9a
Merge pull request #11314 from hugueskamba/hk-iotcore-1279-executable_analysis_tools
Add executable analaysis tool for floating point checks.
2019-09-04 11:53:23 +02:00
Lin Gao 2a78a9ba13 Refactored code to not use macro. Created config xip-enable 2019-09-03 11:54:14 -05:00
Lin Gao ea032bebc4 Add XIP capability, enable QSPI. XIP can be enable by adding macro XIP_ENABLE in mbed_app.json. It's disabled by default. 2019-09-03 11:54:11 -05:00
Martin Kojtal e001216b55
Merge pull request #11315 from Patater/psa-crypto-api-1.0b3
Update Mbed OS for PSA Crypto API 1.0b3
2019-09-03 09:20:15 +02:00
Jaeden Amero 5c81d19bc1 psa: Document a test partition creation gotcha
The release script must be run from mbed-os root, otherwise the test
partition binaries will not be created. Add a note in the tool's README
to make this clear and hopefully help save someone some debugging time
in the future.
2019-09-02 17:10:59 +01:00
Martin Kojtal 940d3fdf60
Merge pull request #11291 from LMESTM/STM32_OSPI_QSPI_fallback_support
Stm32 ospi qspi fallback support
2019-09-02 12:26:55 +02:00
Roman Okhrimenko c249bf97c2 Updated target files structure to align with the following BSP PR. 2019-08-30 15:10:19 +03:00
Roman Okhrimenko bfe1d04ba2 Removed import of version specific python modules, improved imports organization in PSOC6.py, fixed per PR comments 2019-08-30 15:10:19 +03:00
Roman Okhrimenko d289b967f7 Added check for python version before calling post build action. Fixed compilation for Python 2.7. 2019-08-30 15:10:19 +03:00
Roman Okhrimenko 515555e7ba Removed scripts for provisiongs from repository, made fixes per PR comments, adjusted Readme.md 2019-08-30 15:10:19 +03:00
Roman Okhrimenko ed9995e06c PSOC6_SB: Initial commit to add CY8CPROTO_064_SB to mbed-os sources. 2019-08-30 15:10:18 +03:00
Hugues Kamba 487bbe6323 Add executable analaysis tool for floating point checks. 2019-08-30 11:26:30 +01:00
Olli-Pekka Puolitaival aebda11adf Use very verbose to see more details in case of problem 2019-08-30 09:14:06 +03:00
Martin Kojtal ea582f3e11
Merge pull request #11235 from evedon/mprintf-rework
minimal-printf should not bypass the retargetting code
2019-08-29 18:49:01 +02:00
Martin Kojtal 159ee4583a
Merge pull request #11225 from kjbracey-arm/µvision528c++14
µVision export: Handle more C++ language standards
2019-08-29 16:31:45 +02:00
Evelyne Donnaes d9f32639eb Changed minimal-printf to call fputc so that it does not bypass the retargetting code
Removed minimal-printf-console-output
2019-08-29 11:30:34 +01:00
jeromecoutant 64b11c5322 STM32 PeripheralPins generation script: add OSPI parsing 2019-08-29 12:11:58 +02:00
Mika Leppänen e3f247793a Added PPP directory to astyle ignore and added some spellchecker ignore words 2019-08-20 13:37:12 +03:00
Martin Kojtal b2b1ac1977
Merge pull request #11212 from chrissnow/uVison_opt_level
Change default optimisation level to O1 when exporting to uVision
2019-08-20 09:54:21 +02:00
Martin Kojtal 101ae73b87
Merge pull request #11063 from linlingao/f_cc3220sf_launchxl
Add CC3220SF_Launchxl to Mbed OS
2019-08-19 12:08:11 +02:00
jh228 f3885fd89a
Update gcc.py 2019-08-19 15:09:04 +09:00
jh228 71466f8111
Update gcc.py for preprocessing in linker script
To fix https://github.com/ARMmbed/mbed-os/issues/11214, we need this update. :-)
2019-08-19 09:52:44 +09:00
Olli-Pekka Puolitaival ba26bd9cde Python3 fixes 2019-08-16 13:51:21 +03:00
Anna Bridge 3ede2a9a60
Merge pull request #11126 from teetak01/optimize-debug-profile
Optimize debug profile flags for size
2019-08-15 12:53:32 +01:00
Olli-Pekka Puolitaival aa1d16e871 Python3 fixes 2019-08-15 10:06:41 +03:00
Kevin Bracey c3a71eb23b µVision export: Handle more C++ language standards
µVision 5.28a now has options for gnu++14, c++14 and c++17, so we can
use them rather than falling back to c++14 or gnu++11.

This does mean that an export of current master, which uses gnu++14,
will now require version 5.28a. I have not tested what happens if
5.27 is given a project file with these new option numbers.

However, export of current master is broken for 5.27 anyway, as the
fallback to gnu++11 means it fails to compile the C++14 constructs
now in the codebase.

Fixes #11217, as long as users update µVision too.
2019-08-14 17:13:03 +03:00
Evelyne Donnaes 5eaa922ce1 Moved minimal-printf.json to a subdirectory 2019-08-13 12:59:45 +01:00
Evelyne Donnaes 7954ad3dd9 Revert commit 3010aaa253 (diff-1a477b054b847ec75ac3bf22194a3335) that modified template for partial profile 2019-08-13 12:57:55 +01:00
Chris Snow a430b6a469 Change default optimisation level to O1 when exporting to uVision 2019-08-13 12:50:51 +01:00
Martin Kojtal 4c1f178146
Merge pull request #11171 from OpenNuvoton/nuvoton_arm_pack
Add Nuvoton M261 sub-family into arm_pack_manager
2019-08-13 10:04:24 +02:00
Martin Kojtal fafd0a5480
Merge pull request #11051 from evedon/minimal-printf
Minimal printf addition
2019-08-09 09:52:36 +01:00
cyliangtw 9667c215d8 Add Nuvoton M261 sub-family 2019-08-06 20:13:37 +08:00
Evelyne Donnaes d6b197a98b Removed no-builtin-printf for uARM 2019-08-05 16:01:34 +01:00
Hugues Kamba 2a9207bbe4 Address comments on workaround for Mbed OS 2 CI build after Public (#11114)
* Modify compilation API to provide a list of paths to exclude from the build.
* `_exclude_files_from_build` becomes a static method
* Replace ternary expression with simple  `if/else` statement
* Make unit test case for dirs exclusion independent of system files
2019-08-02 12:32:40 +01:00
George Psimenos 3b23edb78c Fix CI for branch feature-public-headers (#11093)
* Fix rtos include path in NRFCordioHCIDriver
* Flatten USB driver directory structure
* Add missing include for us_ticker
* Add more missing includes for us_ticker
* Fix mbed_hal_fpga_ci_test_shield/uart test
* Fix bare-metal build
* Fix Watchdog UNITTEST
* Fix Mbed OS 2 build for Public/Internal headers relocating
2019-08-02 12:32:40 +01:00
George Psimenos df5baf6031 USB public APIs cleanup (#11034)
The contents of the usb directory were moved to appropriate locations and the usb directory removed.

* Public USB headers moved under drivers/
* Internal USB headers moved under drivers/internal/
* USB Source code moved under drivers/source/usb/
* Moved usb/device/hal/ under hal/usb/
* Moved usb/device/USBPhy/ under hal/usb/
* Merged usb/device/targets/ into targets/
* Separated public and private USB API documentation under Doxygen groups drivers-public-api and drivers-internal-api.
2019-08-02 12:23:47 +01:00
Hugues Kamba bfa1b4dd84 Drivers/Events/RTOS Public and internal APIs cleanup (#10955)
Separate drivers, events, and rtos internal APIs from public APIs.

* Move source files to source subdirs
* Move internal headers to internal subdirs
* Add Doxygen comments for documenting internal and public APIs
* Remove source code from header files in order to remove include pre-processor directives
that included header files not directly used by said header files
* Explicitly include header files instead of implicit inclusions via third-party header files.

Release Notes

This will break user code that was using an internal API as the internal header files have been moved.
This will only break if the user was including the header file using a namespace (i.e #include "foo/bar.h" instead of #include "bar.h"
2019-08-02 12:23:47 +01:00
Evelyne Donnaes 050a338771 Addressed review comments, in particular:
* Fixed wrapper functions for IAR
* Fixed and renamed profile to minimal-printf.json
* Moved minimal-printf under platform
* Removed minimal-printf/mbed_lib.json
* Modified exporter template to work with partial profile
* Prevented optimization of printf to avoid compiler function substitution
2019-08-01 12:42:24 +01:00
Evelyne Donnaes 65ab34695e Integrated minimal-printf in mbed-os 2019-08-01 12:41:59 +01:00
Teemu Takaluoma 5b8b2c95b1 Debug-profile: Use -Og level for GCC_ARM optimization
This brings massive ROM savings, and allows to use debug builds
also with larger applications (for. ex. Mesh stack).

Diff. for mbed-cloud-client-example with Wi-Sun stack.

Total Static RAM memory (data + bss): 85120(-216) bytes
Total Flash memory (text + data): 592668(-329296) bytes
2019-07-31 07:51:33 +03:00
Teemu Takaluoma f30703af16 Debug profile: Change IAR profile to use -Ol instead of -On
Total Static RAM memory (data + bss): 71179(+0) bytes
Total Flash memory (text + data): 665394(-44680) bytes
2019-07-30 09:45:07 +03:00
Teemu Takaluoma 985f981b83 Debug profile: Change ARM and uARM profile to size-optimized 2019-07-30 09:44:49 +03:00
Seppo Takalo 6dfbe54389
Merge pull request #11069 from qVlad/add-sectors-for-stm32F446ZE
add defines sectors for STM32F446ZE
2019-07-23 12:02:18 +03:00
Seppo Takalo 25198ba056
Merge pull request #11070 from kjbracey-arm/iar_exception_warning
IAR: Suppress "exceptions are disabled" warning
2019-07-23 11:42:15 +03:00
Seppo Takalo a0e88ad330
Merge pull request #11059 from desowin/dwarf
GCC ARM: Increase develop and release debug level
2019-07-22 15:31:24 +03:00
Kevin Bracey 0bb4c050b7 SingletonPtr: API extensions, make constexpr
* Adjust definition to make the default constructor `constexpr`.
  This permits use in classes that want lazy initialization and their
  own `constexpr` constructor, such as `mstd::mutex`.

* Add `get_no_init()` method to allow an explicit optimisation for
  paths that know they won be the first call (such as
  `mstd::mutex::unlock`).

* Add `destroy()` method to permit destruction of the contained object.
  (`SingletonPtr`'s destructor does not call its destructor - a cheat
  to omit destructors of static objects). Needed if using in a class
  that needs proper destruction.
2019-07-18 20:02:04 +03:00
Kevin Bracey 2078575bae IAR: Suppress "exceptions are disabled" warning
IAR compiler is outputting lots of warnings about exceptions being
disabled whenever it sees a "noexcept" keyword. We know, we know.
2019-07-18 19:59:41 +03:00
Vladislav Talanov f548388566 add defines sectors for STM32F446ZE 2019-07-18 18:07:12 +03:00
Tomasz Moń 4e992cd901 GCC ARM: Increase develop and release debug level
Do not specify the debug level for develop and release profiles. Instead
rely on the compiler to choose sensible default (-g2). Note that -g1 is
minimal debugging information and does not include structure definitions
which quite heavily reduces debugging experience.

For develop and release profiles this results in elf file containing
structure definitions. This does not impact debug profile as it already
did use -g3 which is the highest debug level.

Compatible debuggers (eg. gdb, SEGGER Ozone) can use the extra information
to provide better debugging experience. For example, when compiled .elf is
loaded in gdb, this change makes it trivial to access internal RTX data.

Without this change on develop profile:
  (gdb) print osRtxInfo.thread.run
  'osRtxInfo' has unknown type; cast it to its declared type

With this change on develop profile:
  (gdb) print osRtxInfo.thread.run
  $1 = {curr = 0x20014F04, next = 0x20014F04}
2019-07-18 12:03:13 +02:00
Kevin Bracey 6fc767dc71 Make tools cope with no-extension headers
Treat files with no extension as headers, if they are in the cxxsupport
folder.
2019-07-18 11:50:13 +03:00
Kevin Bracey e5a3f976c2 Add TOOLCHAIN_ARMC5 label
We have some files that are needed for ARMC5 only.
2019-07-18 11:50:13 +03:00
Lin Gao 387bb666f4 Added CC3220 related changes to tools 2019-07-17 14:18:19 -05:00
Volodymyr Medvid 2524a67c38 Merge remote-tracking branch 'ARMmbed/master' into pr/psoc6-hal 2019-07-11 10:19:03 +01:00
Volodymyr Medvid 140b72d3ed Merge remote-tracking branch 'ARMmbed/master' into pr/psoc6-hal 2019-07-10 10:54:14 +01:00
Mark Edgeworth c8f33b1e45 Removing absolute paths to compiler executables
VSCode exporter was generating a launch config that contained absolute paths to the
compiler executables. It makes more sense to use the executables that are
installed into the system PATH.
2019-07-09 11:06:03 +01:00
Arto Kinnunen 1264660314
Merge pull request #10972 from 0xc0170/test_target
add new target IM880B
2019-07-08 16:34:36 +03:00
Volodymyr Medvid 5cc66282dd PSOC6: remove PSA targets 2019-07-08 14:49:26 +03:00