Commit Graph

17 Commits (de7768ce2925a8b94e23d51a2b6a00ca603d92d4)

Author SHA1 Message Date
Laurent Meunier a744343931 STM32WB: disable debug lines when not needed
When doing so, do not disbale GPIO clocks as they may be used by other
drivers !

As a result, debug will be disabled by default, but can be enabled by
either modifying code or selecting MBED debug profile.
2019-03-29 16:21:46 +01:00
Laurent Meunier 6336e4bee7 STM32WB: Handle re-init case of transport layer
Issue was seen when running BLE_GAP example from
mbed-os-example-ble.

In STM32WB, the M0 core cannot be reset except if the whole target
is reset. So in case of re-initialization of the BLE stack, the
transport layer should not be initialized again. The HCI reset
command will do the job.
2019-03-29 16:21:44 +01:00
Laurent Meunier c72b0e7ca4 STM32WB: fix some styling in HCI driver 2019-03-29 16:21:44 +01:00
Laurent Meunier 9b2acb25a3 STM32WB: handle extended reset
as suggested during review, apply same sequence as in:
b96c0ac986
2019-03-29 16:21:44 +01:00
Laurent Meunier fd6f12f8a4 STM32WB: move HCI driver to target specific folder
Need to move stm32wb_HCIDriver.cpp to target specific folder otherwise
it could mess up with other STM targets.
2019-03-29 16:21:44 +01:00
Laurent Meunier 6caa4d487f STM32WB: Add SPDX identifier to new files
also update the copyright year when needed
2019-03-29 16:21:44 +01:00
Laurent Meunier 740e296f6b STM32WB: fix compilation issue with ARMC6 2019-03-29 16:21:43 +01:00
Laurent Meunier 3ebf7c9db3 STM32WB: remove duplicate file 2019-03-29 16:21:43 +01:00
Laurent Meunier c53021b77f STM32WB: Update headers 2019-03-29 16:21:43 +01:00
Laurent Meunier e925bd711b STM32WB: Set a random static address during init 2019-03-29 16:21:42 +01:00
Laurent Meunier 08965e1190 STM32WB: add debug trace group in BLE Transport Layer 2019-03-29 16:21:42 +01:00
Laurent Meunier 5871a712dc STM32WB: Move STM32WB utilies from FEATURE_BLE to targets folder
These files are not BLE specific, but also needed for some clock setting
for instance.

In order to compile an MBED2 application, we need to move the files.
2019-03-29 16:21:40 +01:00
Laurent Meunier 27e7e4d9df NUCLEO_WB55RG: Rework Clock and sleep support
- move hw_conf.h file to targets/TARGET_STM/TARGET_STM32WB directory as
this is used also out of BLE feature.
- create a dedicated hal_deepsleep function as the behavior in WB is a lot
different from other existing STM32 targets
- update clock tree configuration to directly clock the entire tree @ 32MHz
out of HSE. This is needed as we want to let the M0 core running without
any change on M0-side of clocks when M4 enters /exits deep sleep.
2019-03-29 16:21:40 +01:00
Laurent Meunier 6234b3578c NUCLEO_WB55RG: add Cordio HCI and Transport Layer driver
The STM32WB Coridio driver includes:
- the Cordio HCI driver handling the reset sequence. During reset sequence
the TX POWER level is set and the BD address is defined if found in OTP
or option bytes. The rest of the sequence is based on the standard CORDIO
HCI driver example.
- The Transport Layer part handles sending and receiving messages to the
WB controller running on cortex-M0 of the STM32WB target. The messages
are shared through shared memory and mailboxes system based on IPCC HW.
2019-03-29 16:21:39 +01:00
Laurent Meunier 16ed1097aa NUCLEO_WB55RG: WB Transport Layer Cube files modifications
- Need to force ARM packed redefinition
- Configure LL stack in LL mode only
- Remove warning in shci_tl.c (PLACE_IN_SECTION)
2019-03-29 16:21:39 +01:00
bcostm e8a49e9605 NUCLEO_WB55RG: add WB Cube files reused for BLE transport layer 2019-03-29 16:21:39 +01:00
Volodymyr Medvid a304c2216a CYW4343X: move HCI driver to TARGET_STM
TARGET_CYW4343X Bluetooth HCI driver is specific to STM32 targets
derived from USI_WM_BN_BM_22. Move the driver implementation to
TARGET_STM folder to not interfere with Cypress implementation at
TARGET_Cypress/TARGET_CYW43XXX/HCIDriver.cpp that is enabled for
PSoC 6 targets which also include the CYW4343X label.
2019-02-07 18:24:55 +02:00