# SPDX-License-Identifier: GPL-2.0
comment "S/390 block device drivers"
	depends on S390 && BLOCK

config DCSSBLK
	def_tristate m
	select FS_DAX_LIMITED
	select DAX_DRIVER
	prompt "DCSSBLK support"
	depends on S390 && BLOCK
	help
	  Support for dcss block device

config DASD
	def_tristate y
	prompt "Support for DASD devices"
	depends on CCW && BLOCK
	help
	  Enable this option if you want to access DASDs directly utilizing
	  S/390s channel subsystem commands. This is necessary for running
	  natively on a single image or an LPAR.

config DASD_PROFILE
	def_bool y
	prompt "Profiling support for dasd devices"
	depends on DASD
	help
	  Enable this option if you want to see profiling information
	  in /proc/dasd/statistics.

config DASD_ECKD
	def_tristate y
	prompt "Support for ECKD Disks"
	depends on DASD
	help
	  ECKD devices are the most commonly used devices. You should enable
	  this option unless you are very sure to have no ECKD device.

config DASD_FBA
	def_tristate y
	prompt "Support for FBA  Disks"
	depends on DASD
	help
	  Select this option to be able to access FBA devices. It is safe to
	  say "Y".

config DASD_DIAG
	def_tristate y
	prompt "Support for DIAG access to Disks"
	depends on DASD
	help
	  Select this option if you want to use Diagnose250 command to access
	  Disks under VM.  If you are not running under VM or unsure what it is,
	  say "N".

config DASD_EER
	def_bool y
	prompt "Extended error reporting (EER)"
	depends on DASD
	help
	  This driver provides a character device interface to the
	  DASD extended error reporting. This is only needed if you want to
	  use applications written for the EER facility.

config SCM_BLOCK
	def_tristate m
	prompt "Support for Storage Class Memory"
	depends on S390 && BLOCK && EADM_SCH && SCM_BUS
	help
	  Block device driver for Storage Class Memory (SCM). This driver
	  provides a block device interface for each available SCM increment.

	  To compile this driver as a module, choose M here: the
	  module will be called scm_block.
