| # Copyright (c) 2016 Intel Corporation |
| # Copyright (c) 2021 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| DT_STM32_SDMMC_HAS_DMA := $(dt_compat_any_has_prop,$(DT_COMPAT_ST_STM32_SDMMC),dmas) |
| |
| config DISK_DRIVER_SDMMC |
| bool "SDMMC card driver" |
| depends on DT_HAS_ZEPHYR_SDMMC_DISK_ENABLED || \ |
| DT_HAS_ST_STM32_SDMMC_ENABLED |
| default y |
| help |
| SDMMC card driver. |
| |
| if DISK_DRIVER_SDMMC |
| |
| config SD_INIT_PRIORITY |
| int "Init priority" |
| default 90 |
| help |
| SDMMC controller driver initialization priority. |
| |
| config SDMMC_SUBSYS |
| bool "SDMMC access via SD subsystem" |
| select SDMMC_STACK |
| default y |
| depends on DT_HAS_ZEPHYR_SDMMC_DISK_ENABLED |
| help |
| Enable SDMMC access via SD subsystem. |
| |
| config SDMMC_STM32 |
| bool "STM32 SDMMC driver" |
| default y |
| depends on DT_HAS_ST_STM32_SDMMC_ENABLED |
| select USE_STM32_HAL_SD if !SDMMC_STM32_EMMC |
| select USE_STM32_HAL_SD_EX if !SDMMC_STM32_EMMC && SOC_SERIES_STM32L4X |
| select USE_STM32_HAL_MMC if SDMMC_STM32_EMMC |
| select USE_STM32_HAL_MMC_EX if SDMMC_STM32_EMMC && SOC_SERIES_STM32L4X |
| select USE_STM32_LL_SDMMC |
| select USE_STM32_HAL_DMA if (SOC_SERIES_STM32L4X || SOC_SERIES_STM32F7X || SOC_SERIES_STM32F4X) |
| select DMA if $(DT_STM32_SDMMC_HAS_DMA) && (SOC_SERIES_STM32F4X || SOC_SERIES_STM32F7X) |
| select PINCTRL |
| select RESET |
| help |
| File system on sdmmc accessed through stm32 sdmmc. |
| |
| config SDMMC_STM32_HWFC |
| bool "STM32 SDMMC Hardware Flow control" |
| depends on SDMMC_STM32 |
| depends on SOC_SERIES_STM32H5X || \ |
| SOC_SERIES_STM32H7X || \ |
| SOC_SERIES_STM32F7X || \ |
| SOC_SERIES_STM32L4X || \ |
| SOC_SERIES_STM32L5X |
| help |
| Enable SDMMC Hardware Flow Control to avoid FIFO underrun (TX mode) and |
| overrun (RX mode) errors. |
| |
| config SDMMC_STM32_EMMC |
| bool "STM32 SDMMC eMMC mode" |
| depends on SDMMC_STM32 |
| help |
| Use eMMC instead of SDIO (SD card) protocol. These are similar, but not entirely the same. |
| |
| config SDMMC_STM32_CLOCK_CHECK |
| bool "Runtime SDMMC 48MHz clock check" |
| depends on SDMMC_STM32 |
| default y |
| help |
| Enable SDMMC clock 48MHz configuration runtime check. |
| In specific cases, this check might provide wrong verdict and should |
| be disabled. |
| |
| module = SDMMC |
| module-str = sdmmc |
| source "subsys/logging/Kconfig.template.log_config" |
| |
| endif # DISK_DRIVER_SDMMC |