diff --git a/bsp/stm32/libraries/STM32L4xx_HAL/SConscript b/bsp/stm32/libraries/STM32L4xx_HAL/SConscript deleted file mode 100644 index 732250cca1..0000000000 --- a/bsp/stm32/libraries/STM32L4xx_HAL/SConscript +++ /dev/null @@ -1,117 +0,0 @@ -import rtconfig -from building import * - -# get current directory -cwd = GetCurrentDir() - -# The set of source files associated with this SConscript file. - -src = Split(''' -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_comp.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cortex.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_crc.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_crc_ex.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cryp.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_cryp_ex.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma_ex.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_exti.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr_ex.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rcc_ex.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rng.c -STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gpio.c -''') - -if GetDepend(['RT_USING_SERIAL']) or GetDepend(['RT_USING_NANO', 'RT_USING_CONSOLE']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_uart_ex.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_usart.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_usart_ex.c'] - -if GetDepend(['RT_USING_I2C']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c_ex.c'] - -if GetDepend(['RT_USING_SPI']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_spi.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_spi_ex.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_qspi.c'] - -if GetDepend(['RT_USING_USB']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_hcd.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pcd.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pcd_ex.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_ll_usb.c'] - -if GetDepend(['RT_USING_CAN']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_can.c'] - -if GetDepend(['RT_USING_HWTIMER']) or GetDepend(['RT_USING_PWM']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_lptim.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_tim_ex.c'] - -if GetDepend(['RT_USING_ADC']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_adc.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_adc_ex.c'] - -if GetDepend(['RT_USING_DAC']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dac.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dac_ex.c'] - -if GetDepend(['RT_USING_RTC']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rtc.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rtc_ex.c'] - -if GetDepend(['RT_USING_WDT']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_iwdg.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_wwdg.c'] - -if GetDepend(['RT_USING_SDIO']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_sd.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_sd_ex.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_ll_sdmmc.c'] - -if GetDepend(['RT_USING_AUDIO']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_sai.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_sai_ex.c'] - -if GetDepend(['RT_USING_MTD_NOR']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_nor.c'] - -if GetDepend(['RT_USING_MTD_NAND']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_nand.c'] - -if GetDepend(['RT_USING_PM']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_lptim.c'] - -if GetDepend(['BSP_USING_ON_CHIP_FLASH']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ex.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ramfunc.c'] - -if GetDepend(['BSP_USING_FMC']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_ll_fmc.c'] - -if GetDepend(['BSP_USING_GFXMMU']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gfxmmu.c'] - -if GetDepend(['BSP_USING_DSI']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dsi.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma2d.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_ll_dma2d.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_ltdc.c'] - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_ltdc_ex.c'] - -if GetDepend(['BSP_USING_SRAM']): - src += ['STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_sram.c'] - -path = [cwd + '/STM32L4xx_HAL_Driver/Inc'] - -CPPDEFINES = ['USE_HAL_DRIVER'] -group = DefineGroup('Libraries', src, depend = [''], CPPPATH = path, CPPDEFINES = CPPDEFINES) - -Return('group') diff --git a/bsp/stm32/libraries/STM32L4xx_HAL/STM32L4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h b/bsp/stm32/libraries/STM32L4xx_HAL/STM32L4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h deleted file mode 100644 index 1f40166fcd..0000000000 --- a/bsp/stm32/libraries/STM32L4xx_HAL/STM32L4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h +++ /dev/null @@ -1,3754 +0,0 @@ -/** - ****************************************************************************** - * @file stm32_hal_legacy.h - * @author MCD Application Team - * @brief This file contains aliases definition for the STM32Cube HAL constants - * macros and functions maintained for legacy purpose. - ****************************************************************************** - * @attention - * - *
Copyright © 2017 STMicroelectronics
-
-Licensed by ST under BSD 3-Clause license (the "License"). You may not use this package except in compliance with the License. You may obtain a copy of the License at:
-https://opensource.org/licenses/BSD-3-Clause
-The STM32Cube HAL and LL, an STM32 abstraction layer embedded software, ensure maximized portability across STM32 portfolio.
-The portable APIs layer provides a generic, multi instanced and simple set of APIs to interact with the upper layer (application, libraries and stacks). It is composed of native and extended APIs set. It is directly built around a generic architecture and allows the build-upon layers, like the middleware layer, to implement its functions without knowing in-depth the used STM32 device. This improves the library code reusability and guarantees an easy portability on other devices and STM32 families.
-The Low Layer (LL) drivers are part of the STM32Cube firmware HAL that provides a basic set of optimized and one shot services. The Low layer drivers, contrary to the HAL ones are not fully portable across the STM32 families; the availability of some functions depends on the physical availability of the relative features on the product. The Low Layer (LL) drivers are designed to offer the following features:
-
-
-
-
HAL drivers changes
-LL drivers changes
-HAL drivers changes
-LL drivers changes
-HAL drivers changes
-LL drivers changes
-HAL drivers changes
-MISRA C:2012 corrections listed hereafter are applicable to LL driver as well.
-HAL ADC driverÂ
-HAL PWR driver
-HAL Â RCC driver
-HAL Â RTC driver
-HAL SAI driver
-HAL SMARTCARD driver
-HAL SPI driver
-HAL SWPMI driver
-HAL TSC driver
-HAL USART driver
-LL Drivers changes
-LL ADC driver
-LL DMA driver
-LL RCC driver
-LL RTC driver
-Maintenance Release of HAL and Low Layer drivers
-Add support of HAL callback registration feature
-The feature disabled by default is available for the following HAL drivers:
ADC, CAN, COMP, CRYP, DAC, DCMI, DFSDM, DMA2D, DSI, GFXMMU, HASH, HCD, I2C, IRDA, LPTIM, LTDC, OPAMP, OSPI, PCD, QSPI, RNG, RTC, SAI, SD, SMARTCARD, SMBUS, SPI, SWPMI, TIM, TSC, UART, USART and WWDG
The feature may be enabled individually per HAL PPP driver by setting the corresponding definition USE_HAL_PPP_REGISTER_CALLBACKS to  1U in stm32l4xx_hal_conf.h project configuration file (template file stm32l4xx_hal_conf_template.h available from  Drivers/STM32L4xx_HAL_Driver/Inc)
Once enabled, the user application may resort to HAL_PPP_RegisterCallback() to register specific callback function(s) and unregister it(them) with HAL_PPP_UnRegisterCallback().
MISRA C:2012 corrections
-HAL drivers changes
-HAL generic driver
-HAL ADC driver
-Update internal ADC calibration timeout value
Add callback registration feature
-HAL CAN driver
-Add callback registration feature
-HAL COMP driver
-HAL CRYP driver
-Add callback registration feature
-HAL DAC driver
-Add callback registration feature
-HAL DCMI driver
-Add callback registration feature
-HAL DFSDM driver
-Add callback registration feature
-HAL DM2D driver
-Add callback registration feature
-HAL DSI driver
-Add callback registration feature
-HAL GFXMMU driver
-Add callback registration feature
-HAL HASH driver
-Add callback registration feature
-HAL HCD driver
-Add new user notification callbacks
-Add callback registration feature
-HAL I2C driver
-I2C slave enhancement when master sends RESTART instead of STOP
-Add callback registration feature
-HAL IRDA driver
-Add callback registration feature
-HAL LPTIM driver
-Add callback registration feature
-HAL LTDC driver
-Add callback registration feature
-HAL NAND driver
-Add new configuration API HAL_NAND_ConfigDevice()
Add new APIs for 8-bit and 16-bit accesses
-HAL_NAND_Read_Page_8b(), HAL_NAND_Write_Page_8b(), HAL_NAND_Read_SpareArea_8b() and HAL_NAND_Write_SpareArea_8b()
HAL_NAND_Read_Page_16b(), HAL_NAND_Write_Page_16b(), HAL_NAND_Read_SpareArea_16b() and HAL_NAND_Write_SpareArea_16b()
HAL OPAMP driver
-Add callback registration feature
-HAL OSPI driver
-Add callback registration feature
-HAL PCD driver
-Fix USB double buffer issue in PCD_SET_EP_DBUF1_CNT() macro
Add callback registration feature
-HAL QSPI driver
-Fix HAL_QSPI_Receive_IT() to avoid early clear of TE and TC flags
Add callback registration feature
-HAL RCC driver
-HAL RNG driver
-Add callback registration feature
-HAL RTC driver
-Add callback registration feature
-HAL SAI driver
-Add callback registration feature
-HAL SMBUS driver
-Add callback registration feature
-Fix typo in FileFormatGroup field of HAL_SD_CardCSDTypedef
Add callback registration feature
-HAL SMARTCARD driver
-Add callback registration feature
-HAL SPI driver
-Add callback registration feature
-HAL SWPMI driver
-Fix in HWL_SWPMI_EnableLoopback() to enable entering loopback mode after SWPMI initialization
Add callback registration feature
-HAL TIM driver
-Add callback registration feature
-HAL TSC driver
-Add callback registration feature
-HAL UART driver
-Add wakeup capability from Stop mode when clocked by LSE
-Remove the following APIs since only applicable to HAL USART and not HAL UART
HAL_UARTEx_EnableSlaveMode(), HAL_UARTEx_DisableSlaveMode() and HAL_UARTEx_ConfigNSS()
-
Add callback registration feature
-HAL USART driver
-Add callback registration feature
-HAL WWDG driver
-Add callback registration feature
-LL drivers changes
-LL ADC driver
-LL LPUART driver
-Add wakeup capability from Stop mode when clocked by LSE
-LL RTC driver
-LL SPI driver
-LL Â USART driver
-HAL drivers changes
-Rework of HAL CAN driver (compatibility break)
-A new HAL CAN driver has been redesigned with new APIs, to bypass limitations on CAN Tx/Rx FIFO management present with previous HAL CAN driver version.
-The new HAL CAN driver is the recommended version. It is located as usual in Drivers/STM32L4xx_HAL_Driver/Src and drivers/STM32L4xx_HAL_Driver/Inc folders. It can be enabled through switch HAL_CAN_MODULE_ENABLED in stm32l4xx_hal_conf.h
-The legacy HAL CAN driver is also present in the release in drivers/STM32L4xx_HAL_Driver/Src/Legacy and drivers/STM32L4xx_HAL_Driver/Inc/Legacy folders for software compatibility reasons. Its usage is not recommended as deprecated. It can however be enabled through switch HAL_CAN_LEGACY_MODULE_ENABLED in stm32l4xx_hal_conf.h
-Short migration guide:
-Fields of CAN_InitTypeDef structure are renamed Â
-SJW to SyncJumpWidth, BS1 to TimeSeg1, BS2 to TimeSeg2, TTCM to TimeTriggeredMode, ABOM to AutoBusOff, AWUM to AutoWakeUp, NART to AutoRetransmission (inversed), RFLM to ReceiveFifoLocked and TXFP to TransmitFifoPriority
HAL_CAN_RxCpltCallback() is split into HAL_CAN_RxFifo0MsgPendingCallback() and HAL_CAN_RxFifo1MsgPendingCallback()
More complete "how to use the new driver" is detailed in the driver header section itself.
-HAL CORTEX driver
-HAL CRC driver
-HAL FLASH driver
-HAL OSPI driver
-HAL RCC driver
-RCC_RTCCLKSOURCE_NO_CLK enamed to RCC_RTCCLKSOURCE_NONE
HAL_RCC_DeInit() updates
-Fix MISRA C-2004 rule 10.6Â ('U' suffix)
HAL TIM driver
-LL drivers changes
-LL CRC driver
-LL RCC driver
-Add LL_RCC_PLL_SetMainSource() and LL_RCC_HSI_IsEnabledInStopMode() APIs
LL_RCC_DeInit() update
-Fix IS_LL_RCC_I2C_CLKSOURCE() assert macro
HAL drivers changes
-HALÂ generic driver
-HAL ADC driver
-HAL DSI driver
-HAL FLASH driver
-HAL I2C driver
-Fix RD_WRN bit management in case of I2C_NO_STARTSTOP request
-
HAL OSPI driver
-HAL QSPI driver
-HAL RCC driver
-HAL SDMMC driver
-HAL SMBUS driver
-LL drivers changes
-**LLDACÂ driver
-LL DMA2D driver
-LL I2C driver
-LL RCC driver
-Update SDMMC1 clock source selection on STM32L4Rx/STM32L4Sx devices to select PLL divider "P" output instead of internal multiplexor on MSI, HSI48, PLLSAI1 or PLL "Q" outputs as SDMMC1 kernel clock source
Add LL_RCC_SetSDMMCKernelClockSource(), LL_RCC_GetSDMMCKernelClockSource() and LL_RCC_GetSDMMCKernelClockFreq() APIs
-
Release of HAL and Low Layer drivers to add support of STM32L4R5xx/STM32L4R7xx/STM32L4R9xx/STM32L4S5xx/STM32L4S7xx/STM32L4S9xx devices
New OctoSPI, DSI, LTDC, GFXMMU peripherals supported in new HAL OSPI, HAL DSI, HAL LTDC and HAL GFXMMU drivers
Superset features device STM32L4S9xx API User Manual available (STM32L4S9xx_User_Manual.chm)Â Â
   ## Contents
