# SPDX-FileCopyrightText: 2025 Gunar Schorcht # SPDX-License-Identifier: LGPL-2.1-only config CPU_FAM_ESP32H2 bool select CPU_COMMON_ESP32X select CPU_CORE_RV32IMAC config CPU_FAM default "esp32h2" if CPU_FAM_ESP32H2 ## CPU Models config CPU_MODEL_ESP32H2_FH2S bool select CPU_FAM_ESP32H2 help ESP32-H2 CPU with 2 MB Flash config CPU_MODEL_ESP32H2_FH4S bool select CPU_FAM_ESP32H2 help ESP32-H2 CPU with 4 MB Flash ## CPU Modules config CPU_MODEL_ESP32H2_MINI_1X_H2S bool select CPU_MODEL_ESP32H2_FH2S help ESP32-H2-MINI-1-H2S or ESP32-H2-MINI-1U-H2S module with 2 MB Flash config CPU_MODEL_ESP32H2_MINI_1X_H4S bool select CPU_MODEL_ESP32H2_FH4S help ESP32-H2-MINI-1-H4S or ESP32-H2-MINI-1U-H4S module with 4 MB Flash config CPU_MODEL_ESP32H2_WROOM_02C_H2S bool select CPU_MODEL_ESP32H2_FH2S help ESP32-H2-WROOM-02C-H2S module with 2 MB Flash config CPU_MODEL_ESP32H2_WROOM_02C_H4S bool select CPU_MODEL_ESP32H2_FH4S help ESP32-H2-WROOM-02C-H4S module with 2 MB Flash ## Choice config CPU_MODEL depends on CPU_FAM_ESP32H2 default "esp32h2_mini_1x_h2s" if CPU_MODEL_ESP32H2_MINI_1X_H2S default "esp32h2_mini_1x_h4s" if CPU_MODEL_ESP32H2_MINI_1X_H4S default "esp32h2_wroom_02c_h2s" if CPU_MODEL_ESP32H2_WROOM_02C_H2S default "esp32h2_wroom_02c_h4s" if CPU_MODEL_ESP32H2_WROOM_02C_H4S default "esp32h2_fh2s" if CPU_MODEL_ESP32H2_FH2S default "esp32h2_fh4s" if CPU_MODEL_ESP32H2_FH4S if CPU_FAM_ESP32H2 menu "ESP32-H2 specific configurations" depends on HAS_ARCH_ESP32 # define configuration menu entries for ESP32-H2 variant (family) choice bool "CPU clock frequency" default ESP32H2_DEFAULT_CPU_FREQ_MHZ_96 help CPU clock frequency used (default 96 MHz). Please note that peripherals such as I2C or SPI might not work at the specified clock frequency if the selected CPU clock frequency is too low. These peripherals are clocked by the APB clock, which has a clock rate of 32 MHz for CPU clock frequencies greater than or equal to 32 MHz, but is equal to the CPU clock frequency for CPU clock frequencies less than 32 MHz. Thus, for SPI, the APB clock rate must be at least five times the SPI clock rate. For the I2C hardware implementation, the APB clock rate must be at least 3 MHZ to use I2C in fast mode with a I2C clock rate of 400 kHz. For the I2C software implementation, the maximum I2C clock rate is 1/130 times the CPU clock rate. config ESP32H2_DEFAULT_CPU_FREQ_MHZ_16 bool "16 MHz" config ESP32H2_DEFAULT_CPU_FREQ_MHZ_32 bool "32 MHz" config ESP32H2_DEFAULT_CPU_FREQ_MHZ_48 bool "48 MHz" config ESP32H2_DEFAULT_CPU_FREQ_MHZ_64 bool "64 MHz" config ESP32H2_DEFAULT_CPU_FREQ_MHZ_96 bool "96 MHz" endchoice # import configuration menu entries that are common for all ESP32x SoCs rsource "Kconfig.common" endmenu endif # CPU_FAM_ESP32H2