Commit Graph

137 Commits

Author SHA1 Message Date
Erwan Gouriou
15c229655e ext/hal/st: stm32cube: Update License Link for stm23cube packages
License link provided in stm32cube abstract packages was not
reflecting the actual license in use for these packages.
Update the link to BSD 3-Clause official.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-05-06 08:54:14 -05:00
Antony Pavlov
43c4c9c507 ext/hal/st/stm32cube/stm32l1xx: rename SVC_IRQn -> SVCall_IRQn
SVCall_IRQn is used as enum value for SV Call Interrupt for Cortex-M
based SoCs for which CPU_CORTEX_M_HAS_BASEPRI=y. However stm32cube
for stm32l1xx uses SVC_IRQn enum value for this purpose.
This leads to this error:

  arch/arm/include/cortex_m/exc.h:101:19: error: 'SVCall_IRQn'
    undeclared (first use in this function); did you mean 'SVC_IRQn'?

    NVIC_SetPriority(SVCall_IRQn, _EXC_SVC_PRIO);
                     ^~~~~~~~~~~
                     SVC_IRQn

NB: ext/hal/st/stm32cube/stm32l1xx/soc/stm32l151xb.h file was already
fixed in 9f8260457b ('ext: hal: st: stm32cube: Add HAL for
the STM32L1x series').

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
2019-04-30 08:54:06 -05:00
Manivannan Sadhasivam
9f8260457b ext: hal: st: stm32cube: Add HAL for the STM32L1x series
This commit adds the STM32CUBE HAL for STM32L1x series MCUs.

Origin: ST Microelectronics
License: BSD-3-Clause
URL: http://www.st.com/en/embedded-software/stm32cubel1.html
Commit: 1.8.0
Purpose: HAL layer for STM32L1
Maintained-by: External

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
2019-04-22 08:54:18 -05:00
Erwan Gouriou
9098215348 ext/hal/st: Adapt stm32cube folder to stm32wb introduction
Following introduction of STM32Cube for STM32WB, update stm32cube
folder to enable build of STM32WB Cube package.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-04-19 14:19:44 -05:00
Erwan Gouriou
6fdd0c2cd9 hal: stm32wbxx: Add HAL for the STM32WB series
This adds the HAL code needed for the SoC for the stm32wb series.

Origin: ST Microelectronics
License: BSD-3-Clause
URL: http://www.st.com/en/embedded-software/stm32cubewb.html
Commit: 1.0.0
Purpose: HAL layer for stm32wb
Maintained-by: External

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-04-19 14:19:44 -05:00
Arnaud Pouliquen
3c82d233e3 ext: hal: fix naming in rcc ll
The CONFIG_ prefix is reserved in Zephyr, rename CONFIG_SHIFT and
associated constants by adding a RCC_ prefix

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
2019-04-19 12:05:27 -05:00
Arnaud Pouliquen
0429a3ade6 ext: hal: add stm32mp1 exti ll driver
The stm32mp1 exti ll driver is mandatory for compilation.
add it on top of stm32cubeMP1 version 1.0.0.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
2019-04-19 12:05:27 -05:00
Arnaud Pouliquen
e529af1f20 ext: hal: Enable support for stm32mp1xx hal
Provide required changes to stm32cube HAL and LL for the
STM32MP1X series MCU.

Origin: ST Microelectronics
License: BSD-3-Clause
URL: https://github.com/STMicroelectronics/STM32CubeMP1
Commit: 1.1.0
Purpose: HAL layer for STM32MP1
Maintained-by: External

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
2019-04-19 12:05:27 -05:00
Kumar Gala
c38df1515c ext/hal: stm32l4xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32l4xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
0a482cd92a ext/hal: stm32l0xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32l0xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
073ece5080 ext/hal: stm32f7xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32f7xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
3ec47dcf1c ext/hal: stm32f4xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32f4xx_hal_tim.c:3615:24: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
0404cf90f0 ext/hal: stm32f3xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32f3xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
198387dcd9 ext/hal: stm32f2xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32f2xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
a51bfc8dc4 ext/hal: stm32f1xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32f1xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Kumar Gala
ee69d0049b ext/hal: stm32f0xx: Fix warnings for extraneous parentheses
Building with clang reports the following warnings:

stm32f0xx_hal_tim.c: error: equality comparison with extraneous
parentheses [-Werror,-Wparentheses-equality]
  else if((htim->State == HAL_TIM_STATE_READY))
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~

Removing the extra () fixes the warning

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-04-17 16:46:17 -05:00
Ulf Magnusson
53376394b7 kconfig: Remove blank lines at the beginning/end of files
Maybe this is some "just in case" thing that got copied around. There's
no need to have a blank line at the beginning or end of Kconfig files.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2019-03-13 07:29:42 -05:00
Erwan Gouriou
d30975b0b2 ext/hal: stm32l4xx: Use of (__packed uint32_t *) produces warnings
Using Zephyr SDK 0.10.0-rc2, GNUCC 8.2.0 is used and
(__packed uint32_t *) are now generating warnings..
Replace with CMSIS macros __UNALIGNED_UINT32_READ and
__UNALIGNED_UINT32_WRITE

ST internal reference: 61328

Fixes #13237

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-11 11:37:06 -06:00
Erwan Gouriou
d4d6a2a4d1 ext/hal: stm32f7xx: Use of (__packed uint32_t *) produces warnings
Using Zephyr SDK 0.10.0-rc2, GNUCC 8.2.0 is used and
(__packed uint32_t *) are now generating warnings..
Replace with CMSIS macros __UNALIGNED_UINT32_READ and
__UNALIGNED_UINT32_WRITE

ST internal reference: 61327

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-11 11:37:06 -06:00
Erwan Gouriou
5405da78d3 ext/hal: stm32f4xx: Use of (__packed uint32_t *) produces warnings
Using Zephyr SDK 0.10.0-rc2, GNUCC 8.2.0 is used and
(__packed uint32_t *) are now generating warnings..
Replace with CMSIS macros __UNALIGNED_UINT32_READ and
__UNALIGNED_UINT32_WRITE

ST internal reference: 61325

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-11 11:37:06 -06:00
Erwan Gouriou
970274ea26 ext/hal: stm32f2xx: Use of (__packed uint32_t *) produces warnings
Using Zephyr SDK 0.10.0-rc2, GNUCC 8.2.0 is used and
(__packed uint32_t *) are now generating warnings..
Replace with CMSIS macros __UNALIGNED_UINT32_READ and
__UNALIGNED_UINT32_WRITE

ST internal reference: 61324

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-11 11:37:06 -06:00
Erwan Gouriou
576b391053 ext/hal: stm32f1xx: Use of (__packed uint32_t *) produces warnings
Using Zephyr SDK 0.10.0-rc2, GNUCC 8.2.0 is used and
(__packed uint32_t *) are now generating warnings..
Replace with CMSIS macros __UNALIGNED_UINT32_READ and
__UNALIGNED_UINT32_WRITE

ST internal reference: 61323

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2019-02-11 11:37:06 -06:00
Armando Visconti
3a625ff3d4 ext: Added OpenPDM2PCM ST external library
This library, written by STMicroelectronics, is used to convert an
audio stream from PDM format to PCM format through a signal filtering
and decimation.

Library is located in ext/hal/st/lib/audio.

Origin: ST Microelectronics
License: Apache 2.0
URL: https://os.mbed.com/
Commit: 25:f2c04f757003
Purpose: reconstruct the audio signal produced by ST MEMS microphone
Maintained-by: External

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2019-01-28 11:57:25 -06:00
Armando Visconti
faeb227a8f ext: stm32cube: revert 71ba2de7 and 9a893202
Revert 71ba2de7:
ext: stm32cube: stm32f4xx: shift I2SR field in PLLI2SCFGR register
(ST Bug tracker ID: 50086)

Revert 9a893202:
ext: stm32cube: stm32f7xx: shift I2SR field in PLLI2SCFGR register
(ST Bug tracker ID: 50108)

This two commits were introduced to shift the PLLR parameter according
to the PLL register field position. After analysis, it appears that
function is actually correct, and issue was actually in parameters
provided that didn't match the API. (see PR #12609)

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2019-01-24 09:35:53 -06:00
Erwan Gouriou
3f71772555 ext/hal/st: stm32f7: Fix README
READM was not updated following last STM32Cube update.
Fix this.


Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-29 10:30:48 +00:00
Erwan Gouriou
60d96600b4 ext/hal/st: update stm32l4 stm32cube package from v1.12.0 to v1.13.0
Update STM32L4 series stm32cube package from V1.12.0 to V1.13.0.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-29 10:30:48 +00:00
Erwan Gouriou
5776ea8869 ext/hal: stm32cube: fix exti declaration in STM32F7
LL_EXTI_LINE_18 and LL_EXTI_LINE_20 are declared in stm32f7xx_hal_pcd.h
and in stm32f7xx_ll_exti.h which generates warnings. Set #ifndef
in stm32f7xx_ll_exti.h around declarations.
STBugtracker: 55274

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-18 18:32:06 -05:00
Erwan Gouriou
13e9f4ee94 ext/hal: stm32cube: fix exti declaration in STM32L4
LL_EXTI_LINE_18 and LL_EXTI_LINE_20 are declared in stm32l4xx_hal_pcd.h
and in stm32l4xx_ll_exti.h which generates warnings. Set #ifndef
in stm32l4xx_ll_exti.h around declarations.
STBugtracker: 55275

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-18 18:32:06 -05:00
Erwan Gouriou
b1798721cc ext/hal/st: stm32f3: Disable new API and enable Legacy
A new CAN API is now provided in stm32cube packages.
STM32 can driver is implemented on top of initial CAN API which
is now legacy API.
Disable new API and enable legacy.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
5d362411c7 ext/hal/st: update stm32f7 stm32cube package from v1.11.0 to v1.12.0
Update STM32F7 series stm32cube package from V1.11.0 to V1.12.0.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
aa1cd0cfc2 ext/hal/st: update stm32f3 stm32cube package from v1.9.0 to v1.10.0
Update STM32F3 series stm32cube package from V1.9.0 to V1.10.0.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
3a84551f5f ext/hal/st: stm32l4: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
1661e00334 ext/hal/st: stm32l0: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
db2307fb92 ext/hal/st: stm32f4: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
a429104095 ext/hal/st: stm32f2: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Erwan Gouriou
027aac6869 ext/hal/st: stm32f0: dos2unix and remove trailing white spaces
Format all cube packages to the same format before update to new
versions:
-Apply dos2unix
-Remove trailing white spaces

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-10-09 12:03:17 -04:00
Istvan Bisz
8bb0e7a504 hal: stm32f2x: usbotg_fs: fix VBUS sensing deactivation
The error is detected if USART1 TX configured to PA9 and RX to PA10.
The serial cable removal stops the USB communication.
In case of VBUS sensing deactivation, erroneously
both USB_OTG_GCCFG_VBUSBSEN and
USB_OTG_GCCFG_NOVBUSSENS are set in GCCFG.
Correct handling is:
 - VBUS sensing deactivation: set USB_OTG_GCCFG_NOVBUSSENS in GCCFG.
 - VBUS sensing activation:   set USB_OTG_GCCFG_VBUSBSEN in GCCFG.
ST Bug Tracker ID: 34714

Signed-off-by: Istvan Bisz <istvan.bisz@t-online.hu>
2018-08-15 08:22:41 -05:00
Erwan Gouriou
ee29e60325 ext/hal: stm32cube: STM32L4: Enable legacy CAN API
A new CAN API has been delivered on recent L4 stm32cube.
This new API breaks current CAN driver. Disable the new API and
enable the legacy API.

Fixes #8931

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-08-13 18:46:20 -07:00
Erwan Gouriou
6409f9a944 ext/hal: stm32cube: STM32F7: Enable legacy CAN API
A new CAN API has been delivered on recent F7 stm32cube.
This new API breaks current CAN driver. Disable the new API and
enable the legacy API.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-08-13 18:46:20 -07:00
Erwan Gouriou
57fda14f97 ext/hal: stm32cube: STM32F4: Enable legacy CAN API
A new CAN API has been delivered on recent F4 stm32cube.
This new API breaks current CAN driver. Disable the new API and
enable the legacy API.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-08-13 18:46:20 -07:00
Armando Visconti
9a8932024a ext: stm32cube: stm32f7xx: shift I2SR field in PLLI2SCFGR register
The I2SR field should be shifted by RCC_PLLI2SCFGR_PLLI2SR_Pos when the
PLLI2SCFGR register is read or written. Without this patch the PLLI2S
configuration is not done properly (R and M params are badly set) and
the PLLI2S generates bad clock waveform.

ST Bug tracker ID: 50108

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2018-07-06 09:44:59 -05:00
Armando Visconti
71ba2de75c ext: stm32cube: stm32f4xx: shift I2SR field in PLLI2SCFGR register
The I2SR field should be shifted by RCC_PLLI2SCFGR_PLLI2SR_Pos when the
PLLI2SCFGR register is read or written. Without this patch the PLLI2S
configuration is not done properly (R and M params are badly set) and
the PLLI2S generates bad clock waveform.

ST Bug tracker ID: 50086

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2018-07-06 09:44:59 -05:00
qianfan Zhao
396bf4770b hal: stm32f2x: Add HAL for the STM32F2x series
This adds the HAL code needed for the SoC for the stm32f2 series.

Origin: ST Microelectronics
License: BSD-3-Clause
URL: http://www.st.com/en/embedded-software/stm32cubef2.html
Commit: 1.7.0
Purpose: HAL layer for stm32f2
Maintained-by: External

Signed-off-by: qianfan Zhao <qianfanguijin@163.com>
2018-07-05 11:26:07 -05:00
Erwan Gouriou
b3127629c7 ext: stm32cube: update stm32l4xx cube version
Update Cube version for STM32L4XX family
from version: V1.10.0
to version: V1.12.0

This version solves patch in drivers/include/stm32l4xx_ll_spi.h

Note: git shows 100% diff on all files.
You need to tick "Ignore space change" in git UI to see real
differences. I tried different things to fix this without
success (dos2unix, file encoding, files access right).

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Erwan Gouriou
875afddb28 ext: stm32cube: update stm32f7xx cube version
Update Cube version for STM32F7XX family
from version: V1.8.0
to version: V1.11.0

Note: git shows 100% diff on all files.
You need to tick "Ignore space change" in git UI to see real
differences. I tried different things to fix this without
success (dos2unix, file encoding, files access right).

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Erwan Gouriou
176042ff34 ext: stm32cube: update stm32f4xx cube version
Update Cube version for STM32F4XX family
from version: V1.18.0
to version: V1.21.0

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Erwan Gouriou
5347dc1a07 ext: stm32cube: update stm32f3xx cube version
Update Cube version for STM32F3XX family
from version: V1.9.0
to version: V1.9.1

Fixes both patches:
 - Wrong LSI value
 - Issue in LL_SPI_TransmitData16

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Erwan Gouriou
7eb2276a49 ext: stm32cube: update stm32f1xx cube version
Update Cube version for STM32F1XX family
from version: V1.6.0
to version: V1.6.1

Note: git shows 100% diff on all files.
You need to tick "Ignore space change" in git UI to see real
differences. I tried different things to fix this without
success (dos2unix, file encoding, files access right).

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2018-06-27 12:27:15 -05:00
Ulf Magnusson
fb6f9b78c9 ext: Kconfig: Remove redundant 'default n' properties
Bool symbols implicitly default to 'n'.

A 'default n' could make sense e.g. in a Kconfig.defconfig file, if you
wanted to override a 'default y' on the base definition of the symbol,
but it doesn't seem to be used like that on any of these symbols.

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2018-06-18 15:26:38 -04:00
Aurelien Jarno
b66ecc5765 ext: hal: stm32cube: fix stm32l4xx VDDUSB supply control
The STM32L4x2 SoCs need to control the isolation of the USB features
from VDDUSB. This is done through the PWR_CR2 bit USV. The STM32L4 HAL
in stm32l4xx_ll_pwr.h wrongly checks for the PWR_CR2_PVME1 bit, which
is only available on Cat. 3 devices. Replace the check by PWR_CR2_USV
like it is already done in stm32l4xx_hal_pwr_ex.c.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2018-05-24 09:42:30 -05:00