diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h523xx.h b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h523xx.h index 039a4293e8..2a3d8d1774 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h523xx.h +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h523xx.h @@ -505,7 +505,7 @@ #define NVIC_INIT_ITNS3 1 /* -// Interrupts 96..127 +// Interrupts 96..124 // GPDMA2_Channel6_IRQn <0=> Secure state <1=> Non-Secure state // GPDMA2_Channel7_IRQn <0=> Secure state <1=> Non-Secure state // FPU_IRQn <0=> Secure state <1=> Non-Secure state diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h533xx.h b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h533xx.h index aa4972cc3a..8687ca0cfa 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h533xx.h +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/Templates/partition_stm32h533xx.h @@ -506,7 +506,7 @@ #define NVIC_INIT_ITNS3 1 /* -// Interrupts 96..127 +// Interrupts 96..124 // GPDMA2_Channel6_IRQn <0=> Secure state <1=> Non-Secure state // GPDMA2_Channel7_IRQn <0=> Secure state <1=> Non-Secure state // FPU_IRQn <0=> Secure state <1=> Non-Secure state diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/stm32h503xx.h b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/stm32h503xx.h index 5ec4cd1093..bc59cb054b 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/stm32h503xx.h +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Include/stm32h503xx.h @@ -7,7 +7,7 @@ * This file contains: * - Data structures and the address mapping for all peripherals * - Peripheral's registers declarations and bits definition - * - Macros to access peripheral’s registers hardware + * - Macros to access peripheral's registers hardware * ****************************************************************************** * @attention @@ -175,7 +175,7 @@ typedef enum /* -------- Configuration of the Cortex-M33 Processor and Core Peripherals ------ */ #define __CM33_REV 0x0000U /* Core revision r0p1 */ -#define __SAUREGION_PRESENT 1U /* SAU regions present */ +#define __SAUREGION_PRESENT 0U /* SAU regions present */ #define __MPU_PRESENT 1U /* MPU present */ #define __VTOR_PRESENT 1U /* VTOR present */ #define __NVIC_PRIO_BITS 4U /* Number of Bits used for Priority Levels */ @@ -349,7 +349,6 @@ typedef struct __IO uint32_t CR; /*!< RNG control register, Address offset: 0x00 */ __IO uint32_t SR; /*!< RNG status register, Address offset: 0x04 */ __IO uint32_t DR; /*!< RNG data register, Address offset: 0x08 */ - uint32_t RESERVED; __IO uint32_t HTCR; /*!< RNG health test configuration register, Address offset: 0x10 */ } RNG_TypeDef; @@ -1064,10 +1063,8 @@ typedef struct typedef struct { - __IO uint32_t CSR; /*!< ADC common status register, Address offset: 0x300 + 0x00 */ - uint32_t RESERVED1; /*!< Reserved, Address offset: 0x300 + 0x04 */ + uint32_t RESERVED1[2]; /*!< Reserved, Address offset: 0x300 + 0x00 */ __IO uint32_t CCR; /*!< ADC common configuration register, Address offset: 0x300 + 0x08 */ - __IO uint32_t CDR; /*!< ADC common group regular data register Address offset: 0x300 + 0x0C */ } ADC_Common_TypeDef; @@ -1262,12 +1259,10 @@ typedef struct #define ADC1_BASE_NS (AHB2PERIPH_BASE_NS + 0x08000UL) #define ADC12_COMMON_BASE_NS (AHB2PERIPH_BASE_NS + 0x08300UL) #define DAC1_BASE_NS (AHB2PERIPH_BASE_NS + 0x08400UL) - #define HASH_BASE_NS (AHB2PERIPH_BASE_NS + 0xA0400UL) #define HASH_DIGEST_BASE_NS (AHB2PERIPH_BASE_NS + 0xA0710UL) #define RNG_BASE_NS (AHB2PERIPH_BASE_NS + 0xA0800UL) - /*!< APB3 Non secure peripherals */ #define SBS_BASE_NS (APB3PERIPH_BASE_NS + 0x0400UL) #define LPUART1_BASE_NS (APB3PERIPH_BASE_NS + 0x2400UL) @@ -1284,12 +1279,10 @@ typedef struct /* Debug MCU registers base address */ #define DBGMCU_BASE (0x44024000UL) - #define PACKAGE_BASE (0x08FFF80EUL) /*!< Package data register base address */ #define UID_BASE (0x08FFF800UL) /*!< Unique device ID register base address */ #define FLASHSIZE_BASE (0x08FFF80CUL) /*!< Flash size data register base address */ - /* Internal Flash OTP Area */ #define FLASH_OTP_BASE (0x08FFF000UL) /*!< FLASH OTP (one-time programmable) base address */ #define FLASH_OTP_SIZE (0x800U) /*!< 2048 bytes OTP (one-time programmable) */ @@ -3044,11 +3037,16 @@ typedef struct #define RNG_SR_SEIS_Msk (0x1UL << RNG_SR_SEIS_Pos) /*!< 0x00000040 */ #define RNG_SR_SEIS RNG_SR_SEIS_Msk + /******************** Bits definition for RNG_HTCR register *******************/ #define RNG_HTCR_HTCFG_Pos (0U) #define RNG_HTCR_HTCFG_Msk (0xFFFFFFFFUL << RNG_HTCR_HTCFG_Pos) /*!< 0xFFFFFFFF */ #define RNG_HTCR_HTCFG RNG_HTCR_HTCFG_Msk +/******************** RNG Nist Compliance Values ******************************/ +#define RNG_CR_NIST_VALUE (0x00F00D00U) +#define RNG_HTCR_NIST_VALUE (0xAAC7U) + /******************************************************************************/ /* */ /* Digital to Analog Converter */ @@ -4368,26 +4366,26 @@ typedef struct #define EXTI_PRIVENR1_PRIV29 EXTI_PRIVENR1_PRIV29_Msk /*!< Privilege enable on line 29 */ /****************** Bit definition for EXTI_RTSR2 register *******************/ -#define EXTI_RTSR2_TR_Pos (16U) -#define EXTI_RTSR2_TR_Msk (0x24UL << EXTI_RTSR2_TR_Pos) /*!< 0x00240000 */ -#define EXTI_RTSR2_TR EXTI_RTSR2_TR_Msk /*!< Rising trigger event configuration bit */ -#define EXTI_RTSR2_TR50_Pos (18U) -#define EXTI_RTSR2_TR50_Msk (0x1UL << EXTI_RTSR2_TR50_Pos) /*!< 0x00040000 */ -#define EXTI_RTSR2_TR50 EXTI_RTSR2_TR50_Msk /*!< Rising trigger event configuration bit of line 50 */ -#define EXTI_RTSR2_TR53_Pos (21U) -#define EXTI_RTSR2_TR53_Msk (0x1UL << EXTI_RTSR2_TR53_Pos) /*!< 0x00200000 */ -#define EXTI_RTSR2_TR53 EXTI_RTSR2_TR53_Msk /*!< Rising trigger event configuration bit of line 53 */ +#define EXTI_RTSR2_RT_Pos (16U) +#define EXTI_RTSR2_RT_Msk (0x24UL << EXTI_RTSR2_RT_Pos) /*!< 0x00240000 */ +#define EXTI_RTSR2_RT EXTI_RTSR2_RT_Msk /*!< Rising trigger event configuration bit */ +#define EXTI_RTSR2_RT50_Pos (18U) +#define EXTI_RTSR2_RT50_Msk (0x1UL << EXTI_RTSR2_RT50_Pos) /*!< 0x00040000 */ +#define EXTI_RTSR2_RT50 EXTI_RTSR2_RT50_Msk /*!< Rising trigger event configuration bit of line 50 */ +#define EXTI_RTSR2_RT53_Pos (21U) +#define EXTI_RTSR2_RT53_Msk (0x1UL << EXTI_RTSR2_RT53_Pos) /*!< 0x00200000 */ +#define EXTI_RTSR2_RT53 EXTI_RTSR2_RT53_Msk /*!< Rising trigger event configuration bit of line 53 */ /****************** Bit definition for EXTI_FTSR2 register *******************/ -#define EXTI_FTSR2_TR_Pos (16U) -#define EXTI_FTSR2_TR_Msk (0x24 << EXTI_FTSR2_TR_Pos) /*!< 0x00240000 */ -#define EXTI_FTSR2_TR EXTI_FTSR2_TR_Msk /*!< Falling trigger event configuration bit */ -#define EXTI_FTSR2_TR50_Pos (18U) -#define EXTI_FTSR2_TR50_Msk (0x1UL << EXTI_FTSR2_TR50_Pos) /*!< 0x00040000 */ -#define EXTI_FTSR2_TR50 EXTI_FTSR2_TR50_Msk /*!< Falling trigger event configuration bit of line 50 */ -#define EXTI_FTSR2_TR53_Pos (21U) -#define EXTI_FTSR2_TR53_Msk (0x1UL << EXTI_FTSR2_TR53_Pos) /*!< 0x00200000 */ -#define EXTI_FTSR2_TR53 EXTI_FTSR2_TR53_Msk /*!< Falling trigger event configuration bit of line 53 */ +#define EXTI_FTSR2_FT_Pos (16U) +#define EXTI_FTSR2_FT_Msk (0x24 << EXTI_FTSR2_FT_Pos) /*!< 0x00240000 */ +#define EXTI_FTSR2_FT EXTI_FTSR2_FT_Msk /*!< Falling trigger event configuration bit */ +#define EXTI_FTSR2_FT50_Pos (18U) +#define EXTI_FTSR2_FT50_Msk (0x1UL << EXTI_FTSR2_FT50_Pos) /*!< 0x00040000 */ +#define EXTI_FTSR2_FT50 EXTI_FTSR2_FT50_Msk /*!< Falling trigger event configuration bit of line 50 */ +#define EXTI_FTSR2_FT53_Pos (21U) +#define EXTI_FTSR2_FT53_Msk (0x1UL << EXTI_FTSR2_FT53_Pos) /*!< 0x00200000 */ +#define EXTI_FTSR2_FT53 EXTI_FTSR2_FT53_Msk /*!< Falling trigger event configuration bit of line 53 */ /****************** Bit definition for EXTI_SWIER2 register ******************/ #define EXTI_SWIER2_SWIER50_Pos (18U) @@ -5580,10 +5578,10 @@ typedef struct /****************** Bits definition for FLASH_HDPEXTR register *****************/ #define FLASH_HDPEXTR_HDP1_EXT_Pos (0U) -#define FLASH_HDPEXTR_HDP1_EXT_Msk (0x7FUL << FLASH_HDPEXTR_HDP1_EXT_Pos) /*!< 0x0000007F */ +#define FLASH_HDPEXTR_HDP1_EXT_Msk (0x7UL << FLASH_HDPEXTR_HDP1_EXT_Pos) /*!< 0x00000007 */ #define FLASH_HDPEXTR_HDP1_EXT FLASH_HDPEXTR_HDP1_EXT_Msk /*!< HDP area extension in 8kB sectors in bank 1 */ #define FLASH_HDPEXTR_HDP2_EXT_Pos (16U) -#define FLASH_HDPEXTR_HDP2_EXT_Msk (0x7FUL << FLASH_HDPEXTR_HDP2_EXT_Pos) /*!< 0x007F0000 */ +#define FLASH_HDPEXTR_HDP2_EXT_Msk (0x7UL << FLASH_HDPEXTR_HDP2_EXT_Pos) /*!< 0x00070000 */ #define FLASH_HDPEXTR_HDP2_EXT FLASH_HDPEXTR_HDP2_EXT_Msk /*!< HDP area extension in 8kB sectors in bank 2 */ /******************* Bits definition for FLASH_OPTSR register ***************/ @@ -7273,27 +7271,27 @@ typedef struct /******************* Bit definition for TIM_CCR1 register *******************/ #define TIM_CCR1_CCR1_Pos (0U) -#define TIM_CCR1_CCR1_Msk (0xFFFFUL << TIM_CCR1_CCR1_Pos) /*!< 0x0000FFFF */ +#define TIM_CCR1_CCR1_Msk (0xFFFFFFFFUL << TIM_CCR1_CCR1_Pos) /*!< 0xFFFFFFFF */ #define TIM_CCR1_CCR1 TIM_CCR1_CCR1_Msk /*!Release Notes for  STM32H5xx C

