Skip to content

STM32: allow HS USB endpoints and increase USB OTG_HS endpoints number #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 427 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
427 commits
Select commit Hold shift + click to select a range
eb38298
Merge pull request #13745 from hugueskamba/hk_evaluate_code_fix
0xc0170 Oct 16, 2020
4f95500
STM32G4: target directoty restructuration
jeromecoutant Oct 16, 2020
cd99f64
STM32G4: cleanup
jeromecoutant Oct 16, 2020
759a817
STM32G4: STM32Cube_FW_G4_V1.3.0
jeromecoutant Oct 16, 2020
4b999b3
STM32L5: STM32Cube_FW_L5_V1.3.0
jeromecoutant Oct 1, 2020
00aee87
Merge pull request #13654 from balajicyp/topic/wep_security_fix_testc…
0xc0170 Oct 19, 2020
ed73a48
Merge pull request #13733 from artokin/enable_nanostack_dNS_cache_usa…
0xc0170 Oct 19, 2020
e439ad9
Merge pull request #13778 from jeromecoutant/PR_G4-130
0xc0170 Oct 19, 2020
61d88dd
scancode: fix SPDX check - only warning
0xc0170 Oct 19, 2020
b242be1
Merge pull request #13734 from AGlass0fMilk/chainable-event-handler
0xc0170 Oct 19, 2020
a9c77a9
Merge pull request #13782 from 0xc0170/fix_travis_scancode_spdx
0xc0170 Oct 19, 2020
bf90b77
Merge pull request #13697 from jeromecoutant/PR_L5_130
0xc0170 Oct 19, 2020
7c214cb
STM32WB: STM32Cube_FW_WB_V1.8.0
jeromecoutant Sep 23, 2020
5eeced1
travis: ignore spdx reports
0xc0170 Oct 19, 2020
0931709
replace current bool state combination for keeping track of ble scann…
paul-szczepanek-arm Oct 16, 2020
2c90611
missing host resolution for rpa when extended advertising is available
paul-szczepanek-arm Oct 16, 2020
934e111
fix advertising report not terminating early for unwanted reports
paul-szczepanek-arm Oct 19, 2020
c6997bc
Merge pull request #13771 from saheerb/split_examples
0xc0170 Oct 19, 2020
8d9dabe
Merge pull request #13659 from jeromecoutant/PR_WB_1_8
0xc0170 Oct 19, 2020
a519a2f
STM32L0: directory restructuration
jeromecoutant Oct 16, 2020
d9cdd31
STM32L0: back to updated files
jeromecoutant Sep 24, 2020
a62736b
STM32L0: STM32Cube_FW_L0_V1.11.3
jeromecoutant Sep 25, 2020
542b725
BLE: Fix incorrect index used to access attsCb.prepWriteQueue in Cordio
pan- Oct 19, 2020
3cab377
BLE: Fix index access to attcCb.onDeck in Cordio.
pan- Oct 19, 2020
d6a2f79
Merge pull request #13669 from jeromecoutant/PR_L0_1_11_3
0xc0170 Oct 19, 2020
0bb9eb6
Update Mbed CoAP to v5.1.8
Oct 20, 2020
13df49e
STM32H7: STM32Cube_FW_H7_V1.8.0
jeromecoutant Sep 29, 2020
f0b7e8b
STM32H7: update target specific files with Cube-1.8
jeromecoutant Sep 29, 2020
e322870
STM32H7: FLASH update
jeromecoutant Oct 2, 2020
2ccf534
STM32H7: fix ADC internal channels
jeromecoutant Oct 8, 2020
3f843d5
STM32H7: readme update
jeromecoutant Oct 7, 2020
3b14c47
STM32L4 : directory retructuration
jeromecoutant Oct 15, 2020
dcc066d
STM32L4 : alignment with STM32Cube_FW_L4_V1.14.0
jeromecoutant Oct 7, 2020
95f8b2d
STM32L4 : common file factorisation
jeromecoutant Oct 7, 2020
81f919b
STM32L4 : license header alignment
jeromecoutant Oct 7, 2020
c8711b6
STM32L4 : targets.json update introducing subfamily level
jeromecoutant Oct 7, 2020
3c6ba98
STM32L4: STM32Cube_FW_L4_V1.16.0
jeromecoutant Oct 6, 2020
de5da38
Merge pull request #13741 from jeromecoutant/PR_L4_1160
0xc0170 Oct 20, 2020
1b663a3
Merge pull request #13779 from paul-szczepanek-arm/fix-scan-state
0xc0170 Oct 20, 2020
5d60e65
Merge pull request #13787 from ristohuhtala/update-mbed-coap-master
0xc0170 Oct 20, 2020
27d1050
Merge pull request #13785 from pan-/ble-fix-prep-write-queue-access
0xc0170 Oct 20, 2020
d418667
Merge pull request #13690 from jeromecoutant/PR_H7_180
0xc0170 Oct 20, 2020
1e2aacd
STM32H7: create MCU_STM32H7A3xIQ
jeromecoutant Sep 29, 2020
04c8ff9
STM32H7: new target NUCLEO_H7A3ZI_Q
jeromecoutant Sep 29, 2020
3791822
STM32H7 readme update
jeromecoutant Oct 7, 2020
fece41d
Merge pull request #13713 from jeromecoutant/PR_NUCLEO_H7A3
0xc0170 Oct 20, 2020
8ef0a43
Update Mbed version block
Oct 20, 2020
7824340
Update README.md to remove WEP test case with NULL data
balajicyp Oct 21, 2020
2630091
BLE: Prevent code generation from GattClient when not used.
pan- Oct 23, 2020
2e859cd
BLE: Conditionally compile PAL depending on the feature selected.
pan- Oct 23, 2020
6bfe651
Remove erroneous character from SPDX identifer
harrisonmutai-arm Oct 23, 2020
6427b2a
remove missing examples
paul-szczepanek-arm Oct 23, 2020
557eac0
BLE: Conditional compilation of the security manager
pan- Oct 23, 2020
f3031da
BLE: Disable handling of BT5.2 event in the controller.
pan- Oct 23, 2020
5283c4f
Merge pull request #13810 from paul-szczepanek-arm/fix-example-list
0xc0170 Oct 26, 2020
78c8d84
Merge pull request #13808 from harmut01/license_refactor
0xc0170 Oct 27, 2020
45ac79a
STM32H7: define RCC_LSE_BYPASS to allow using PC_15 as gpio
pennam Oct 12, 2020
24c4f30
Merge pull request #13796 from balajicyp/topic/wep_security_fix_test_…
0xc0170 Oct 27, 2020
f9e62fe
Merge pull request #13692 from RyoheiHagimoto/gr_i2c_slave
0xc0170 Oct 27, 2020
f57f265
Merge pull request #13747 from RyoheiHagimoto/modify_renesas_deepsleep
0xc0170 Oct 27, 2020
87ea47f
BLE: Refactor Gap::reset to make it more readable
pan- Oct 27, 2020
ad37f56
BLE: Set host default version to 5.1
pan- Oct 27, 2020
9e509f4
fix incorrect parameter check in periodic advertising
paul-szczepanek-arm Oct 27, 2020
34c75ff
fix wrong advertising set handle being passed to handler
paul-szczepanek-arm Oct 28, 2020
440aea6
fix ble exemple names
paul-szczepanek-arm Oct 28, 2020
2f87d59
Merge pull request #13828 from paul-szczepanek-arm/fix-example-list-2
0xc0170 Oct 29, 2020
0bb4ff0
cmsis: remove math header file
0xc0170 Nov 2, 2020
6db63e4
Merge pull request #13822 from paul-szczepanek-arm/fix-preiod
0xc0170 Nov 2, 2020
eb6b53a
Merge pull request #13753 from AGlass0fMilk/rm-nordic-bsp
0xc0170 Nov 2, 2020
798c3c5
Merge pull request #13817 from facchinm/patch_lse_bypass
0xc0170 Nov 2, 2020
df05389
Fix linking issue #13793 when using -O0 compiler optimization in ARMC…
Nov 2, 2020
c5bae34
Merge pull request #13843 from marcelbrucker/fix_linking_issue
0xc0170 Nov 3, 2020
cdc2d45
Merge pull request #13839 from 0xc0170/fix-cmsis-math
0xc0170 Nov 3, 2020
097adb5
STM32 usb: fixing missing header file
0xc0170 Nov 3, 2020
f661c23
fix compile error
heuisam Nov 4, 2020
73d1c63
STM32 SERIAL: free RTS/CTS pins
jeromecoutant Oct 14, 2020
50fc0c5
Merge pull request #13853 from heuisam/master
0xc0170 Nov 5, 2020
61bed01
Merge pull request #13846 from 0xc0170/fix-stm32-usb-header
0xc0170 Nov 5, 2020
c877365
Merge pull request #13862 from jeromecoutant/PR_RTS_FREE
0xc0170 Nov 5, 2020
77638f9
Merge pull request #13698 from boraozgen/bugfix/spif-read-dummy-bytes
0xc0170 Nov 5, 2020
c29a2e2
Merge pull request #13811 from pan-/ble-conditional-compilation
0xc0170 Nov 6, 2020
52dd933
CMake: Add design document
hugueskamba Jul 20, 2020
f4e4012
CMake: Intentionally untrack CMake generated files
hugueskamba Jul 20, 2020
6dc5f5a
CMake: Add CMake scripts
hugueskamba Jul 20, 2020
d836489
CMake: Add support for cmsis dir
hugueskamba Jul 20, 2020
311b2ca
CMake: Add support for components dir
hugueskamba Jul 20, 2020
59a7d77
CMake: Add support for connectivity dir
hugueskamba Jul 20, 2020
8408289
CMake: Add support for drivers dir
hugueskamba Jul 20, 2020
a63fa60
CMake: Add support for events dir
hugueskamba Jul 20, 2020
1d6f86f
CMake: Add support for features dir
hugueskamba Jul 20, 2020
8f9bf40
CMake: Add support for hal dir
hugueskamba Jul 20, 2020
929adbe
CMake: Add support for platform dir
hugueskamba Jul 20, 2020
5c453e5
CMake: Add support for rtos dir
hugueskamba Jul 20, 2020
a08be8c
CMake: Add support for storage dir
hugueskamba Jul 20, 2020
70d9229
CMake: Add support for K64F target
hugueskamba Jul 20, 2020
8a74bf1
CMake: Add support for NRF52840_DK target
hugueskamba Jul 20, 2020
30e8886
CMake: Add support for DISCO_L475VG_IOT01A target
hugueskamba Jul 20, 2020
53d7128
CMake: Add support for WIO_3G target
hugueskamba Jul 20, 2020
5709dd2
CMake: Add Travis script to run a basic CI check for PRs
hugueskamba Jul 20, 2020
554a5d3
CMake: Fix failure due to restructure of rtos and ppp directories
hugueskamba Jul 21, 2020
b78ef7a
CMake: Fix CI error due to dir restruct of rtos and storage dirs
hugueskamba Jul 22, 2020
71c48e0
CMake: remove version number from ARM toolchain
hugueskamba Jul 20, 2020
6b5ef8a
cmake: Stringify develop.cmake
urutva Jul 21, 2020
915d552
cmake: Re-order cmake script inclusions
urutva Jul 23, 2020
f18622e
cmake: Fix arm compiler build failures
urutva Jul 23, 2020
10f4212
cmake: Using Arm compiler from Mbed Studio
urutva Jul 21, 2020
f0072e7
CMake design doc: update to the latest mbed-tools updates
0xc0170 Jul 21, 2020
8dabb28
cmake: Remove IAR support
Patater Jul 23, 2020
bd45acb
CMake: Fix failure due to kvstore and cellular dirs changes
hugueskamba Jul 23, 2020
b03e94f
CMake env: fix copyright
0xc0170 Jul 23, 2020
e2f38ab
CMake env: remove components, needs design first
0xc0170 Jul 23, 2020
08eb1e3
CMake: fix missing copyright
0xc0170 Jul 23, 2020
1bb6be3
CMake util: fix copyright
0xc0170 Jul 23, 2020
7dd7337
CMake: Remove unsupported ARM toolchain support
hugueskamba Jul 23, 2020
debffb6
cmake: Armclang - Fix assembler and linker flags
urutva Jul 23, 2020
e172eb3
CMake: Use modern CMake techniques to set toolchain options
hugueskamba Jul 23, 2020
2d1508d
CMake: Ensure targets creation before usage in `target_` functions
hugueskamba Jul 27, 2020
4b13332
CMake: Issue a fatal error if a lower version of CMake is used
hugueskamba Jul 27, 2020
396ddc7
CMake: Fix build due to system_storage and netsocket dir move in master
hugueskamba Jul 27, 2020
0e1770d
Remove gen_config interface library target
rwalton-arm Jul 27, 2020
335dfdd
Add tools generated definitions and properties
rwalton-arm Jul 28, 2020
ecfee28
CMake: move env to toolchain file (#13369)
0xc0170 Jul 29, 2020
8b21238
CMake: Fix failure due to events and netsocket dirs changes
hugueskamba Jul 29, 2020
3952212
Travis cmake: add testing all profiles
0xc0170 Jul 28, 2020
24c79a4
CMake: Fix build failure due to nanostack drivers move
hugueskamba Jul 30, 2020
2efe469
CMake toolchain: set optimization in profiles
0xc0170 Jul 28, 2020
d3d88e3
CMake: set debug optimizations
0xc0170 Jul 28, 2020
5128b02
CMake: set develop optimizations
0xc0170 Jul 28, 2020
67c364d
CMake: set release optimizations
0xc0170 Jul 28, 2020
fa8d9fd
CMake GCC ARM: add -g3 to the common
0xc0170 Jul 30, 2020
c05170f
CMake: Remove app.cmake module
hugueskamba Jul 30, 2020
ef11e06
CMake: Remove add_executable
hugueskamba Jul 30, 2020
06f4e1b
CMake: Break down RTX CMake source file into 2 source files
hugueskamba Jul 31, 2020
100be3d
CMake: Fix ARM toolchain compilation
hugueskamba Jul 31, 2020
1b52415
CMake: Move MBED_STUDIO_ARM_COMPILER to ARM.cmake module
hugueskamba Jul 31, 2020
4af48a3
CMake: Remove MCU core specific option from ARM ASM options
hugueskamba Jul 31, 2020
42cd929
CMake: Fix detection of RTX assembly file
hugueskamba Jul 31, 2020
4f8568c
CMake: using CMAKE_BUILD_TYPE for choosing a profile
0xc0170 Jul 27, 2020
2f89e99
CMake build type: set default Develop profile
0xc0170 Jul 28, 2020
18a1380
CMake profile: fix alignment
0xc0170 Jul 28, 2020
894f8cc
Travis: use build type for cmake
0xc0170 Jul 28, 2020
02c0154
CMake profile: fix comments
0xc0170 Jul 28, 2020
90e5d3a
CMake toolchain: clear flags to be able to overwrite them
0xc0170 Jul 28, 2020
1ebedf2
CMake GCC ARM: use nosys specs for linker
0xc0170 Jul 29, 2020
57f39ae
CMake toolchain: fix options comment
0xc0170 Jul 31, 2020
aac5e80
CMake: Profile comments update
0xc0170 Jul 31, 2020
8b3cec2
Update cmake/toolchain.cmake
0xc0170 Aug 2, 2020
e744208
CMake: Fix build failure due to drivers and lwipstack dirs move
hugueskamba Aug 5, 2020
c876bc1
CMake: Fix build issue due to platform changes
hugueskamba Aug 5, 2020
76fd50a
CMake: Fix access to cellular drivers
hugueskamba Aug 6, 2020
5f53181
CMake: Fix access to usb hal source file
hugueskamba Aug 6, 2020
f1a3d69
CMake: Fix WIO_3G scatter file shebang to work with ARM Compiler 6
hugueskamba Aug 6, 2020
c1fa350
CMake: Minor formatting of top level CMakeLists.txt source file
hugueskamba Aug 6, 2020
c30d925
CMake: Fix build failure due to nanostack dir move
hugueskamba Aug 7, 2020
de3462d
CMake: Remove default build type selection from top level source file
hugueskamba Aug 10, 2020
20e19de
CMake: Fix breakage due to BLE dir move
hugueskamba Aug 10, 2020
400211c
CMake: Do not hard code target in CPU core CMake module
hugueskamba Aug 4, 2020
c8b4822
CMake: Remove toolchain module dependency on cpu core CMake modules
hugueskamba Aug 4, 2020
cb9960c
CMake: Do not hard code target in toolchain CMake module
hugueskamba Aug 4, 2020
dde395c
CMake: Do not hard code target in build profile CMake module
hugueskamba Aug 4, 2020
a1259ec
CMake: Remove utility function dependency on mbed-os target
hugueskamba Aug 4, 2020
933b1db
CMake: Set language std per target using properties
hugueskamba Aug 10, 2020
eb4102b
CMake: Fix failure due to BLE component dir move
hugueskamba Aug 11, 2020
fbaeae5
CMake: Fix failure due to MbedTLS rdir relocation
hugueskamba Aug 12, 2020
7343ad6
CMake: Use `mbed_` prefix for CMake functions
hugueskamba Aug 12, 2020
6687a6b
CMake: Check CMake builds CMake-capable targets in Travis
rwalton-arm Aug 13, 2020
67a2058
CMake: Fix build failure due to lora, cryptocell, and nfc dirs move
hugueskamba Aug 15, 2020
f856d6b
CMake: Fix include path for Cryptocell
0xc0170 Aug 17, 2020
01ddb7d
CMake: Fix NRF52840_DK build failure
hugueskamba Aug 17, 2020
b3c614e
CMake: Fix CORDIO_LL build failure
hugueskamba Aug 17, 2020
f12f9ad
CMake: Fix failures due to device_key and storage dirs move
hugueskamba Aug 24, 2020
14c6af1
cmake: fix sd component recent dir structure
0xc0170 Aug 25, 2020
5a1d64a
CMake: Fix blockdevice components source and include paths
0xc0170 Aug 25, 2020
0c8cb31
CMake: Fix build failure due to PSA dir move
hugueskamba Aug 25, 2020
ec376fb
CMake: List missing files in sal-stack-nanostack
hugueskamba Aug 27, 2020
3ab8179
CMake: Add support for K66F
hugueskamba Aug 27, 2020
4fc678c
CMake: Correct file listing for PSA
hugueskamba Aug 27, 2020
0ba0524
CMake: Fix selection of scatter file and startup file for DISCO_L475_…
hugueskamba Aug 27, 2020
458ce2a
Travis: add more examples we should support
0xc0170 Jul 22, 2020
a0fbe29
CMake: Fix build failure due to CMSIS restructure
hugueskamba Sep 2, 2020
3be2d15
CMake ARMClang6: use armclang for asm
0xc0170 Sep 1, 2020
4c89f67
CMake cores: fix flag mpcu for asm
0xc0170 Sep 1, 2020
0902a17
CMake ARMClang: use -masm=auto
0xc0170 Sep 3, 2020
44f9d17
CMake: Fix build due to hal dir move
hugueskamba Sep 3, 2020
8aa4a85
CMake: use CMAKE_TOOLCHAIN_FILE
0xc0170 Aug 25, 2020
e7caa89
CMake: use response files
0xc0170 Aug 13, 2020
9d1ae52
CMake: 3.18.2 minimum version set
0xc0170 Sep 4, 2020
30ec7fa
CMake: mbed_add_cmake_directory_if_labels checks presence of CMakeLis…
hugueskamba Sep 7, 2020
18cb55a
CMake: Add information about the current state of support (#13551)
0xc0170 Sep 7, 2020
9b8c5ac
CMake: Fix build failure due to mbed-trace, mbed-client-randlib, and …
hugueskamba Sep 7, 2020
1b576c3
CMake: Clean up platform
hugueskamba Sep 8, 2020
47f6148
CMake: Fix GCC_ARM pre-linking stage (#13575)
0xc0170 Sep 8, 2020
0f7d03a
CMake: Revert mbed-trace CMake input source file to match upstream re…
hugueskamba Sep 11, 2020
042e9c7
CMake: Remove TOOLCHAIN_ARM_STD dir for TARGET_STM32F439xI
hugueskamba Sep 11, 2020
e22b19d
CMake: Fix build failure due to BLE dir changes
hugueskamba Sep 11, 2020
37dd6d6
CMake: Fix ARM toolchain configuration
hugueskamba Sep 11, 2020
043cb37
CMake: Fix DISCO_L475VG_IOT01A ARM toolchain support
hugueskamba Sep 11, 2020
ae60c65
CMake: Add background and future plans to README (#13589)
hugueskamba Sep 14, 2020
cac1b25
CMake: Move modules under tools subdirectory
hugueskamba Sep 14, 2020
4ec13d7
CMake design: update to the latest version of feature-cmake branch (#…
0xc0170 Sep 16, 2020
1834579
CMake: Add support for C lib selection
hugueskamba Sep 15, 2020
3b8aba1
CMake: Add support for printf lib selection
hugueskamba Sep 15, 2020
0e257b0
CMake: Fix location of M33 exception handler source file
hugueskamba Sep 17, 2020
4c22554
CMake: Fix TFM targets build
hugueskamba Sep 17, 2020
22dd57b
CMake: Add support for NUCLEO_F401RE
hugueskamba Sep 18, 2020
d84baa8
CMake: Add a function to generate executable artifacts with memap (#1…
rajkan01 Oct 8, 2020
fa98689
CMake: Componentize Mbed OS into multiple CMake targets (#13732)
hugueskamba Oct 12, 2020
8016a53
CMake: replace usage of the mbed_add_cmake_directory_if_labels() func…
rajkan01 Oct 13, 2020
8529e88
cmake: fix present inclusion
0xc0170 Oct 14, 2020
8328963
CMake: Replace tested BLE application in CI description
hugueskamba Oct 15, 2020
662e32f
CMake: Fix travis fetch PR (#13763)
0xc0170 Oct 15, 2020
0ddc75a
CMake: Fix BLE private address linker error
hugueskamba Oct 15, 2020
448986f
CMake: remove string.h in STM32 usb, already included (#13773)
0xc0170 Oct 16, 2020
c82e8c2
CMake: Restore rtos api and netsocket presence macro names
hugueskamba Oct 16, 2020
d283e69
CMake: fix for Gcc Arm preprocessing linker file
0xc0170 Oct 15, 2020
a42ad9d
Update CMake based on new STM32L4 directory structure
rajkan01 Oct 20, 2020
e0eee75
CMake: remove TODO as it is not valid anymore
0xc0170 Oct 22, 2020
c9cacaf
CMake: fix application config
0xc0170 Oct 21, 2020
bf84a5b
CMake: Rename CMake targets
hugueskamba Oct 22, 2020
2bab2ba
CMake: Create a mbed-os alias library
hugueskamba Oct 22, 2020
d2be577
CMake: split rtos from core target
rajkan01 Oct 16, 2020
e7c0d93
CMake: add mbed-os and mbed-baremetal targets
rajkan01 Oct 26, 2020
f8a02ce
Update rtos/CMakeLists.txt
0xc0170 Oct 27, 2020
e0aa49f
CMake: Add support for NUCLEO_F303K8
hugueskamba Oct 28, 2020
7171f62
Replace PUBLIC to INTERFACE keyword
rajkan01 Oct 28, 2020
52bc5b5
CMake: fix the output bin-hex file
0xc0170 Oct 27, 2020
062bb5f
Update CMakeLists.txt
0xc0170 Oct 27, 2020
2d67c67
TEST: update example scripts for cmake
Oct 26, 2020
0bb812a
TEST: remove cmake build test from TravisCI
Oct 28, 2020
411ea55
TEST: add BLE example to cmake example json
Oct 28, 2020
c391acc
TEST: fix a bug on example scripts
Oct 28, 2020
3558a7a
restrict BLE example only build BLE_LED
Oct 28, 2020
bf552af
TEST: use mbed-tools build wrapper replace cmake build commands
Oct 29, 2020
9faeadc
CMake: ninja reponse files disabled for ARMClang on Windows
0xc0170 Oct 28, 2020
e77c532
CMake: 3.19.0 update to fix ARMClang ASM defines
0xc0170 Oct 29, 2020
7a32e42
CMake readme: update mbed-tools to 3.4
0xc0170 Oct 29, 2020
76cf2f7
Activate ccache for CMake
ladislas Oct 28, 2020
e80fa8b
CMake: Rename Mbed OS path variable for consistency
hugueskamba Nov 5, 2020
d48415c
CMake nrf52480: fix startup/linker inclusion
0xc0170 Nov 4, 2020
3fa52b9
CMake: Fix Microlib selection (#13871)
hugueskamba Nov 6, 2020
76f4953
CMake: Remove depth level argument to match map console prints the sa…
rajkan01 Nov 4, 2020
46c3596
CMake: Create separate function to set MCU core compile defintions
hugueskamba Oct 28, 2020
0bf4683
CMake: Set compile defintions for supported toolchain at top level in…
hugueskamba Oct 28, 2020
66f65c0
CMake: Fix third party toolchain file suppport
hugueskamba Oct 28, 2020
073ae1d
CMake: Validate selected application profile (#13856)
rajkan01 Nov 6, 2020
22d926f
Merge pull request #13566 from ARMmbed/feature-cmake
0xc0170 Nov 9, 2020
776ad7a
TEST: update cmake example on ble examples
Nov 9, 2020
6068428
Merge pull request #13885 from jamesbeyond/cmake_ble
0xc0170 Nov 9, 2020
db7954b
STM32: allow high speed USB endpoints
facchinm Mar 17, 2020
f1ea281
STM32: USB: allow more endpoints for OTG_HS ports
facchinm Aug 27, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -100,3 +100,8 @@ DELIVERY/

# Directory used to clone and build TF-M
features/FEATURE_EXPERIMENTAL_API/FEATURE_PSA/TARGET_TFM/TARGET_IGNORE/

# CMake
CMakeCache.txt
cmake_install.cmake
CMakeFiles/
70 changes: 14 additions & 56 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,26 +21,22 @@ dist: xenial

env:
global:
- deps_url="https://mbed-os-ci.s3-eu-west-1.amazonaws.com/jenkins-ci/deps"
- deps_url="https://mbed-os-ci-public.s3-eu-west-1.amazonaws.com/jenkins-ci/deps"
- deps_dir="${HOME}/.cache/deps"

cache:
pip: true
ccache: true
directories:
- ${HOME}/.cache/deps
- ${HOME}/.ccache


before_install:
- source tools/test/travis-ci/functions.sh
- set_status "pending" "Test started."

after_success:
- set_status "success" "Success!"

after_failure:
- set_status "failure" "Test failed."

addons:
apt:
packages:
- ninja-build

matrix:
include:
Expand Down Expand Up @@ -77,41 +73,32 @@ matrix:
| ( grep -v '^tools/test/toolchains/api_test.py' || true ) \
| while read file; do cp --parents "${file}" SCANCODE; done
- scancode -l --json-pp scancode.json SCANCODE
- python ./tools/test/travis-ci/scancode-evaluate.py -f scancode.json || true
- python ./tools/test/travis-ci/scancode-evaluate.py scancode.json || true
# run the same but for new files. All new files must have SPDX
- >-
git diff --name-only --diff-filter=A FETCH_HEAD..HEAD \
| ( grep '.\(c\|cpp\|h\|hpp\|py\)$' || true ) \
| ( grep -v '^tools/test/toolchains/api_test.py' || true ) \
| while read file; do cp --parents "${file}" SCANCODE_NEW_FILES; done
- scancode -l --json-pp scancode_new_files.json SCANCODE_NEW_FILES
- python ./tools/test/travis-ci/scancode-evaluate.py -f scancode_new_files.json || true
after_success:
- python ./tools/test/travis-ci/scancode-evaluate.py -f scancode.json
- python ./tools/test/travis-ci/scancode-evaluate.py scancode_new_files.json || true
- cat scancode-evaluate.log
- COUNT=$(cat scancode-evaluate.log | grep 'File:' | wc -l)
- python ./tools/test/travis-ci/scancode-evaluate.py -f scancode_new_files.json
- COUNT=$(cat scancode-evaluate.log | grep 'File:' | grep -v 'SPDX' | wc -l) || true
- python ./tools/test/travis-ci/scancode-evaluate.py scancode_new_files.json
- cat scancode-evaluate.log
- COUNT_NEW_FILES=$(cat scancode-evaluate.log | grep 'File:' | wc -l)
- COUNT_NEW_FILES=$(cat scancode-evaluate.log | grep 'File:' | grep -v 'SPDX' | wc -l) || true
- |
if [ $COUNT == 0 ] && [ $COUNT_NEW_FILES == 0 ]; then
echo "License check OK";
STATUSM="All licenses OK";
set_status "success" "$STATUSM";
true;
elif [ $COUNT_NEW_FILES != 0 ]; then
echo "License check failed, files with the license issues found";
STATUSM="Needs review, license issues in modified files: ${COUNT}, new files: ${COUNT_NEW_FILES}";
set_status "failure" "$STATUSM";
echo "License check failed, new files with the license issues found";
false;
else
echo "License check failed, please review license issues found in modified files";
STATUSM="Needs review, ${COUNT} license issues found";
set_status "success" "$STATUSM";
false;
fi



- <<: *basic-vm
name: "include check"
env: NAME=include_check
Expand All @@ -122,15 +109,14 @@ matrix:
':!*tests/*' ':!*targets/*' ':!*TARGET_*' ':!*unsupported/*' \
':!*events/tests/*' ':!*drivers/tests/*'


### Docs Tests ###
- &docs-vm
stage: "Docs"
name: "astyle"
env: NAME=astyle
install:
- >-
curl -L0 https://mbed-os.s3-eu-west-1.amazonaws.com/builds/deps/astyle_3.1_linux.tar.gz --output astyle.tar.gz;
curl -L0 https://mbed-os-ci-public.s3-eu-west-1.amazonaws.com/jenkins-ci/deps/astyle_3.1_linux.tar.gz --output astyle.tar.gz;
mkdir -p BUILD && tar xf astyle.tar.gz -C BUILD;
cd BUILD/astyle/build/gcc;
make;
Expand Down Expand Up @@ -305,20 +291,6 @@ matrix:
# Run profiling tests
- make -C ${EVENTS}/tests/unit prof | tee prof
- ccache -s
after_success:
# Update status, comparing with master if possible.
- |
CURR=$(grep -o '[0-9]\+ cycles' prof | awk '{sum += $1} END {print sum}')
PREV=$(curl -u "${MBED_BOT}" https://github.com/api/repos/${TRAVIS_REPO_SLUG}/status/master \
| jq -re "select(.sha != \"${TRAVIS_COMMIT}\")
| .statuses[] | select(.context == \"travis-ci/${NAME}\").description
| capture(\"runtime is (?<runtime>[0-9]+)\").runtime" \
|| echo 0)

delta=""
[ "${PREV}" -ne 0 ] && delta="($(printf "%+d" "$(( ${CURR} - ${PREV} ))" cycles)"

set_status "success" "Success! Runtime is ${CURR} cycles. ${delta}"

- <<: *extended-vm
name: "littlefs"
Expand Down Expand Up @@ -379,17 +351,3 @@ matrix:
CFLAGS+="-DLFS_NO_ASSERT -DLFS_NO_DEBUG -DLFS_NO_WARN -DLFS_NO_ERROR"
| tee sizes
- ccache -s
after_success:
# Update status, comparing with master if possible.
- |
CURR=$(tail -n1 sizes | awk '{print $1}')
PREV=$(curl -u "${MBED_BOT}" https://github.com/api/repos/${TRAVIS_REPO_SLUG}/status/master \
| jq -re "select(.sha != \"${TRAVIS_COMMIT}\")
| .statuses[] | select(.context == \"travis-ci/${NAME}\").description
| capture(\"code size is (?<size>[0-9]+)\").size" \
|| echo 0)

delta=""
[ "${PREV}" -ne 0 ] && delta="($(printf "%+0.2f%%" "$(<<< "100 * ((${CURR} - ${PREV})/${PREV})" bc -l)"))"

set_status "success" "Success! Code size is ${CURR}B. ${delta}"
249 changes: 249 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,249 @@
# Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

# This is the boilerplate for Mbed OS

cmake_minimum_required(VERSION 3.19.0 FATAL_ERROR)

# Using relative paths behavior
if(POLICY CMP0076)
cmake_policy(SET CMP0076 NEW)
endif()

include(${MBED_CONFIG_PATH}/mbed_config.cmake)
include(${MBED_PATH}/tools/cmake/core.cmake)

add_library(mbed-core INTERFACE)

add_library(mbed-os INTERFACE)

target_link_libraries(mbed-os
INTERFACE
mbed-rtos
mbed-core
)

add_library(mbed-baremetal INTERFACE)

target_link_libraries(mbed-baremetal
INTERFACE
mbed-core
)

# Validate selected C library type
# The C library type selected has to match the library that the target can support
if(${MBED_C_LIB} STREQUAL "small")
if(NOT "small" IN_LIST MBED_TARGET_SUPPORTED_C_LIBS)
if("std" IN_LIST MBED_TARGET_SUPPORTED_C_LIBS)
message(WARNING
"We noticed that target.c_lib is set to `${MBED_C_LIB}`."
" As the ${MBED_TARGET} target does not support a small C library for the ${MBED_TOOLCHAIN} toolchain,"
" we are using the standard C library instead."
)
set(MBED_C_LIB "std" CACHE STRING "")
endif()
endif()
elseif(NOT ${MBED_C_LIB} IN_LIST MBED_TARGET_SUPPORTED_C_LIBS)
message(FATAL_ERROR
"Invalid `target.c_lib` ('${MBED_C_LIB}') for '${MBED_TARGET}' target."
"\nPossible value(s): ${MBED_TARGET_SUPPORTED_C_LIBS}"
)
endif()

# Validate selected printf library
set(MBED_PRINTF_LIB_TYPES std minimal-printf)
if(NOT ${MBED_PRINTF_LIB} IN_LIST MBED_PRINTF_LIB_TYPES)
message(FATAL_ERROR
"Invalid printf library type '${MBED_PRINTF_LIB}'. Possible values:\n ${MBED_PRINTF_LIB_TYPES}"
)
endif()

mbed_set_cpu_core_definitions(mbed-core)
if(${MBED_TOOLCHAIN_FILE_USED})
mbed_set_cpu_core_options(mbed-core ${MBED_TOOLCHAIN})
mbed_set_toolchain_options(mbed-core)
mbed_set_profile_options(mbed-core ${MBED_TOOLCHAIN})
mbed_set_c_lib(mbed-core ${MBED_C_LIB})
mbed_set_printf_lib(mbed-core ${MBED_PRINTF_LIB})
endif()


set(MBED_TARGET_LABELS
${MBED_TARGET_LABELS} CACHE INTERNAL ""
)

target_compile_definitions(mbed-core
INTERFACE
${MBED_TARGET_DEFINITIONS}
${MBED_CONFIG_DEFINITIONS}
)

# Add compile definitions for backward compatibility with the toolchain
# supported. New source files should instead check for __GNUC__ and __clang__
# for the GCC_ARM and ARM toolchains respectively.
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
target_compile_definitions(mbed-core
INTERFACE
TOOLCHAIN_GCC_ARM
TOOLCHAIN_GCC
)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
target_compile_definitions(mbed-core
INTERFACE
TOOLCHAIN_ARM
)
endif()

# Include mbed.h and config from generate folder
target_include_directories(mbed-core
INTERFACE
${CMAKE_CURRENT_SOURCE_DIR}
)

# These targets are made visible here so their source files which
# are spread in different directories can be referenced and can be linked against
# by libraries that depend on them.
# TODO CMake: Should the source files be moved?
add_library(mbed-device_key INTERFACE)
add_library(mbed-rtos INTERFACE)

add_subdirectory(cmsis)
add_subdirectory(drivers)
add_subdirectory(hal)
add_subdirectory(platform)
add_subdirectory(rtos)
add_subdirectory(targets)

# The directories below contain optional target libraries
add_subdirectory(events EXCLUDE_FROM_ALL)
add_subdirectory(connectivity EXCLUDE_FROM_ALL)
add_subdirectory(storage EXCLUDE_FROM_ALL)
add_subdirectory(drivers/device_key EXCLUDE_FROM_ALL)
add_subdirectory(drivers/source/usb EXCLUDE_FROM_ALL)
add_subdirectory(features EXCLUDE_FROM_ALL)
add_subdirectory(platform/FEATURE_EXPERIMENTAL_API EXCLUDE_FROM_ALL)
add_subdirectory(cmsis/CMSIS_5/CMSIS/RTOS2 EXCLUDE_FROM_ALL)
add_subdirectory(cmsis/device/rtos EXCLUDE_FROM_ALL)

#
# Configures the application
#
function(mbed_configure_app_target target)
mbed_set_language_standard(${target})
endfunction()

#
# Specifies linker script used for linking `target`.
#
function(mbed_set_mbed_target_linker_script target)
get_property(mbed_target_linker_script GLOBAL PROPERTY MBED_TARGET_LINKER_FILE)
if(MBED_TOOLCHAIN STREQUAL "GCC_ARM")
mbed_generate_gcc_options_for_linker(${target} _linker_preprocess_definitions)
set(CMAKE_PRE_BUILD_COMMAND
COMMAND "arm-none-eabi-cpp" ${_linker_preprocess_definitions} -x assembler-with-cpp -E -Wp,-P
${mbed_target_linker_script} -o ${CMAKE_BINARY_DIR}/${target}.link_script.ld

WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
BYPRODUCTS "${CMAKE_BINARY_DIR}/${target}.link_script.ld"
)
elseif(MBED_TOOLCHAIN STREQUAL "ARM")
set(CMAKE_PRE_BUILD_COMMAND COMMAND "")
target_link_options(mbed-core
INTERFACE
"--scatter=${mbed_target_linker_script}"
)
endif()
add_custom_command(
TARGET
${target}
PRE_LINK
${CMAKE_PRE_BUILD_COMMAND}
COMMENT
"Link line:"
VERBATIM
)
endfunction()

#
# Converts output file of `target` to binary file and to Intel HEX file.
#
function(mbed_generate_bin_hex target)
get_property(elf_to_bin GLOBAL PROPERTY ELF2BIN)
if(MBED_TOOLCHAIN STREQUAL "GCC_ARM")
set(CMAKE_POST_BUILD_COMMAND
COMMAND ${elf_to_bin} -O binary $<TARGET_FILE:${target}> ${CMAKE_BINARY_DIR}/${target}.bin
COMMAND ${CMAKE_COMMAND} -E echo "-- built: ${CMAKE_BINARY_DIR}/${target}.bin"
COMMAND ${elf_to_bin} -O ihex $<TARGET_FILE:${target}> ${CMAKE_BINARY_DIR}/${target}.hex
COMMAND ${CMAKE_COMMAND} -E echo "-- built: ${CMAKE_BINARY_DIR}/${target}.hex"
)
elseif(MBED_TOOLCHAIN STREQUAL "ARM")
get_property(mbed_studio_arm_compiler GLOBAL PROPERTY MBED_STUDIO_ARM_COMPILER)
set(CMAKE_POST_BUILD_COMMAND
COMMAND ${elf_to_bin} ${mbed_studio_arm_compiler} --bin -o ${CMAKE_BINARY_DIR}/${target}.bin $<TARGET_FILE:${target}>
COMMAND ${CMAKE_COMMAND} -E echo "-- built: ${CMAKE_BINARY_DIR}/${target}.bin"
COMMAND ${elf_to_bin} ${mbed_studio_arm_compiler} --i32combined -o ${CMAKE_BINARY_DIR}/${target}.hex $<TARGET_FILE:${target}>
COMMAND ${CMAKE_COMMAND} -E echo "-- built: ${CMAKE_BINARY_DIR}/${target}.hex"
)
endif()
add_custom_command(
TARGET
${target}
POST_BUILD
${CMAKE_POST_BUILD_COMMAND}
COMMENT
"executable:"
VERBATIM
)
endfunction()

#
# Parse toolchain generated map file of `target` and display a readable table format.
#
function(mbed_generate_map_file target)
find_package (Python3)
add_custom_command(
TARGET
${target}
POST_BUILD
COMMAND ${Python3_EXECUTABLE} ${MBED_PATH}/tools/memap.py -t ${MBED_TOOLCHAIN} ${CMAKE_BINARY_DIR}/${target}${CMAKE_EXECUTABLE_SUFFIX}.map
WORKING_DIRECTORY
${CMAKE_BINARY_DIR}
COMMENT
"Displaying memory map for ${target}"
)
endfunction()

#
# Validate selected application profile.
#
function(mbed_validate_application_profile target)
get_target_property(app_link_libraries ${target} LINK_LIBRARIES)
string(FIND "${app_link_libraries}" "mbed-baremetal" string_found_position)
if(${string_found_position} GREATER_EQUAL 0)
if(NOT "bare-metal" IN_LIST MBED_TARGET_SUPPORTED_APPLICATION_PROFILES)
message(FATAL_ERROR
"Use full profile as baremetal profile is not supported for this Mbed target")
endif()
elseif(NOT "full" IN_LIST MBED_TARGET_SUPPORTED_APPLICATION_PROFILES)
message(FATAL_ERROR
"The full profile is not supported for this Mbed target")
endif()
endfunction()

#
# Set post build operations
#
function(mbed_set_post_build target)
mbed_validate_application_profile(${target})
mbed_generate_bin_hex(${target})
mbed_generate_map_file(${target})
endfunction()

# Ninja requires to be forced for response files
if ("${CMAKE_GENERATOR}" MATCHES "Ninja")
# known issue ARMClang and Ninja with response files for windows
# https://gitlab.kitware.com/cmake/cmake/-/issues/21093
if(NOT (CMAKE_HOST_SYSTEM_NAME MATCHES "Windows" AND CMAKE_CXX_COMPILER_ID MATCHES "ARMClang"))
set(CMAKE_NINJA_FORCE_RESPONSE_FILE 1 CACHE INTERNAL "")
endif()
endif()
Loading