# 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
	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.