-HAL drivers changes
-HAL OSPI driver (NEW):stm32l4xx_hal_ospi.h/.c files
HALÂ generic driver
-HAL CAN driver
-HAL CRYP driver
-HAL DAC driverÂ
-HAL DMA driver
-Fix DMAMUX synchronization signal configuration in HAL_DMAEx_ConfigMuxSync()
Support of DMAMUX1 peripheral via new DMA Extension APIs
HAL_DMAEx_MUX_IRQHandler()
HAL DFSDM driver extension (new stm32l4xx_hal_dfsdm_ex.h/.c)
-HAL DFSDM driver
-HAL FLASH driverÂ
-HAL FMC driver
-HAL HASH driver
-HAL HCD/PCD driver
-HAL IRDA driver
-Add Clock Prescaler management for STM32L4Rx/STM32L4Sx devices only
IRDA_InitTypeDef structure update to add ClockPrescaler parameter
HAL PCDÂ driverÂ
-HAL PWR driver
-Add PWR_REGULATOR_VOLTAGE_SCALE1_BOOST new parameter value for HAL_PWREx_ControlVoltageScaling() to use higher supply voltage (1.28V) with main regulator voltage in range 1 above 80Mhz (maximum frequency equals to 120Mhz) for STM32L4Rx/STM32L4Sx devices Â
Add SRAM3 retention management APIs:Â HAL_PWREx_EnableSRAM3ContentRetention() and HAL_PWREx_DisableSRAM3ContentRetention()
Add DSI pins pull-down management
new HAL_PWREx_EnableDSIPinsPDActivation() and HAL_PWREx_DisableDSIPinsPDActivation APIs
HAL RCC driverÂ
-Fix HAL_RCCEx_GetPeriphCLKFreq() to take into account PLLSAI1 and PLLSAI2 divider M values (1 to 16 range) on STM32L4Rx/STM32L4Sx devices
Add undershoot/overshoot management in HAL_RCC_ClockConfig() when switching to/from system clock from main PLL above 80Mhz
HAL RNG driverÂ
-Add support of Clock Error detection and Bypass mode management in new RNG_InitTypeDef and HAL_RNG_Init() API
parameters ClockErrorDetection and BypassMode added in new RNG_InitTypeDef
HAL RTC driver
-HAL SAI driver
-Add FIFO flush in HAL_SAI_DMAStop()
Fix HAL_SAI_Transmit_DMA() to follow the slave TX mode sequence described in the Reference Manual
HAL SD driver
-Major rework of HAL SD driver aligned with STM32F7 series
BlockSize parameter removed in Read&Write block APIs since 512 byte size is always read&write.
HAL SMARTCARD driver
-Add Clock Prescaler management for STM32L4Rx/STM32L4Sx devices only
SMARTCARD_InitTypeDef structure update to add ClockPrescaler parameter
Add FIFO mode management for STM32L4Rx/STM32L4Sx devices only
new HAL_SMARTCARDEx_EnableFifoMode(), HAL_SMARTCARDEx_DisableFifoMode(), HAL_SMARTCARDEx_SetTxFifoThreshold(), HAL_SMARTCARDEx_SetRxFifoThreshold(), HAL_SMARTCARDEx_RxFifoFullCallback() and HAL_SMARTCARDEx_TxFifoEmptyCallback APIs
HAL SMBUS driver
-HAL SPI driver
-HAL SWPMI driver
-HAL TIM driver
-HAL UART driver
-Add FIFO mode management for STM32L4Rx/STM32L4Sx devices only
new HAL_UARTEx_EnableFifoMode(), HAL_UARTEx_DisableFifoMode(), HAL_UARTEx_SetTxFifoThreshold(), HAL_UARTEx_SetRxFifoThreshold(), HAL_UARTEx_RxFifoFullCallback() and HAL_UARTEx_TxFifoEmptyCallback APIs
Add SPI Slave mode management for STM32L4Rx/STM32L4Sx devices only
new HAL_UARTEx_EnableSlaveMode(), HAL_UARTEx_DisableSlaveMode() and HAL_UARTEx_ConfigNSS()
HAL USART driver (new stm32l4xx_hal_usart_ex.c)
-Add Clock Prescaler management for STM32L4Rx/STM32L4Sx devices only
Add FIFO mode management for STM32L4Rx/STM32L4Sx devices only
new HAL_USARTEx_EnableFifoMode(), HAL_USARTEx_DisableFifoMode(), HAL_USARTEx_SetTxFifoThreshold(), HAL_USARTEx_SetRxFifoThreshold(), HAL_USARTEx_RxFifoFullCallback() and HAL_USARTEx_TxFifoEmptyCallback APIs
Add SPI Slave mode management for STM32L4Rx/STM32L4Sx devices only
new HAL_USARTEx_EnableSlaveMode(), HAL_USARTEx_DisableSlaveMode() and HAL_USARTEx_ConfigNSS()
LL drivers changes
-LL DMAMUX driver (NEW): stm32l4xx_ll_dmamux.h
-All LL drivers update to remove usage of CMSIS POSITION_VAL() macro and resort to xx_Pos position bit definition
-LL ADC
-LL BUSÂ
-LL DMA
-LL DMA2D
-LL EXTIÂ
-LL I2C
-LL LPUART / LL USART
-LL PWR
-Add SRAM3 retention management APIsÂ
LL_PWR_EnableSRAM3Retention(), LL_PWR_DisableSRAM3Retention() and LL_PWR_IsEnabledSRAM3Retention()
Add voltage range 1 boost mode APIs
LL_PWR_EnableRange1BoostMode(), LL_PWR_DisableRange1BoostMode() and LL_PWR_IsEnabledRange1BoostMode()
For compatibility purpose accross STM32 series, rename LL_PWR_IsActiveFlag_VOSF() to LL_PWR_IsActiveFlag_VOS()
Add DSI pins pull-down management
new LL_PWR_EnableDSIPinsPDActivation(), LL_PWR_DisableDSIPinsPDActivation() and LL_PWR_IsEnabledDSIPinsPDActivation APIs
LL RCC
-Add management of new peripheral clock sources for DSI, LTDC, OSPI1, OSPI2 and SDMMC
Add new definitions for main PLL divider M values above LL_RCC_PLLM_DIV_8 and up to LL_RCC_PLLM_DIV_16 for STM32L4Rx/STM32L4Sx devices
Fix in __LL_RCC_CALC_PLLCLK_SAI_FREQ(), __LL_RCC_CALC_PLLSAI1_SAI_FREQ(), __LL_RCC_CALC_PLLSAI1_48M_FREQ(), __LL_RCC_CALC_PLLSAI1_ADC_FREQ(), __LL_RCC_CALC_PLLSAI2_SAI_FREQ()
Fix in LL_RCC_PLLSAI1_ConfigDomain_48M(), LL_RCC_PLLSAI1_ConfigDomain_SAI(), LL_RCC_PLLSAI1_ConfigDomain_ADC(), LL_RCC_PLLSAI1_GetP(), LL_RCC_PLLSAI2_ConfigDomain_SAI() and LL_RCC_PLLSAI2_GetP()
Fix LL_RCC_GetSDMMCClockFreq() to take into account all SDMMC1 possible clock sources
Add HSI48 oscillator clock source value for RNG and USB:Â
-General fixes
-
LL RNG
-Add Clock Error detection and Bypass mode management in new LL_RNG_InitTypeDef and new LL_RNG_Init() API
-LL RTC
-LL SYSTEM
-LL TIM
-LL UTILS
-HAL drivers changes
-HAL CAN driver
-HAL CRC driver
-HAL DCMI driver
-HALÂ FLASH driver
-HAL HASH driver
-LL drivers changes
-LL RCC
-LL RTC
-LL TIM
-HAL drivers changes
-HALÂ generic driver
-HAL DAC driver
-HAL HASH driver
-HAL PCD driver
-HAL RTC driver
-LL drivers changes
-LL ADC
-LL DMAÂ
-HAL drivers changes
-The following changes done on the HALÂ drivers require an update on the application code based on older HAL versions
-Overall rework of the driver for a more efficient implementation
-Refer to the following examples in STM32CubeL4 firmware package V1.7.0 to identify the changes: BSP example and USB_Device/MSC_Standalone application
-HAL generic update
-stm32l4xx_hal_conf_template.h updated for new HAL DCMI, HAL DMA2D and HAL HASH
#define HAL_HASH_MODULE_ENABLED
HAL_Delay() updated to guarantee minimum delay
HAL CAN driver
-HAL GPIO driver
-HAL PWR driver
-HAL QSPI driver
-HAL RCC driver
-Add new macros for new peripherals clock and reset for CAN2, DCMI, DMA2D, GPIOI and HASH
Fix HAL_RCCEx_GetPeriphCLKFreq() to compute peripheral frequencies from MSI frequency
Fix HAL_RCCEx_GetPeriphCLKFreq() to compute DFSDM1 frequency from PCLK2 frequency
Rename some peripheral clock sources to specify the corresponding APB clock:
RCC_DFSDM1CLKSOURCE_PCLK to RCC_DFSDM1CLKSOURCE_PCLK2
RCC_SWPMI1CLKSOURCE_PCLK to RCC_SWPMI1CLKSOURCE_PCLK1
RCC_LPTIMxCLKSOURCE_PCLK to RCC_LPTIMxCLKSOURCE_PCLK1
HAL RTC driver
-HAL SPI driver
-HAL TIM driver
-HAL SWPMI driver
-LL drivers changes
-LL DMA2DÂ driver (NEW)
LL BUS
-LL PWR
-LL RCC
-LL SDMMC
-LL TIM
-HAL drivers changes
-HAL CRYPÂ driver
-HAL CRYP exported macros alignment with other STM32 series to use CRYP handle address as parameter in:
__HAL_CRYP_ENABLE(), __HAL_CRYP_DISABLE(), __HAL_CRYP_SET_OPERATINGMODE(), __HAL_CRYP_SET_CHAININGMODE(), __HAL_CRYP_GET_FLAG(), __HAL_CRYP_CLEAR_FLAG(), __HAL_CRYP_GET_IT_SOURCE(), __HAL_CRYP_GET_IT(), __HAL_CRYP_CLEAR_IT(), __HAL_CRYP_ENABLE_IT() and __HAL_CRYP_DISABLE_IT()
HAL FLASHÂ driver
-Temporary data cache deactivation onÂ
-To insure LSB/MSB address order in C compiler assembly output, split 64-bit programming in 2 double-word write operations
HAL I2C driver
-HAL SMBUS driver
-HAL RTC driver
-Fix CodeSonar warnings inÂ
-LL drivers changes
-LL I2C driver
-LL SYSTEM driver
-LL TIM driver
-New APIs to insure BDTR register initialization in a single write operationÂ
LL_TIM_BDTR_Init()
LL UTILS driver
-HAL drivers changes
-HAL ADC driver
-HAL DAC driver
-HAL FLASH driver
-HAL I2C driver
-HAL IRDA driver
-Add transfer abort functions and associated callbacks in interrupt mode
-HAL RTC driver
-HAL SMARTCARD driver
-Add transfer abort functions and associated callbacks in interrupt mode
-IRQ Handler + DMA model optimizations
HAL SMBUS driver
-HAL SPI driver
-USE_SPI_CRCcompilation define added to provide the mean to optimize the HAL SPI driver when CRC feature is not used (when CRC is used, application must be changed to set USE_SPI_CRC in stm32l4xx_hal_conf.h (see Inc\stm32l4xx_hal_conf_template.h))
HAL SWPMI driver
-HAL UART driver
-HALÂ USART driver
-New APIs to abort USART tranfer with associated callbacks added
-LL drivers changes
-LL COMP driver
-HAL drivers changes
-HAL ADC driver
-HAL CRC driver
-LL drivers changes
-HAL drivers changes
-Enhance HAL delay and timebase implementation
-The following changes done on the HAL drivers require an update on the application code based on HAL V1.4.0.
-HAL RCC driver
-To use PLLSAI1 and PLLSAI2 indidependently from main system PLL, PLLSAI1 & PLLSAI2 initialization enriched to add PLL entry clock source and divider M
RCC_PLLSAI1InitTypeDef includes PLLSAI1Source and PLLSAI1M new fields
RCC_PLLSAI2InitTypeDef includes PLLSAI2Source and PLLSAI2M new fields
Add missing RTC clock source definition RCC_RTCCLKSOURCE_NO_CLK
Add missing RTC clock source definition RCC_RTCCLKSOURCE_NO_CLK
HAL I2C driver
-Update to avoid waiting on STOPF/BTF/AF flag under DMA ISR by using the PPP end of transfer interrupt in the DMA transfer process. This requires the following updates on user application:
In stm32l4xx_it.c file, I2Cx_IRQHandler() function: add a call to HAL_I2C_IRQHandler() function
HALÂ UART/USART drivers
-HAL IRDA/SMARTCARD drivers
-HAL SPI driver
-HAL QSPI driver
-Add the management of non-blocking transfer abort service:Â HAL_QSPI_Abort_IT(). In this case the user must:
-HAL IWDG driver
-HAL WWDG driver
-HAL DMA driver
-Global driver code optimization to reduce memory footprintÂ
Add __HAL_DMA_GET_COUNTER() macro
-
HAL GPIO driver
-HAL PCD driver
-HAL TIM driver
-HAL SAI driver
-Update HAL_SAI_IRQHandler:
Add error management in case of DMA transfer through HAL_DMA_Abort_IT() and DMAXferAbortCallback()
HAL SWPMI driver
-LL drivers changes
-LL RCC driver
-LL SYSTEM driver
New API LL_FLASH_IsPrefetchEnabled()
HAL drivers changes
-HAL generic update
-HAL IRDA/SMARTCARD/UART/USART update
-LL drivers changes
-LL ADC update
-Trigger sources renaming:
-Oversamping data shift renaming:
-Trigger sources renaming:
-HAL drivers changes
-HAL generic update
-HAL COMP update
-HAL CRYP update
-HAL DMA update
-HAL FLASH update
-HAL I2C update
-HAL IRDA update
-HAL SD update
-HAL SMARTCARD update
-HAL UART update
-HAL USART update
-LL drivers changes
-LL UTILS update (user code impacted!)
-Move the following functions declaration from stm32l4xx_ll_utils.h to stm32l4xx_ll_utils.c file
LL_mDelay(), LL_Init1msTick() and LL_SetSystemCoreClock()
LL ADC update
-LL COMP update
-Rename InputInverting and InputNonInverting APIs
-Remove LL_COMP_SetWindowMode() and LL_COMP_GetWindowMode()
-
LL DMA update
-LL GPIO update
-LL I2C update
-LL LPTIM update
-Add missing functions
-LL OPAMP update
-Rename power range APIs
-LL SPI update
-LL SWPMI update
-LLÂ TIM update
-Add missing functions
-LL USART update
-HAL OPAMP update
-update SAI block synchronization selection (User application code impacted)
Replace uncomplete SAI_SYNCHRONOUS_EXT value for with SAI_SYNCHRONOUS_EXT_SAI1 and SAI_SYNCHRONOUS_EXT_SAI2
Update external synchronization input selection (User application code impacted)
Remove useless SAI_SYNCEXT_IN_ENABLE value for SynchroExt field in SAI_InitTypeDef structure
Add support of 24bits configuration in PCM protocol
Add codec not ready interrupt management
Fix computation of data size, frame length, active frame length, slot size and first bit offset in I2S protocol
Fix mute counter setting in HAL_SAI_EnableRxMuteMode()
Fix ambiguous clock strobing values: fix HAL_SAI_Init() to set correct CKSTR bits in SAI_xCR1 according to ClockStrobing and AudioMode parameters
Fill in the Fifo before enable interrupt in HAL_SAI_Transmit_IT()
Fix companding mode management in HAL_SAI_Init()
-
HAL TSC update
-HAL NOR/HAL SRAM/FMC update
-LL PWR update (User application code impacted)
-LL PWR API change to add new Stop 0 mode and update Stop 1 mode definition
Change LL_PWR_SetPowerMode(uint32_t LowPowerMode) possible LowPowerMode]{style=“font-style: italic;â€} values** updateÂ
LL_PWR_MODE_STOP1_LP_REGU renamed into LL_PWR_MODE_STOP1
Application code using LL_PWR_SetPowerMode(LL_PWR_MODE_STOP1_LP_REGU) must be updated to use LL_PWR_SetPowerMode(LL_PWR_MODE_STOP1)
LL_PWR_MODE_STOP1_MAIN_REGU renamed into LL_PWR_MODE_STOP0
Application code using LL_PWR_SetPowerMode(LL_PWR_MODE_STOP1_MAIN_REGU) must be updated to use LL_PWR_SetPowerMode(LL_PWR_MODE_STOP0)
HAL generic update
-HAL TIM update
-LL ADC update
-LL RCC update
-LL UTILS update
-Add Low Layer drivers allowing performance and footprint optimization
-Low Layer drivers are available for: ADC, COMP, Cortex, CRC, DAC, DMA, EXTI, GPIO, I2C, IWDG, LPYIM, LPUART, OPAMP, PWR, RCC, RNG, RTC, SPI, SWPMI, TIM, USART, WWDG peripherals and additionnal Low Level Bus, System and Utilities APIs.
-
Low Layer drivers APIs are implemented as static inline function in new Inc/stm32l4xx_ll_ppp.h files for PPP peripherals, there is no configuration file and each stm32l4xx_ll_ppp.h file must be included in user code.
HAL ADC update
-HAL CAN update
-HAL COMP update
-HAL CRC update
-HAL DMA update
-HAL FLASH update
-HAL GPIO update
-HAL PWR update
-HAL RCC update
-Update HAL_RCCEx_GetPeriphCLKFreq() to return the frequency in Hz applied to peripherals via HAL_RCCEx_PeriphCLKConfig()
-
Remove old workaround on LSE drive medium configuration values
HAL SPI update
-HAL TIM update
-HAL UART update
-