This is an automated email from the ASF dual-hosted git repository.

simbit18 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit f01134b1441a96e28e5db463ce66ca4a622319d5
Author: raiden00pl <[email protected]>
AuthorDate: Sun Aug 16 10:07:40 2026 +0200

    arch/arm/stm32h5: add support for STM32H533RE
    
    Add the STM32H53XXX support.
    
    Signed-off-by: raiden00pl <[email protected]>
    Assisted-by: Claude Code
---
 arch/arm/include/stm32h5/chip.h                    |  2 +-
 arch/arm/src/stm32h5/Kconfig                       | 38 +++++++++++++++++++++-
 arch/arm/src/stm32h5/hardware/stm32_flash.h        |  2 +-
 arch/arm/src/stm32h5/hardware/stm32_gpdma.h        |  3 +-
 arch/arm/src/stm32h5/hardware/stm32_pinmap.h       |  2 +-
 arch/arm/src/stm32h5/hardware/stm32h56xxx_pinmap.h |  3 +-
 6 files changed, 44 insertions(+), 6 deletions(-)

diff --git a/arch/arm/include/stm32h5/chip.h b/arch/arm/include/stm32h5/chip.h
index 6170e394acd..6e91b7d4e93 100644
--- a/arch/arm/include/stm32h5/chip.h
+++ b/arch/arm/include/stm32h5/chip.h
@@ -38,7 +38,7 @@
 #  define STM32_SRAM2_SIZE       (80*1024)   /* 80Kb  SRAM2 on AHB bus Matrix 
*/
 #  define STM32_SRAM3_SIZE       (64*1024)   /* 64Kb  SRAM3 on AHB bus Matrix 
*/
 #elif defined(CONFIG_STM32_STM32H56XXX) || defined(CONFIG_STM32_STM32H57XXX)
-#  define STM32_SRAM1_SIZE       (256*1024)  /* 256Kb SRAM1 on AHB bus Matrix 
*/
+#  define STM32_SRAM1_SIZE       (256*1024)  /* 192Kb SRAM1 on AHB bus Matrix 
*/
 #  define STM32_SRAM2_SIZE       (64*1024)   /* 64Kb  SRAM2 on AHB bus Matrix 
*/
 #  define STM32_SRAM3_SIZE       (320*1024)  /* 320Kb SRAM3 on AHB bus Matrix 
*/
 #else
diff --git a/arch/arm/src/stm32h5/Kconfig b/arch/arm/src/stm32h5/Kconfig
index e9c88e6166d..34ac1d26d19 100644
--- a/arch/arm/src/stm32h5/Kconfig
+++ b/arch/arm/src/stm32h5/Kconfig
@@ -15,7 +15,6 @@ config STM32_H5_PERIPHERALS
        select STM32_HAVE_I2C1
        select STM32_HAVE_I2C2
        select STM32_HAVE_I2C3
-       select STM32_HAVE_I2C4
        select STM32_HAVE_RNG
        select STM32_HAVE_SPI1
        select STM32_HAVE_SPI2
@@ -35,6 +34,16 @@ choice
        default ARCH_CHIP_STM32H563ZI
        depends on ARCH_CHIP_STM32H5
 
+config ARCH_CHIP_STM32H533RE
+       bool "STM32H533RE"
+       select ARCH_CORTEXM33
+       select STM32_STM32H5XXXX
+       select STM32_STM32H53XXX
+       select STM32_FLASH_CONFIG_E
+       select STM32H5_IO_CONFIG_R
+       ---help---
+               STM32 H5 Cortex M33, 512 Kb FLASH, 272 Kb SRAM
+
 config ARCH_CHIP_STM32H563ZI
        bool "STM32H563ZI"
        select ARCH_CORTEXM33
@@ -56,6 +65,33 @@ config STM32_STM32H5XXXX
        select ARCH_HAVE_FPU
        select STM32_HAVE_ICACHE
 
