1config SSB_POSSIBLE
2	bool
3	depends on HAS_IOMEM && HAS_DMA
4	default y
5
6menuconfig SSB
7	tristate "Sonics Silicon Backplane support"
8	depends on SSB_POSSIBLE
9	help
10	  Support for the Sonics Silicon Backplane bus.
11	  You only need to enable this option, if you are
12	  configuring a kernel for an embedded system with
13	  this bus.
14	  It will be auto-selected if needed in other
15	  environments.
16
17	  The module will be called ssb.
18
19	  If unsure, say N.
20
21if SSB
22
23# Common SPROM support routines
24config SSB_SPROM
25	bool
26
27# Support for Block-I/O. SELECT this from the driver that needs it.
28config SSB_BLOCKIO
29	bool
30	depends on SSB
31
32config SSB_PCIHOST_POSSIBLE
33	bool
34	depends on SSB && (PCI = y || PCI = SSB) && (PCI_DRIVERS_LEGACY || !MIPS)
35	default y
36
37config SSB_PCIHOST
38	bool "Support for SSB on PCI-bus host"
39	depends on SSB_PCIHOST_POSSIBLE
40	select SSB_SPROM
41	default y
42	help
43	  Support for a Sonics Silicon Backplane on top
44	  of a PCI device.
45
46	  If unsure, say Y
47
48config SSB_B43_PCI_BRIDGE
49	bool
50	depends on SSB_PCIHOST
51	default n
52
53config SSB_PCMCIAHOST_POSSIBLE
54	bool
55	depends on SSB && (PCMCIA = y || PCMCIA = SSB)
56	default y
57
58config SSB_PCMCIAHOST
59	bool "Support for SSB on PCMCIA-bus host"
60	depends on SSB_PCMCIAHOST_POSSIBLE
61	select SSB_SPROM
62	help
63	  Support for a Sonics Silicon Backplane on top
64	  of a PCMCIA device.
65
66	  If unsure, say N
67
68config SSB_SDIOHOST_POSSIBLE
69	bool
70	depends on SSB && (MMC = y || MMC = SSB)
71	default y
72
73config SSB_SDIOHOST
74	bool "Support for SSB on SDIO-bus host"
75	depends on SSB_SDIOHOST_POSSIBLE
76	help
77	  Support for a Sonics Silicon Backplane on top
78	  of a SDIO device.
79
80	  If unsure, say N
81
82config SSB_HOST_SOC
83	bool "Support for SSB bus on SoC"
84	depends on SSB && BCM47XX_NVRAM
85	select SSB_SPROM
86	help
87	  Host interface for a SSB directly mapped into memory. This is
88	  for some Broadcom SoCs from the BCM47xx and BCM53xx lines.
89
90	  If unsure, say N
91
92config SSB_SERIAL
93	bool
94	depends on SSB
95	# ChipCommon and ExtIf serial support routines.
96
97config SSB_DRIVER_PCICORE_POSSIBLE
98	bool
99	depends on SSB_PCIHOST
100	default y
101
102config SSB_DRIVER_PCICORE
103	bool "SSB PCI core driver"
104	depends on SSB_DRIVER_PCICORE_POSSIBLE
105	help
106	  Driver for the Sonics Silicon Backplane attached
107	  Broadcom PCI core.
108
109	  If unsure, say Y
110
111config SSB_PCICORE_HOSTMODE
112	bool "Hostmode support for SSB PCI core"
113	depends on SSB_DRIVER_PCICORE && SSB_DRIVER_MIPS && SSB = y
114	help
115	  PCIcore hostmode operation (external PCI bus).
116
117config SSB_DRIVER_MIPS
118	bool "SSB Broadcom MIPS core driver"
119	depends on SSB && MIPS
120	select SSB_SERIAL
121	select SSB_SFLASH
122	help
123	  Driver for the Sonics Silicon Backplane attached
124	  Broadcom MIPS core.
125
126	  If unsure, say N
127
128config SSB_SFLASH
129	bool "SSB serial flash support"
130	depends on SSB_DRIVER_MIPS
131	default y
132
133# Assumption: We are on embedded, if we compile the MIPS core.
134config SSB_EMBEDDED
135	bool
136	depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
137	default y
138
139config SSB_DRIVER_EXTIF
140	bool "SSB Broadcom EXTIF core driver"
141	depends on SSB_DRIVER_MIPS
142	help
143	  Driver for the Sonics Silicon Backplane attached
144	  Broadcom EXTIF core.
145
146	  If unsure, say N
147
148config SSB_DRIVER_GIGE
149	bool "SSB Broadcom Gigabit Ethernet driver"
150	depends on SSB_PCIHOST_POSSIBLE && SSB_EMBEDDED && MIPS
151	help
152	  Driver for the Sonics Silicon Backplane attached
153	  Broadcom Gigabit Ethernet.
154
155	  If unsure, say N
156
157config SSB_DRIVER_GPIO
158	bool "SSB GPIO driver"
159	depends on SSB && GPIOLIB
160	select IRQ_DOMAIN if SSB_EMBEDDED
161	help
162	  Driver to provide access to the GPIO pins on the bus.
163
164	  If unsure, say N
165
166endif # SSB
167