Update History

- +

Main Changes

+

CMSIS Device Maintenance Release version of bits and registers definition aligned with RM0481 (STM32H5 reference manual)

+
    +
  • Add RNG_CR_NIST_VALUE, RNG_NSCR_NIST_VALUE and RNG_HTCR_NIST_VALUE defines
  • +
  • Add Bits definition for RNG_NSCR register : Add RNG_NSCR_EN_OSC1, RNG_NSCR_EN_OSC2, RNG_NSCR_EN_OSC3, RNG_NSCR_EN_OSC4, RNG_NSCR_EN_OSC5 and RNG_NSCR_EN_OSC6 defines
  • +
  • Add USART_DMAREQUESTS_SW_WA define
  • +
  • Rename EXTI_RTSR2_TR to EXTI_RTSR2_RT define
  • +
  • Rename EXTI_FTSR2_TR to EXTI_FTSR2_FT define
  • +
  • Remove unused ADC common status and ADC common group regular data registers for STM32H503xx devices
  • +
  • Fix __SAUREGION_PRESENT value to 0 for STM32H503xx devices
  • +
  • Fix incorrect character in the definition of OCTOSPI_CR register
  • +
  • Correct TIM_CCRx_CCRx constants
  • +
+
+
+
+ +
+

Main Changes

  • First official release of STM32H5xx CMSIS drivers to support STM32H533xx and STM32H523xx devices
  • Add bit definition for I3C_BCR register
  • @@ -51,7 +69,7 @@

    Main Changes

    -

    Main Changes

    +

    Main Changes

    • Add DUA addresses constants definitions for STM32H573xx devices only
    • Fix wrong definition of IS_TIM_CLOCKSOURCE_TIX_INSTANCE & IS_TIM_TISEL_INSTANCE macros
    • @@ -62,7 +80,7 @@

      Main Changes

      -

      Main Changes

      +

      Main Changes

      • First official release version of bits and registers definition aligned with RM0481 and RM0492 (STM32H5 reference manuals)
      diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h523xx.s b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h523xx.s index d870f9eacc..3e32d1dc14 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h523xx.s +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h523xx.s @@ -631,4 +631,4 @@ g_pfnVectors: .thumb_set I3C2_EV_IRQHandler,Default_Handler .weak I3C2_ER_IRQHandler - .thumb_set I3C2_ER_IRQHandler,Default_Handler \ No newline at end of file + .thumb_set I3C2_ER_IRQHandler,Default_Handler diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h533xx.s b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h533xx.s index 8dbd003123..733ad1f7d6 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h533xx.s +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h533xx.s @@ -643,4 +643,4 @@ g_pfnVectors: .thumb_set I3C2_EV_IRQHandler,Default_Handler .weak I3C2_ER_IRQHandler - .thumb_set I3C2_ER_IRQHandler,Default_Handler \ No newline at end of file + .thumb_set I3C2_ER_IRQHandler,Default_Handler diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h562xx.s b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h562xx.s index c9b678a71a..3d24d69ce7 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h562xx.s +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h562xx.s @@ -678,4 +678,4 @@ g_pfnVectors: .thumb_set LPTIM5_IRQHandler,Default_Handler .weak LPTIM6_IRQHandler - .thumb_set LPTIM6_IRQHandler,Default_Handler \ No newline at end of file + .thumb_set LPTIM6_IRQHandler,Default_Handler diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h563xx.s b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h563xx.s index d7d0d51f69..25b8725286 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h563xx.s +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h563xx.s @@ -694,4 +694,4 @@ g_pfnVectors: .thumb_set LPTIM5_IRQHandler,Default_Handler .weak LPTIM6_IRQHandler - .thumb_set LPTIM6_IRQHandler,Default_Handler \ No newline at end of file + .thumb_set LPTIM6_IRQHandler,Default_Handler diff --git a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h573xx.s b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h573xx.s index e6b9141d23..c4ee6bf4a6 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h573xx.s +++ b/system/Drivers/CMSIS/Device/ST/STM32H5xx/Source/Templates/gcc/startup_stm32h573xx.s @@ -710,4 +710,4 @@ g_pfnVectors: .thumb_set LPTIM5_IRQHandler,Default_Handler .weak LPTIM6_IRQHandler - .thumb_set LPTIM6_IRQHandler,Default_Handler \ No newline at end of file + .thumb_set LPTIM6_IRQHandler,Default_Handler diff --git a/system/Drivers/CMSIS/Device/ST/STM32YYxx_CMSIS_version.md b/system/Drivers/CMSIS/Device/ST/STM32YYxx_CMSIS_version.md index abf4c79b35..657de823e4 100644 --- a/system/Drivers/CMSIS/Device/ST/STM32YYxx_CMSIS_version.md +++ b/system/Drivers/CMSIS/Device/ST/STM32YYxx_CMSIS_version.md @@ -9,7 +9,7 @@ * STM32F7: 1.2.9 * STM32G0: 1.4.4 * STM32G4: 1.2.4 - * STM32H5: 1.2.0 + * STM32H5: 1.3.0 * STM32H7: 1.10.4 * STM32L0: 1.9.3 * STM32L1: 2.3.3