# SPDX-License-Identifier: GPL-2.0-only
#
# MMC core configuration
#
config PWRSEQ_EMMC
	tristate "HW reset support for eMMC"
	default y
	depends on OF
	help
	  This selects Hardware reset support aka pwrseq-emmc for eMMC
	  devices. By default this option is set to y.

	  This driver can also be built as a module. If so, the module
	  will be called pwrseq_emmc.

config PWRSEQ_SD8787
	tristate "HW reset support for SD8787 BT + Wifi module"
	depends on OF && (MWIFIEX != n || BT_MRVL_SDIO != n || LIBERTAS_SDIO != n || WILC1000_SDIO != n)
	help
	  This selects hardware reset support for the SD8787 BT + Wifi
	  module. By default this option is set to n.

	  This driver can also be built as a module. If so, the module
	  will be called pwrseq_sd8787.

config PWRSEQ_SIMPLE
	tristate "Simple HW reset support for MMC"
	default y
	depends on OF
	help
	  This selects simple hardware reset support aka pwrseq-simple for MMC
	  devices. By default this option is set to y.

	  This driver can also be built as a module. If so, the module
	  will be called pwrseq_simple.

config MMC_BLOCK
	tristate "MMC block device driver"
	depends on BLOCK
	imply IOSCHED_BFQ
	default y
	help
	  Say Y here to enable the MMC block device driver support.
	  This provides a block device driver, which you can use to
	  mount the filesystem. Almost everyone wishing MMC support
	  should say Y or M here.

config MMC_BLOCK_MINORS
	int "Number of minors per block device"
	depends on MMC_BLOCK
	range 4 256
	default 8
	help
	  Number of minors per block device. One is needed for every
	  partition on the disk (plus one for the whole disk).

	  Number of total MMC minors available is 256, so your number
	  of supported block devices will be limited to 256 divided
	  by this number.

	  Default is 8 to be backwards compatible with previous
	  hardwired device numbering.

	  If unsure, say 8 here.

config SDIO_UART
	tristate "SDIO UART/GPS class support"
	depends on TTY
	help
	  SDIO function driver for SDIO cards that implements the UART
	  class, as well as the GPS class which appears like a UART.

config MMC_TEST
	tristate "MMC host test driver"
	help
	  Development driver that performs a series of reads and writes
	  to a memory card in order to expose certain well known bugs
	  in host controllers. The tests are executed by writing to the
	  "test" file in debugfs under each card. Note that whatever is
	  on your card will be overwritten by these tests.

	  This driver is only of interest to those developing or
	  testing a host driver. Most people should say N here.

config MMC_CRYPTO
	bool "MMC Crypto Engine Support"
	depends on BLK_INLINE_ENCRYPTION
	help
	  Enable Crypto Engine Support in MMC.
	  Enabling this makes it possible for the kernel to use the crypto
	  capabilities of the MMC device (if present) to perform crypto
	  operations on data being transferred to/from the device.