+config STM32_STM32H53XXX
+       bool
+       default n
+       select STM32_HAVE_FDCAN1
+       select STM32_HAVE_FDCAN2
+       select STM32_HAVE_TIM1
+       select STM32_HAVE_TIM2
+       select STM32_HAVE_TIM3
+       select STM32_HAVE_TIM4
+       select STM32_HAVE_TIM5
+       select STM32_HAVE_TIM6
+       select STM32_HAVE_TIM7
+       select STM32_HAVE_TIM8
+       select STM32_HAVE_TIM12
+       select STM32_HAVE_TIM15
+       select STM32_HAVE_LPUART1
+       select STM32_HAVE_USART1
+       select STM32_HAVE_USART2
+       select STM32_HAVE_USART3
+       select STM32_HAVE_UART4
+       select STM32_HAVE_UART5
+       select STM32_HAVE_USART6
+       select STM32_HAVE_SPI4
+       select STM32_HAVE_USBFS
+       select STM32_HAVE_HSI48
+       select STM32_HAVE_ICACHE_REMAP
+
 config STM32_STM32H56XXX
        bool
        default n
diff --git a/arch/arm/src/stm32h5/hardware/stm32_flash.h 
b/arch/arm/src/stm32h5/hardware/stm32_flash.h
index 417c6fdabee..ae4432e16aa 100644
--- a/arch/arm/src/stm32h5/hardware/stm32_flash.h
+++ b/arch/arm/src/stm32h5/hardware/stm32_flash.h
@@ -30,7 +30,7 @@
 #include <nuttx/config.h>
 #include "chip.h"
 
-#if defined(CONFIG_STM32_STM32H56XXX)
+#if defined(CONFIG_STM32_STM32H53XXX) || defined(CONFIG_STM32_STM32H56XXX)
 #  include "hardware/stm32h5xxx_flash.h"
 #else
 #  error "Unsupported STM32 H5 flash"
diff --git a/arch/arm/src/stm32h5/hardware/stm32_gpdma.h 
b/arch/arm/src/stm32h5/hardware/stm32_gpdma.h
index 997c2180495..4f5ec1fe16f 100644
--- a/arch/arm/src/stm32h5/hardware/stm32_gpdma.h
+++ b/arch/arm/src/stm32h5/hardware/stm32_gpdma.h
@@ -30,7 +30,8 @@
 #include <nuttx/config.h>
 #include "chip.h"
 
-#if defined(CONFIG_STM32_STM32H56XXX) || defined(CONFIG_STM32_STM32H57XXX)
+#if defined(CONFIG_STM32_STM32H53XXX) || \
+    defined(CONFIG_STM32_STM32H56XXX) || defined(CONFIG_STM32_STM32H57XXX)
 #  include "stm32h56x_dmasigmap.h"
 #else
 # error "Unsupported STM32 H5 DMA map"
diff --git a/arch/arm/src/stm32h5/hardware/stm32_pinmap.h 
b/arch/arm/src/stm32h5/hardware/stm32_pinmap.h
index 555cf41bd49..852c7c540c5 100644
--- a/arch/arm/src/stm32h5/hardware/stm32_pinmap.h
+++ b/arch/arm/src/stm32h5/hardware/stm32_pinmap.h
@@ -30,7 +30,7 @@
 #include <nuttx/config.h>
 #include "chip.h"
 
-#if defined(CONFIG_STM32_STM32H56XXX)
+#if defined(CONFIG_STM32_STM32H53XXX) || defined(CONFIG_STM32_STM32H56XXX)
 #  include "hardware/stm32h56xxx_pinmap.h"
 #else
 #  error "Unsupported STM32 H5 pin map"
diff --git a/arch/arm/src/stm32h5/hardware/stm32h56xxx_pinmap.h 
b/arch/arm/src/stm32h5/hardware/stm32h56xxx_pinmap.h
index 57284c4e07c..c9e8d59d7b6 100644
--- a/arch/arm/src/stm32h5/hardware/stm32h56xxx_pinmap.h
+++ b/arch/arm/src/stm32h5/hardware/stm32h56xxx_pinmap.h
@@ -29,7 +29,8 @@
 
 #include <nuttx/config.h>
 
-#if defined(CONFIG_STM32_STM32H563XX) || \
+#if defined(CONFIG_STM32_STM32H53XXX) || \
+    defined(CONFIG_STM32_STM32H563XX) || \
     defined(CONFIG_STM32_STM32H562XX)
 /****************************************************************************
  * Pre-processor Definitions

Reply via email to