config SSB_POSSIBLE
	bool
	depends on HAS_IOMEM && HAS_DMA
	default y

menu "Sonics Silicon Backplane"
	depends on SSB_POSSIBLE

config SSB
	tristate "Sonics Silicon Backplane support"
	depends on SSB_POSSIBLE
	help
	  Support for the Sonics Silicon Backplane bus.
	  You only need to enable this option, if you are
	  configuring a kernel for an embedded system with
	  this bus.
	  It will be auto-selected if needed in other
	  environments.

	  The module will be called ssb.

	  If unsure, say N.

# Common SPROM support routines
config SSB_SPROM
	bool

# Support for Block-I/O. SELECT this from the driver that needs it.
config SSB_BLOCKIO
	bool
	depends on SSB

config SSB_PCIHOST_POSSIBLE
	bool
	depends on SSB && (PCI = y || PCI = SSB)
	default y

config SSB_PCIHOST
	bool "Support for SSB on PCI-bus host"
	depends on SSB_PCIHOST_POSSIBLE
	select SSB_SPROM
	default y
	help
	  Support for a Sonics Silicon Backplane on top
	  of a PCI device.

	  If unsure, say Y

config SSB_B43_PCI_BRIDGE
	bool
	depends on SSB_PCIHOST
	default n

config SSB_PCMCIAHOST_POSSIBLE
	bool
	depends on SSB && (PCMCIA = y || PCMCIA = SSB)
	default y

config SSB_PCMCIAHOST
	bool "Support for SSB on PCMCIA-bus host"
	depends on SSB_PCMCIAHOST_POSSIBLE
	select SSB_SPROM
	help
	  Support for a Sonics Silicon Backplane on top
	  of a PCMCIA device.

	  If unsure, say N

config SSB_SDIOHOST_POSSIBLE
	bool
	depends on SSB && (MMC = y || MMC = SSB)
	default y

config SSB_SDIOHOST
	bool "Support for SSB on SDIO-bus host"
	depends on SSB_SDIOHOST_POSSIBLE
	help
	  Support for a Sonics Silicon Backplane on top
	  of a SDIO device.

	  If unsure, say N

config SSB_SILENT
	bool "No SSB kernel messages"
	depends on SSB && EXPERT
	help
	  This option turns off all Sonics Silicon Backplane printks.
	  Note that you won't be able to identify problems, once
	  messages are turned off.
	  This might only be desired for production kernels on
	  embedded devices to reduce the kernel size.

	  Say N

config SSB_DEBUG
	bool "SSB debugging"
	depends on SSB && !SSB_SILENT
	help
	  This turns on additional runtime checks and debugging
	  messages. Turn this on for SSB troubleshooting.

	  If unsure, say N

config SSB_SERIAL
	bool
	depends on SSB
	# ChipCommon and ExtIf serial support routines.

config SSB_DRIVER_PCICORE_POSSIBLE
	bool
	depends on SSB_PCIHOST
	default y

config SSB_DRIVER_PCICORE
	bool "SSB PCI core driver"
	depends on SSB_DRIVER_PCICORE_POSSIBLE
	help
	  Driver for the Sonics Silicon Backplane attached
	  Broadcom PCI core.

	  If unsure, say Y

config SSB_PCICORE_HOSTMODE
	bool "Hostmode support for SSB PCI core"
	depends on SSB_DRIVER_PCICORE && SSB_DRIVER_MIPS
	help
	  PCIcore hostmode operation (external PCI bus).

config SSB_DRIVER_MIPS
	bool "SSB Broadcom MIPS core driver"
	depends on SSB && MIPS
	select SSB_SERIAL
	help
	  Driver for the Sonics Silicon Backplane attached
	  Broadcom MIPS core.

	  If unsure, say N

# Assumption: We are on embedded, if we compile the MIPS core.
config SSB_EMBEDDED
	bool
	depends on SSB_DRIVER_MIPS
	default y

config SSB_DRIVER_EXTIF
	bool "SSB Broadcom EXTIF core driver"
	depends on SSB_DRIVER_MIPS
	help
	  Driver for the Sonics Silicon Backplane attached
	  Broadcom EXTIF core.

	  If unsure, say N

config SSB_DRIVER_GIGE
	bool "SSB Broadcom Gigabit Ethernet driver"
	depends on SSB_PCIHOST_POSSIBLE && SSB_EMBEDDED && MIPS
	help
	  Driver for the Sonics Silicon Backplane attached
	  Broadcom Gigabit Ethernet.

	  If unsure, say N

endmenu
