1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/esp32/Kconfig.esp32s3
2024-03-27 10:28:12 +01:00

232 lines
7.6 KiB
Plaintext

# Copyright (c) 2020 HAW Hamburg
# 2022 Gunar Schorcht
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
config CPU_FAM_ESP32S3
bool
select CPU_COMMON_ESP32X
select CPU_CORE_XTENSA_LX7
config CPU_FAM
default "esp32s3" if CPU_FAM_ESP32S3
## CPU Models
config CPU_MODEL_ESP32S3
bool
select CPU_FAM_ESP32S3
help
Indicates that CPU version ESP32-S3 is used.
config CPU_MODEL_ESP32S3_FN8
bool
select CPU_FAM_ESP32S3
help
Indicates that CPU version ESP32-S3FN8 with 8 MB embedded Flash is used.
config CPU_MODEL_ESP32S3_R2
bool
select CPU_FAM_ESP32S3
help
Indicates that CPU version ESP32-S3R2 with 2 MB embedded SPI RAM is used.
config CPU_MODEL_ESP32S3_R8
bool
select CPU_FAM_ESP32S3
help
Indicates that CPU version ESP32-S3R8 with 8 MB embedded SPI RAM
and SPI voltage 3.3 V is used.
config CPU_MODEL_ESP32S3_R8V
bool
select CPU_FAM_ESP32S3
help
Indicates that CPU version ESP32-S3R8V with 8 MB embedded SPI RAM
and SPI voltage 1.8 V is used.
config CPU_MODEL_ESP32S3_FH4R2
bool
select CPU_FAM_ESP32S3
help
Indicates that CPU version ESP32-S3FH4R2 with 4 MB embedded Flash and
2 MB embedded SPI RAM is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N4
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N4 or ESP32-S3-WROOM-1U-N4 module
with 4 MB Flash is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N8
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N8 or ESP32-S3-WROOM-1U-N8 module
with 8 MB Flash is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N16
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N16 or ESP32-S3-WROOM-1U-N16 module
with 16 MB Flash is used.
config CPU_MODEL_ESP32S3_WROOM_1X_H4
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-H4 or ESP32-S3-WROOM-1U-H4 module
with 4 MB Flash is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N4R2
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N4R2 or ESP32-S3-WROOM-1U-N4R2 module
with 4 MB Flash and 2 MB SPI RAM is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N8R2
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N8R2 or ESP32-S3-WROOM-1U-N8R2 module
with 8 MB Flash and 2 MB SPI RAM is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N16R2
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N16R2 or ESP32-S3-WROOM-1U-N16R2 module
with 16 MB Flash and 2 MB SPI RAM is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N4R8
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N4R8 or ESP32-S3-WROOM-1U-N4R8 module
with 4 MB Flash and 8 MB SPI RAM (Octal SPI mode) is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N8R8
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N8R8 or ESP32-S3-WROOM-1U-N8R8 module
with 8 MB Flash and 8 MB SPI RAM (Octal SPI mode) is used.
config CPU_MODEL_ESP32S3_WROOM_1X_N16R8
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-1-N16R8 or ESP32-S3-WROOM-1U-N16R8 module
with 16 MB Flash and 8 MB SPI RAM (Octal SPI mode) is used.
config CPU_MODEL_ESP32S3_WROOM_2_N16R8V
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-2-N16R8V module with 16 MB Flash and
8 MB SPI RAM (Octal SPI mode) and 1.8 V SPI voltage is used.
config CPU_MODEL_ESP32S3_WROOM_2_N32R8V
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-WROOM-2-N16R8V module with 32 MB Flash and
8 MB SPI RAM (Octal SPI mode) and 1.8 V SPI voltage is used.
config CPU_MODEL_ESP32S3_MINI_1X_N8
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-MINI-1-N8 or ESP32-S3-MINI-1U-N8 module
with 8 MB Flash is used.
config CPU_MODEL_ESP32S3_MINI_1X_N4R2
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-MINI-1-N4R2 or ESP32-S3-MINI-1U-N4R2 module
with 4 MB Flash and 2 MB SPI RAM is used.
config CPU_MODEL_ESP32S3_MINI_1X_H4R2
bool
select CPU_FAM_ESP32S3
help
Indicates that ESP32-S3-MINI-1-H4R2 or ESP32-S3-MINI-1U-H4R2 module
with 4 MB Flash and 2 MB SPI RAM is used.
config CPU_MODEL
depends on CPU_FAM_ESP32S3
default "esp32s3" if CPU_MODEL_ESP32S3
default "esp32s3_fn8" if CPU_MODEL_ESP32S3_FN8
default "esp32s3_r2" if CPU_MODEL_ESP32S3_R2
default "esp32s3_r8" if CPU_MODEL_ESP32S3_R8
default "esp32s3_r8v" if CPU_MODEL_ESP32S3_R3V
default "esp32s3_fh4r2" if CPU_MODEL_ESP32S3_FH4R2
default "esp32s3_wroom_1x_n4" if CPU_MODEL_ESP32S3_WROOM_1X_N4
default "esp32s3_wroom_1x_n8" if CPU_MODEL_ESP32S3_WROOM_1X_N8
default "esp32s3_wroom_1x_n16" if CPU_MODEL_ESP32S3_WROOM_1X_N16
default "esp32s3_wroom_1x_h4" if CPU_MODEL_ESP32S3_WROOM_1X_H4
default "esp32s3_wroom_1x_n4r2" if CPU_MODEL_ESP32S3_WROOM_1X_N4R2
default "esp32s3_wroom_1x_n8r2" if CPU_MODEL_ESP32S3_WROOM_1X_N8R2
default "esp32s3_wroom_1x_n16r2" if CPU_MODEL_ESP32S3_WROOM_1X_N16R2
default "esp32s3_wroom_1x_n4r8" if CPU_MODEL_ESP32S3_WROOM_1X_N4R8
default "esp32s3_wroom_1x_n8r8" if CPU_MODEL_ESP32S3_WROOM_1X_N8R8
default "esp32s3_wroom_1x_n16r8" if CPU_MODEL_ESP32S3_WROOM_1X_N16R8
default "esp32s3_wroom_2_n16r8v" if CPU_MODEL_ESP32S3_WROOM_2_N16R8V
default "esp32s3_wroom_2_n32r8v" if CPU_MODEL_ESP32S3_WROOM_2_N32R8V
default "esp32s3_mini_1x_n8" if CPU_MODEL_ESP32S3_MINI_1X_N8
default "esp32s3_mini_1x_n4r2" if CPU_MODEL_ESP32S3_MINI_1X_N4R2
default "esp32s3_mini_1x_h4r2" if CPU_MODEL_ESP32S3_MINI_1X_H4R2
if CPU_FAM_ESP32S3
menu "ESP32-S3 specific configurations"
depends on HAS_ARCH_ESP32
# define configuration menu entries for ESP32-S3 variant (family)
choice
bool "CPU clock frequency"
default ESP32S3_DEFAULT_CPU_FREQ_MHZ_80
help
CPU clock frequency used (default 80 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 80 MHz for CPU clock frequencies greater than
or equal to 80 MHz, but is equal to the CPU clock frequency for
CPU clock frequencies less than 80 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
40 times the I2C clock rate. For the I2C software implementation,
the maximum I2C clock rate is 1/200 times the CPU clock rate.
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_2
bool "2 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_5
bool "5 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_10
bool "10 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_20
bool "20 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_40
bool "40 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_80
bool "80 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_160
bool "160 MHz"
config ESP32S3_DEFAULT_CPU_FREQ_MHZ_240
bool "240 MHz"
endchoice
# import configuration menu entries that are common for all ESP32x SoCs
rsource "Kconfig.common"
endmenu
endif # CPU_FAM_ESP32S3