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