
menu "Misc Linux/SPARC drivers"

config SUN_OPENPROMIO
	tristate "/dev/openprom device support"
	help
	  This driver provides user programs with an interface to the SPARC
	  PROM device tree. The driver implements a SunOS-compatible
	  interface and a NetBSD-compatible interface.

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

	  If unsure, say Y.

config OBP_FLASH
	tristate "OBP Flash Device support"
	depends on SPARC64
	help
	  The OpenBoot PROM on Ultra systems is flashable. If you want to be
	  able to upgrade the OBP firmware, say Y here.

config TADPOLE_TS102_UCTRL
	tristate "Tadpole TS102 Microcontroller support (EXPERIMENTAL)"
	depends on EXPERIMENTAL
	help
	  Say Y here to directly support the TS102 Microcontroller interface
	  on the Tadpole Sparcbook 3.  This device handles power-management
	  events, and can also notice the attachment/detachment of external
	  monitors and mice.

config SUN_JSFLASH
	tristate "JavaStation OS Flash SIMM (EXPERIMENTAL)"
	depends on EXPERIMENTAL && SPARC32
	help
	  If you say Y here, you will be able to boot from your JavaStation's
	  Flash memory.

config BBC_I2C
	tristate "UltraSPARC-III bootbus i2c controller driver"
	depends on PCI && SPARC64
	help
	  The BBC devices on the UltraSPARC III have two I2C controllers.  The
	  first I2C controller connects mainly to configuration PROMs (NVRAM,
	  CPU configuration, DIMM types, etc.).  The second I2C controller
	  connects to environmental control devices such as fans and
	  temperature sensors.  The second controller also connects to the
	  smartcard reader, if present.  Say Y to enable support for these.

config ENVCTRL
	tristate "SUNW, envctrl support"
	depends on PCI && SPARC64
	help
	  Kernel support for temperature and fan monitoring on Sun SME
	  machines.

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

config DISPLAY7SEG
	tristate "7-Segment Display support"
	depends on PCI && SPARC64
	---help---
	  This is the driver for the 7-segment display and LED present on
	  Sun Microsystems CompactPCI models CP1400 and CP1500.

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

	  If you do not have a CompactPCI model CP1400 or CP1500, or
	  another UltraSPARC-IIi-cEngine boardset with a 7-segment display,
	  you should say N to this option.

endmenu

