comment "S/390 character device drivers"
	depends on S390

config TN3270
	tristate "Support for locally attached 3270 terminals"
	depends on CCW
	help
	  Include support for IBM 3270 terminals.

config TN3270_TTY
	tristate "Support for tty input/output on 3270 terminals"
	depends on TN3270
	help
	  Include support for using an IBM 3270 terminal as a Linux tty.

config TN3270_FS
	tristate "Support for fullscreen applications on 3270 terminals"
	depends on TN3270
	help
	  Include support for fullscreen applications on an IBM 3270 terminal.

config TN3270_CONSOLE
	bool "Support for console on 3270 terminal"
	depends on TN3270=y && TN3270_TTY=y
	help
	  Include support for using an IBM 3270 terminal as a Linux system
	  console.  Available only if 3270 support is compiled in statically.

config TN3215
	bool "Support for 3215 line mode terminal"
	depends on CCW
	help
	  Include support for IBM 3215 line-mode terminals.

config TN3215_CONSOLE
	bool "Support for console on 3215 line mode terminal"
	depends on TN3215
	help
	  Include support for using an IBM 3215 line-mode terminal as a
	  Linux system console.

config CCW_CONSOLE
	bool
	depends on TN3215_CONSOLE || TN3270_CONSOLE
	default y

config SCLP
	bool "Support for SCLP"
	depends on S390
	help
	  Include support for the SCLP interface to the service element.

config SCLP_TTY
	bool "Support for SCLP line mode terminal"
	depends on SCLP
	help
	  Include support for IBM SCLP line-mode terminals.

config SCLP_CONSOLE
	bool "Support for console on SCLP line mode terminal"
	depends on SCLP_TTY
	help
	  Include support for using an IBM HWC line-mode terminal as the Linux
	  system console.

config SCLP_VT220_TTY
	bool "Support for SCLP VT220-compatible terminal"
	depends on SCLP
	help
	  Include support for an IBM SCLP VT220-compatible terminal.

config SCLP_VT220_CONSOLE
	bool "Support for console on SCLP VT220-compatible terminal"
	depends on SCLP_VT220_TTY
	help
	  Include support for using an IBM SCLP VT220-compatible terminal as a
	  Linux system console.

config SCLP_CPI
	tristate "Control-Program Identification"
	depends on SCLP
	help
	  This option enables the hardware console interface for system
	  identification. This is commonly used for workload management and
	  gives you a nice name for the system on the service element.
	  Please select this option as a module since built-in operation is
	  completely untested.
	  You should only select this option if you know what you are doing,
	  need this feature and intend to run your kernel in LPAR.

config S390_TAPE
	tristate "S/390 tape device support"
	depends on CCW
	help
	  Select this option if you want to access channel-attached tape
	  devices on IBM S/390 or zSeries.
	  If you select this option you will also want to select at
	  least one of the tape interface options and one of the tape
	  hardware options in order to access a tape device.
	  This option is also available as a module. The module will be
	  called tape390 and include all selected interfaces and
	  hardware drivers.

comment "S/390 tape interface support"
	depends on S390_TAPE

config S390_TAPE_BLOCK
	bool "Support for tape block devices"
	depends on S390_TAPE
	help
	  Select this option if you want to access your channel-attached tape
	  devices using the block device interface.  This interface is similar
	  to CD-ROM devices on other platforms.  The tapes can only be
	  accessed read-only when using this interface.  Have a look at
	  <file:Documentation/s390/TAPE> for further information about creating
	  volumes for and using this interface.  It is safe to say "Y" here.

comment "S/390 tape hardware support"
	depends on S390_TAPE

config S390_TAPE_34XX
	tristate "Support for 3480/3490 tape hardware"
	depends on S390_TAPE
	help
	  Select this option if you want to access IBM 3480/3490 magnetic
	  tape subsystems and 100% compatibles.
	  It is safe to say "Y" here.

config S390_TAPE_3590
	tristate "Support for 3590 tape hardware"
	depends on S390_TAPE
	help
	  Select this option if you want to access IBM 3590 magnetic
	  tape subsystems and 100% compatibles.
	  It is safe to say "Y" here.

config VMLOGRDR
	tristate "Support for the z/VM recording system services (VM only)"
	depends on IUCV
	help
	  Select this option if you want to be able to receive records collected
	  by the z/VM recording system services, eg. from *LOGREC, *ACCOUNT or
	  *SYMPTOM.
	  This driver depends on the IUCV support driver.

config VMCP
	tristate "Support for the z/VM CP interface (VM only)"
	depends on S390
	help
	  Select this option if you want to be able to interact with the control
	  program on z/VM


config MONREADER
	tristate "API for reading z/VM monitor service records"
	depends on IUCV
	help
	  Character device driver for reading z/VM monitor service records

config MONWRITER
	tristate "API for writing z/VM monitor service records"
	depends on S390
	default "m"
	help
	  Character device driver for writing z/VM monitor service records

