xref: /openbmc/linux/drivers/bus/Kconfig (revision f3539c12)
1#
2# Bus Devices
3#
4
5menu "Bus devices"
6
7config ARM_CCI
8	bool
9
10config ARM_CCI_PMU
11	bool
12	select ARM_CCI
13
14config ARM_CCI400_COMMON
15	bool
16	select ARM_CCI
17
18config ARM_CCI400_PMU
19	bool "ARM CCI400 PMU support"
20	depends on (ARM && CPU_V7) || ARM64
21	depends on PERF_EVENTS
22	select ARM_CCI400_COMMON
23	select ARM_CCI_PMU
24	help
25	  Support for PMU events monitoring on the ARM CCI-400 (cache coherent
26	  interconnect). CCI-400 supports counting events related to the
27	  connected slave/master interfaces.
28
29config ARM_CCI400_PORT_CTRL
30	bool
31	depends on ARM && OF && CPU_V7
32	select ARM_CCI400_COMMON
33	help
34	  Low level power management driver for CCI400 cache coherent
35	  interconnect for ARM platforms.
36
37config ARM_CCI5xx_PMU
38	bool "ARM CCI-500/CCI-550 PMU support"
39	depends on (ARM && CPU_V7) || ARM64
40	depends on PERF_EVENTS
41	select ARM_CCI_PMU
42	help
43	  Support for PMU events monitoring on the ARM CCI-500/CCI-550 cache
44	  coherent interconnects. Both of them provide 8 independent event counters,
45	  which can count events pertaining to the slave/master interfaces as well
46	  as the internal events to the CCI.
47
48	  If unsure, say Y
49
50config ARM_CCN
51	tristate "ARM CCN driver support"
52	depends on ARM || ARM64
53	depends on PERF_EVENTS
54	help
55	  PMU (perf) driver supporting the ARM CCN (Cache Coherent Network)
56	  interconnect.
57
58config BRCMSTB_GISB_ARB
59	bool "Broadcom STB GISB bus arbiter"
60	depends on ARM || MIPS
61	default ARCH_BRCMSTB || BMIPS_GENERIC
62	help
63	  Driver for the Broadcom Set Top Box System-on-a-chip internal bus
64	  arbiter. This driver provides timeout and target abort error handling
65	  and internal bus master decoding.
66
67config IMX_WEIM
68	bool "Freescale EIM DRIVER"
69	depends on ARCH_MXC
70	help
71	  Driver for i.MX WEIM controller.
72	  The WEIM(Wireless External Interface Module) works like a bus.
73	  You can attach many different devices on it, such as NOR, onenand.
74
75config MIPS_CDMM
76	bool "MIPS Common Device Memory Map (CDMM) Driver"
77	depends on CPU_MIPSR2
78	help
79	  Driver needed for the MIPS Common Device Memory Map bus in MIPS
80	  cores. This bus is for per-CPU tightly coupled devices such as the
81	  Fast Debug Channel (FDC).
82
83	  For this to work, either your bootloader needs to enable the CDMM
84	  region at an unused physical address on the boot CPU, or else your
85	  platform code needs to implement mips_cdmm_phys_base() (see
86	  asm/cdmm.h).
87
88config MVEBU_MBUS
89	bool
90	depends on PLAT_ORION
91	help
92	  Driver needed for the MBus configuration on Marvell EBU SoCs
93	  (Kirkwood, Dove, Orion5x, MV78XX0 and Armada 370/XP).
94
95config OMAP_INTERCONNECT
96	tristate "OMAP INTERCONNECT DRIVER"
97	depends on ARCH_OMAP2PLUS
98
99	help
100	  Driver to enable OMAP interconnect error handling driver.
101
102config OMAP_OCP2SCP
103	tristate "OMAP OCP2SCP DRIVER"
104	depends on ARCH_OMAP2PLUS
105	help
106	  Driver to enable ocp2scp module which transforms ocp interface
107	  protocol to scp protocol. In OMAP4, USB PHY is connected via
108	  OCP2SCP and in OMAP5, both USB PHY and SATA PHY is connected via
109	  OCP2SCP.
110
111config SIMPLE_PM_BUS
112	bool "Simple Power-Managed Bus Driver"
113	depends on OF && PM
114	depends on ARCH_RENESAS || COMPILE_TEST
115	help
116	  Driver for transparent busses that don't need a real driver, but
117	  where the bus controller is part of a PM domain, or under the control
118	  of a functional clock, and thus relies on runtime PM for managing
119	  this PM domain and/or clock.
120	  An example of such a bus controller is the Renesas Bus State
121	  Controller (BSC, sometimes called "LBSC within Bus Bridge", or
122	  "External Bus Interface") as found on several Renesas ARM SoCs.
123
124config SUNXI_RSB
125	tristate "Allwinner sunXi Reduced Serial Bus Driver"
126	  default MACH_SUN8I || MACH_SUN9I
127	  depends on ARCH_SUNXI
128	  select REGMAP
129	  help
130	  Say y here to enable support for Allwinner's Reduced Serial Bus
131	  (RSB) support. This controller is responsible for communicating
132	  with various RSB based devices, such as AXP223, AXP8XX PMICs,
133	  and AC100/AC200 ICs.
134
135# TODO: This uses pm_clk_*() symbols that aren't exported in v4.7 and hence
136# the driver will fail to build as a module. However there are patches to
137# address that queued for v4.8, so this can be turned into a tristate symbol
138# after v4.8-rc1.
139config TEGRA_ACONNECT
140	bool "Tegra ACONNECT Bus Driver"
141	depends on ARCH_TEGRA_210_SOC
142	depends on OF && PM
143	select PM_CLK
144	help
145	  Driver for the Tegra ACONNECT bus which is used to interface with
146	  the devices inside the Audio Processing Engine (APE) for Tegra210.
147
148config UNIPHIER_SYSTEM_BUS
149	tristate "UniPhier System Bus driver"
150	depends on ARCH_UNIPHIER && OF
151	default y
152	help
153	  Support for UniPhier System Bus, a simple external bus.  This is
154	  needed to use on-board devices connected to UniPhier SoCs.
155
156config VEXPRESS_CONFIG
157	bool "Versatile Express configuration bus"
158	default y if ARCH_VEXPRESS
159	depends on ARM || ARM64
160	depends on OF
161	select REGMAP
162	help
163	  Platform configuration infrastructure for the ARM Ltd.
164	  Versatile Express.
165endmenu
166