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