xref: /openbmc/linux/drivers/bus/Kconfig (revision adb57164)
1# SPDX-License-Identifier: GPL-2.0
2#
3# Bus Devices
4#
5
6menu "Bus devices"
7
8config ARM_CCI
9	bool
10
11config ARM_CCI400_COMMON
12	bool
13	select ARM_CCI
14
15config ARM_CCI400_PORT_CTRL
16	bool
17	depends on ARM && OF && CPU_V7
18	select ARM_CCI400_COMMON
19	help
20	  Low level power management driver for CCI400 cache coherent
21	  interconnect for ARM platforms.
22
23config BRCMSTB_GISB_ARB
24	bool "Broadcom STB GISB bus arbiter"
25	depends on ARM || ARM64 || MIPS
26	default ARCH_BRCMSTB || BMIPS_GENERIC
27	help
28	  Driver for the Broadcom Set Top Box System-on-a-chip internal bus
29	  arbiter. This driver provides timeout and target abort error handling
30	  and internal bus master decoding.
31
32config MOXTET
33	tristate "CZ.NIC Turris Mox module configuration bus"
34	depends on SPI_MASTER && OF
35	help
36	  Say yes here to add support for the module configuration bus found
37	  on CZ.NIC's Turris Mox. This is needed for the ability to discover
38	  the order in which the modules are connected and to get/set some of
39	  their settings. For example the GPIOs on Mox SFP module are
40	  configured through this bus.
41
42config HISILICON_LPC
43	bool "Support for ISA I/O space on HiSilicon Hip06/7"
44	depends on (ARM64 && ARCH_HISI) || (COMPILE_TEST && !ALPHA && !HEXAGON && !PARISC && !C6X)
45	depends on HAS_IOMEM
46	select INDIRECT_PIO if ARM64
47	help
48	  Driver to enable I/O access to devices attached to the Low Pin
49	  Count bus on the HiSilicon Hip06/7 SoC.
50
51config IMX_WEIM
52	bool "Freescale EIM DRIVER"
53	depends on ARCH_MXC
54	help
55	  Driver for i.MX WEIM controller.
56	  The WEIM(Wireless External Interface Module) works like a bus.
57	  You can attach many different devices on it, such as NOR, onenand.
58
59config MIPS_CDMM
60	bool "MIPS Common Device Memory Map (CDMM) Driver"
61	depends on CPU_MIPSR2
62	help
63	  Driver needed for the MIPS Common Device Memory Map bus in MIPS
64	  cores. This bus is for per-CPU tightly coupled devices such as the
65	  Fast Debug Channel (FDC).
66
67	  For this to work, either your bootloader needs to enable the CDMM
68	  region at an unused physical address on the boot CPU, or else your
69	  platform code needs to implement mips_cdmm_phys_base() (see
70	  asm/cdmm.h).
71
72config MVEBU_MBUS
73	bool
74	depends on PLAT_ORION
75	help
76	  Driver needed for the MBus configuration on Marvell EBU SoCs
77	  (Kirkwood, Dove, Orion5x, MV78XX0 and Armada 370/XP).
78
79config OMAP_INTERCONNECT
80	tristate "OMAP INTERCONNECT DRIVER"
81	depends on ARCH_OMAP2PLUS
82
83	help
84	  Driver to enable OMAP interconnect error handling driver.
85
86config OMAP_OCP2SCP
87	tristate "OMAP OCP2SCP DRIVER"
88	depends on ARCH_OMAP2PLUS
89	help
90	  Driver to enable ocp2scp module which transforms ocp interface
91	  protocol to scp protocol. In OMAP4, USB PHY is connected via
92	  OCP2SCP and in OMAP5, both USB PHY and SATA PHY is connected via
93	  OCP2SCP.
94
95config QCOM_EBI2
96	bool "Qualcomm External Bus Interface 2 (EBI2)"
97	depends on HAS_IOMEM
98	depends on ARCH_QCOM || COMPILE_TEST
99	default ARCH_QCOM
100	help
101	  Say y here to enable support for the Qualcomm External Bus
102	  Interface 2, which can be used to connect things like NAND Flash,
103	  SRAM, ethernet adapters, FPGAs and LCD displays.
104
105config SIMPLE_PM_BUS
106	tristate "Simple Power-Managed Bus Driver"
107	depends on OF && PM
108	help
109	  Driver for transparent busses that don't need a real driver, but
110	  where the bus controller is part of a PM domain, or under the control
111	  of a functional clock, and thus relies on runtime PM for managing
112	  this PM domain and/or clock.
113	  An example of such a bus controller is the Renesas Bus State
114	  Controller (BSC, sometimes called "LBSC within Bus Bridge", or
115	  "External Bus Interface") as found on several Renesas ARM SoCs.
116
117config SUN50I_DE2_BUS
118	bool "Allwinner A64 DE2 Bus Driver"
119	  default ARM64
120	  depends on ARCH_SUNXI
121	  select SUNXI_SRAM
122	  help
123	  Say y here to enable support for Allwinner A64 DE2 bus driver. It's
124	  mostly transparent, but a SRAM region needs to be claimed in the SRAM
125	  controller to make the all blocks in the DE2 part accessible.
126
127config SUNXI_RSB
128	tristate "Allwinner sunXi Reduced Serial Bus Driver"
129	  default MACH_SUN8I || MACH_SUN9I || ARM64
130	  depends on ARCH_SUNXI
131	  select REGMAP
132	  help
133	  Say y here to enable support for Allwinner's Reduced Serial Bus
134	  (RSB) support. This controller is responsible for communicating
135	  with various RSB based devices, such as AXP223, AXP8XX PMICs,
136	  and AC100/AC200 ICs.
137
138config TEGRA_ACONNECT
139	tristate "Tegra ACONNECT Bus Driver"
140	depends on ARCH_TEGRA_210_SOC
141	depends on OF && PM
142	help
143	  Driver for the Tegra ACONNECT bus which is used to interface with
144	  the devices inside the Audio Processing Engine (APE) for Tegra210.
145
146config TEGRA_GMI
147	tristate "Tegra Generic Memory Interface bus driver"
148	depends on ARCH_TEGRA
149	help
150	  Driver for the Tegra Generic Memory Interface bus which can be used
151	  to attach devices such as NOR, UART, FPGA and more.
152
153config  TI_PWMSS
154	bool
155	default y if (ARCH_OMAP2PLUS) && (PWM_TIECAP || PWM_TIEHRPWM || TI_EQEP)
156	help
157	  PWM Subsystem driver support for AM33xx SOC.
158
159	  PWM submodules require PWM config space access from submodule
160	  drivers and require common parent driver support.
161
162config TI_SYSC
163	bool "TI sysc interconnect target module driver"
164	depends on ARCH_OMAP2PLUS
165	help
166	  Generic driver for Texas Instruments interconnect target module
167	  found on many TI SoCs.
168
169config TS_NBUS
170	tristate "Technologic Systems NBUS Driver"
171	depends on SOC_IMX28
172	depends on OF_GPIO && PWM
173	help
174	  Driver for the Technologic Systems NBUS which is used to interface
175	  with the peripherals in the FPGA of the TS-4600 SoM.
176
177config UNIPHIER_SYSTEM_BUS
178	tristate "UniPhier System Bus driver"
179	depends on ARCH_UNIPHIER && OF
180	default y
181	help
182	  Support for UniPhier System Bus, a simple external bus.  This is
183	  needed to use on-board devices connected to UniPhier SoCs.
184
185config VEXPRESS_CONFIG
186	bool "Versatile Express configuration bus"
187	default y if ARCH_VEXPRESS
188	depends on ARM || ARM64
189	depends on OF
190	select REGMAP
191	help
192	  Platform configuration infrastructure for the ARM Ltd.
193	  Versatile Express.
194
195config DA8XX_MSTPRI
196	bool "TI da8xx master peripheral priority driver"
197	depends on ARCH_DAVINCI_DA8XX
198	help
199	  Driver for Texas Instruments da8xx master peripheral priority
200	  configuration. Allows to adjust the priorities of all master
201	  peripherals.
202
203source "drivers/bus/fsl-mc/Kconfig"
204source "drivers/bus/mhi/Kconfig"
205
206endmenu
207