Skip to content

Commit 7d99b41

Browse files
committed
system(u5) update STM32U5xx HAL Drivers to v1.6.3
Included in STM32CubeU5 FW v1.9.0 Signed-off-by: Frederic Pillon <frederic.pillon@st.com>
1 parent a06d4f6 commit 7d99b41

66 files changed

Lines changed: 1693 additions & 964 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h‎

Lines changed: 27 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,9 @@ extern "C" {
361361
#if defined(STM32L4R5xx) || defined(STM32L4R9xx) || defined(STM32L4R9xx) || defined(STM32L4S5xx) || \
362362
defined(STM32L4S7xx) || defined(STM32L4S9xx)
363363
#define DMA_REQUEST_DCMI_PSSI DMA_REQUEST_DCMI
364-
#endif
364+
#elif defined(STM32L4P5xx) || defined(STM32L4Q5xx)
365+
#define DMA_REQUEST_PSSI DMA_REQUEST_DCMI_PSSI
366+
#endif /* STM32L4R5xx || STM32L4R9xx || STM32L4R9xx || STM32L4S5xx || STM32L4S7xx || STM32L4S9xx */
365367

366368
#endif /* STM32L4 */
367369

@@ -1915,7 +1917,11 @@ extern "C" {
19151917
#define HAL_PWREx_DisableSDADCAnalog HAL_PWREx_DisableSDADC
19161918
#define HAL_PWREx_EnableSDADCAnalog HAL_PWREx_EnableSDADC
19171919
#define HAL_PWREx_PVMConfig HAL_PWREx_ConfigPVM
1918-
1920+
#if defined(STM32G0C1xx) || defined(STM32G0B1xx)
1921+
#define PWR_PVM_USB PWR_PVM_ENABLE
1922+
#define PWR_FLAG_PVMOUSB PWR_FLAG_PVMOVDDIO2
1923+
#define PWR_FLAG_PVMO_USB PWR_FLAG_PVMO_VDDIO2
1924+
#endif /* STM32G0C1xx || STM32G0B1xx */
19191925
#define PWR_MODE_NORMAL PWR_PVD_MODE_NORMAL
19201926
#define PWR_MODE_IT_RISING PWR_PVD_MODE_IT_RISING
19211927
#define PWR_MODE_IT_FALLING PWR_PVD_MODE_IT_FALLING
@@ -2028,6 +2034,9 @@ extern "C" {
20282034

20292035
#define PWR_ALL_RAM_RUN_RETENTION_MASK PWR_ALL_RAM_RUN_MASK
20302036
#endif
2037+
#if defined (STM32H7RS)
2038+
#define PWR_SMPS_1V8_SUPPLIES_EXT_AND_LDO PWR_SMPS_1V8_SUPPLIES_EXT_VDD_SUPPLIES_LDO
2039+
#endif
20312040

20322041
/**
20332042
* @}
@@ -2149,6 +2158,20 @@ extern "C" {
21492158
#define UFB_MODE_BitNumber UFB_MODE_BIT_NUMBER
21502159
#define CMP_PD_BitNumber CMP_PD_BIT_NUMBER
21512160

2161+
#if defined(STM32H7RS) || defined(STM32N6)
2162+
#define FMC_SWAPBMAP_DISABLE FMC_SWAPBANK_MODE0
2163+
#define FMC_SWAPBMAP_SDRAM_SRAM FMC_SWAPBANK_MODE1
2164+
#define HAL_SetFMCMemorySwappingConfig HAL_FMC_SetBankSwapConfig
2165+
#define HAL_GetFMCMemorySwappingConfig HAL_FMC_GetBankSwapConfig
2166+
#endif /* STM32H7RS || STM32N6 */
2167+
2168+
#if defined(STM32N6)
2169+
/* alias CMSIS */
2170+
#define CSI_PCR_PWRDOWN_Pos CSI_PCR_NPWRDOWN_Pos
2171+
#define CSI_PCR_PWRDOWN_Msk CSI_PCR_NPWRDOWN_Msk
2172+
#define CSI_PCR_PWRDOWN CSI_PCR_NPWRDOWN
2173+
#endif /* STM32N6 */
2174+
21522175
/**
21532176
* @}
21542177
*/
@@ -3701,9 +3724,7 @@ extern "C" {
37013724
#define RCC_SYSCLKSOURCE_STATUS_PLLR RCC_SYSCLKSOURCE_STATUS_PLLCLK
37023725
#endif
37033726

3704-
#if defined(STM32L4) || defined(STM32WB) || defined(STM32G0) || defined(STM32G4) || defined(STM32L5) || \
3705-
defined(STM32WL) || defined(STM32C0) || defined(STM32N6) || defined(STM32H7RS) || \
3706-
defined(STM32U0)
3727+
#if defined(STM32L4) || defined(STM32WB) || defined(STM32G0) || defined(STM32G4) || defined(STM32L5) || defined(STM32WL) || defined(STM32C0) || defined(STM32N6) || defined(STM32H7RS) || defined(STM32U0)
37073728
#define RCC_RTCCLKSOURCE_NO_CLK RCC_RTCCLKSOURCE_NONE
37083729
#else
37093730
#define RCC_RTCCLKSOURCE_NONE RCC_RTCCLKSOURCE_NO_CLK
@@ -3952,10 +3973,7 @@ extern "C" {
39523973
/** @defgroup HAL_RTC_Aliased_Macros HAL RTC Aliased Macros maintained for legacy purpose
39533974
* @{
39543975
*/
3955-
#if defined (STM32G0) || defined (STM32L5) || defined (STM32L412xx) || defined (STM32L422xx) || \
3956-
defined (STM32L4P5xx)|| defined (STM32L4Q5xx) || defined (STM32G4) || defined (STM32WL) || defined (STM32U5) || \
3957-
defined (STM32WBA) || defined (STM32H5) || \
3958-
defined (STM32C0) || defined (STM32N6) || defined (STM32H7RS) || defined (STM32U0) || defined (STM32U3)
3976+
#if defined (STM32G0) || defined (STM32L5) || defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L4P5xx)|| defined (STM32L4Q5xx) || defined (STM32G4) || defined (STM32WL) || defined (STM32U5) || defined (STM32WBA) || defined (STM32H5) || defined (STM32C0) || defined (STM32N6) || defined (STM32H7RS) || defined (STM32U0) || defined (STM32U3)
39593977
#else
39603978
#define __HAL_RTC_CLEAR_FLAG __HAL_RTC_EXTI_CLEAR_FLAG
39613979
#endif

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_adc.h‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2055,6 +2055,7 @@ typedef void (*pADC_CallbackTypeDef)(ADC_HandleTypeDef *hadc); /*!< pointer to
20552055
* @note ADC conversion data full-scale corresponds to voltage range
20562056
* determined by analog voltage references Vref+ and Vref-
20572057
* (refer to reference manual).
2058+
* @param __ADC_INSTANCE__ ADC instance
20582059
* @param __ADC_RESOLUTION__ This parameter can be one of the following values:
20592060
* @arg @ref ADC_RESOLUTION_14B
20602061
* @arg @ref ADC_RESOLUTION_12B
@@ -2066,8 +2067,8 @@ typedef void (*pADC_CallbackTypeDef)(ADC_HandleTypeDef *hadc); /*!< pointer to
20662067
* (2) On STM32U5, parameter available only on ADC instance: ADC4.\n
20672068
* @retval ADC conversion data full-scale digital value
20682069
*/
2069-
#define __HAL_ADC_DIGITAL_SCALE(__ADC_RESOLUTION__) \
2070-
__LL_ADC_DIGITAL_SCALE((__ADC_RESOLUTION__))
2070+
#define __HAL_ADC_DIGITAL_SCALE(__ADC_INSTANCE__, __ADC_RESOLUTION__) \
2071+
__LL_ADC_DIGITAL_SCALE((__ADC_INSTANCE__), (__ADC_RESOLUTION__))
20712072

20722073
/**
20732074
* @brief Helper macro to convert the ADC conversion data from

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_crc.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -308,8 +308,8 @@ void HAL_CRC_MspDeInit(CRC_HandleTypeDef *hcrc);
308308
/** @defgroup CRC_Exported_Functions_Group2 Peripheral Control functions
309309
* @{
310310
*/
311-
uint32_t HAL_CRC_Accumulate(CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength);
312-
uint32_t HAL_CRC_Calculate(CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength);
311+
uint32_t HAL_CRC_Accumulate(CRC_HandleTypeDef *hcrc, const uint32_t pBuffer[], uint32_t BufferLength);
312+
uint32_t HAL_CRC_Calculate(CRC_HandleTypeDef *hcrc, const uint32_t pBuffer[], uint32_t BufferLength);
313313
/**
314314
* @}
315315
*/

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_cryp.h‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,8 @@ typedef void (*pCRYP_CallbackTypeDef)(CRYP_HandleTypeDef *hcryp); /*!< point
502502
& (CRYP_FLAG_KEIF)) == (CRYP_FLAG_KEIF))?SET:RESET) : \
503503
((__FLAG__) == CRYP_FLAG_RWEIF )?((((__HANDLE__)->Instance->ISR \
504504
& (CRYP_FLAG_RWEIF)) == (CRYP_FLAG_RWEIF))?SET:RESET) : \
505-
((((__HANDLE__)->Instance->ISR & (CRYP_FLAG_CCF)) == (CRYP_FLAG_CCF)))?SET:RESET)
505+
((((__HANDLE__)->Instance->ISR & (CRYP_FLAG_CCF)) == \
506+
(CRYP_FLAG_CCF)))?SET:RESET)
506507

507508
/** @brief Clear the CRYP pending status flag.
508509
* @param __HANDLE__ specifies the CRYP handle.

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_dma2d.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -658,7 +658,7 @@ uint32_t HAL_DMA2D_GetError(const DMA2D_HandleTypeDef *hdma2d);
658658
#define IS_DMA2D_PIXEL(PIXEL) ((PIXEL) <= DMA2D_PIXEL)
659659
#define IS_DMA2D_OFFSET(OOFFSET) ((OOFFSET) <= DMA2D_OFFSET)
660660

661-
#if defined(DMA2D_FGPFCCR_CSS)
661+
#if defined(DMA2D_FGPFCCR_CSS)
662662
#define IS_DMA2D_INPUT_COLOR_MODE(INPUT_CM) (((INPUT_CM) == DMA2D_INPUT_ARGB8888) || \
663663
((INPUT_CM) == DMA2D_INPUT_RGB888) || \
664664
((INPUT_CM) == DMA2D_INPUT_RGB565) || \

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_flash.h‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -903,6 +903,12 @@ void HAL_FLASH_OperationErrorCallback(uint32_t ReturnValue);
903903
*/
904904
HAL_StatusTypeDef HAL_FLASH_Unlock(void);
905905
HAL_StatusTypeDef HAL_FLASH_Lock(void);
906+
#if defined(__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
907+
HAL_StatusTypeDef HAL_FLASH_Unlock_NS(void);
908+
HAL_StatusTypeDef HAL_FLASH_Lock_NS(void);
909+
HAL_StatusTypeDef HAL_FLASH_Unlock_S(void);
910+
HAL_StatusTypeDef HAL_FLASH_Lock_S(void);
911+
#endif /* __ARM_FEATURE_CMSE */
906912
/* Option bytes control */
907913
HAL_StatusTypeDef HAL_FLASH_OB_Unlock(void);
908914
HAL_StatusTypeDef HAL_FLASH_OB_Lock(void);

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_hcd.h‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,8 @@ typedef struct
163163
*/
164164
#define HCD_PHY_ULPI 1U
165165
#define HCD_PHY_EMBEDDED 2U
166+
#define HCD_HS_PHY_EMBEDDED 3U
167+
#define HCD_PHY_UTMI 3U
166168
/**
167169
* @}
168170
*/

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_lptim.h‎

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -573,18 +573,14 @@ typedef void (*pLPTIM_CallbackTypeDef)(LPTIM_HandleTypeDef *hlptim); /*!< poin
573573
/**
574574
* @brief Disable the LPTIM peripheral.
575575
* @param __HANDLE__ LPTIM handle
576+
* @note The following sequence is required to solve LPTIM disable HW limitation.
577+
* Please check Errata Sheet ES0335 for more details under "MCU may remain
578+
* stuck in LPTIM interrupt when entering Stop mode" section.
579+
* @note Please call @ref HAL_LPTIM_GetState() after a call to __HAL_LPTIM_DISABLE to
580+
* check for TIMEOUT.
576581
* @retval None
577582
*/
578-
#define __HAL_LPTIM_DISABLE(__HANDLE__) \
579-
do { \
580-
if (((__HANDLE__)->Instance->CCMR1 & LPTIM_CCMR1_CC1E) == 0UL) \
581-
{ \
582-
if(((__HANDLE__)->Instance->CCMR1 & LPTIM_CCMR1_CC2E) == 0UL) \
583-
{ \
584-
(__HANDLE__)->Instance->CR &= ~(LPTIM_CR_ENABLE); \
585-
} \
586-
} \
587-
} while(0)
583+
#define __HAL_LPTIM_DISABLE(__HANDLE__) LPTIM_Disable(__HANDLE__)
588584

589585
/**
590586
* @brief Start the LPTIM peripheral in Continuous mode.
@@ -977,9 +973,9 @@ void HAL_LPTIM_IC_OverCaptureCallback(LPTIM_HandleTypeDef *hlptim);
977973

978974
/* Callbacks Register/UnRegister functions ***********************************/
979975
#if (USE_HAL_LPTIM_REGISTER_CALLBACKS == 1)
980-
HAL_StatusTypeDef HAL_LPTIM_RegisterCallback(LPTIM_HandleTypeDef *lphtim, HAL_LPTIM_CallbackIDTypeDef CallbackID,
976+
HAL_StatusTypeDef HAL_LPTIM_RegisterCallback(LPTIM_HandleTypeDef *hlptim, HAL_LPTIM_CallbackIDTypeDef CallbackID,
981977
pLPTIM_CallbackTypeDef pCallback);
982-
HAL_StatusTypeDef HAL_LPTIM_UnRegisterCallback(LPTIM_HandleTypeDef *lphtim, HAL_LPTIM_CallbackIDTypeDef CallbackID);
978+
HAL_StatusTypeDef HAL_LPTIM_UnRegisterCallback(LPTIM_HandleTypeDef *hlptim, HAL_LPTIM_CallbackIDTypeDef CallbackID);
983979
#endif /* USE_HAL_LPTIM_REGISTER_CALLBACKS */
984980
/**
985981
* @}
@@ -1195,6 +1191,7 @@ HAL_LPTIM_StateTypeDef HAL_LPTIM_GetState(const LPTIM_HandleTypeDef *hlptim);
11951191
/** @defgroup LPTIM_Private_Functions LPTIM Private Functions
11961192
* @{
11971193
*/
1194+
void LPTIM_Disable(LPTIM_HandleTypeDef *hlptim);
11981195
/**
11991196
* @}
12001197
*/

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_ltdc_ex.h‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ extern "C" {
2727
/* Includes ------------------------------------------------------------------*/
2828
#include "stm32u5xx_hal_def.h"
2929

30+
#if defined(HAL_LTDC_MODULE_ENABLED) && defined(HAL_DSI_MODULE_ENABLED)
31+
3032
#if defined (LTDC) && defined (DSI)
3133

3234
#include "stm32u5xx_hal_dsi.h"
@@ -76,6 +78,8 @@ HAL_StatusTypeDef HAL_LTDCEx_StructInitFromAdaptedCommandConfig(LTDC_HandleTypeD
7678

7779
#endif /* LTDC && DSI */
7880

81+
#endif /* HAL_LTCD_MODULE_ENABLED && HAL_DSI_MODULE_ENABLED */
82+
7983
#ifdef __cplusplus
8084
}
8185
#endif

‎system/Drivers/STM32U5xx_HAL_Driver/Inc/stm32u5xx_hal_ospi.h‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -832,6 +832,7 @@ HAL_StatusTypeDef HAL_OSPI_AutoPolling_IT(OSPI_HandleTypeDef *hospi, OSPI_Au
832832

833833
/* OSPI memory-mapped mode functions */
834834
HAL_StatusTypeDef HAL_OSPI_MemoryMapped(OSPI_HandleTypeDef *hospi, OSPI_MemoryMappedTypeDef *cfg);
835+
uint32_t HAL_OSPI_IsMemoryMapped(const OSPI_HandleTypeDef *hospi);
835836

836837
/* Callback functions in non-blocking modes ***********************************/
837838
void HAL_OSPI_ErrorCallback(OSPI_HandleTypeDef *hospi);

0 commit comments

Comments
 (0)