# Generic register map support.  There are no user servicable options here,
# this is an API intended to be used by other kernel subsystems.  These
# subsystems should select the appropriate symbols.

config REGMAP
	default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_SPMI || REGMAP_AC97 || REGMAP_MMIO || REGMAP_IRQ)
	select LZO_COMPRESS
	select LZO_DECOMPRESS
	select IRQ_DOMAIN if REGMAP_IRQ
	bool

config REGMAP_AC97
	tristate

config REGMAP_I2C
	tristate
	depends on I2C

config REGMAP_SPI
	tristate
	depends on SPI

config REGMAP_SPMI
	tristate
	depends on SPMI

config REGMAP_MMIO
	tristate

config REGMAP_IRQ
	bool
