xref: /linux/drivers/staging/greybus/Kconfig (revision d2912cb15bdda8ba4a5dd73396ad62641af2f520)
1# SPDX-License-Identifier: GPL-2.0
2menuconfig GREYBUS
3	tristate "Greybus support"
4	depends on SYSFS
5	---help---
6	  This option enables the Greybus driver core.  Greybus is an
7	  hardware protocol that was designed to provide Unipro with a
8	  sane application layer.  It was originally designed for the
9	  ARA project, a module phone system, but has shown up in other
10	  phones, and can be tunneled over other busses in order to
11	  control hardware devices.
12
13	  Say Y here to enable support for these types of drivers.
14
15	  To compile this code as a module, chose M here: the module
16	  will be called greybus.ko
17
18if GREYBUS
19
20config GREYBUS_ES2
21	tristate "Greybus ES3 USB host controller"
22	depends on USB
23	---help---
24	  Select this option if you have a Toshiba ES3 USB device that
25	  acts as a Greybus "host controller".  This device is a bridge
26	  from a USB device to a Unipro network.
27
28	  To compile this code as a module, chose M here: the module
29	  will be called gb-es2.ko
30
31config GREYBUS_AUDIO
32	tristate "Greybus Audio Class driver"
33	depends on SOUND
34	---help---
35	  Select this option if you have a device that follows the
36	  Greybus Audio Class specification.
37
38	  To compile this code as a module, chose M here: the module
39	  will be called gb-audio.ko
40
41config GREYBUS_BOOTROM
42	tristate "Greybus Bootrom Class driver"
43	---help---
44	  Select this option if you have a device that follows the
45	  Greybus Bootrom Class specification.
46
47	  To compile this code as a module, chose M here: the module
48	  will be called gb-bootrom.ko
49
50config GREYBUS_CAMERA
51	tristate "Greybus Camera Class driver"
52	depends on MEDIA_SUPPORT && LEDS_CLASS_FLASH && BROKEN
53	---help---
54	  Select this option if you have a device that follows the
55	  Greybus Camera Class specification.
56
57	  To compile this code as a module, chose M here: the module
58	  will be called gb-camera.ko
59
60config GREYBUS_FIRMWARE
61	tristate "Greybus Firmware Download Class driver"
62	depends on SPI
63	---help---
64	  Select this option if you have a device that follows the
65	  Greybus Firmware Download Class specification.
66
67	  To compile this code as a module, chose M here: the module
68	  will be called gb-firmware.ko
69
70config GREYBUS_HID
71	tristate "Greybus HID Class driver"
72	depends on HID && INPUT
73	---help---
74	  Select this option if you have a device that follows the
75	  Greybus HID Class specification.
76
77	  To compile this code as a module, chose M here: the module
78	  will be called gb-hid.ko
79
80config GREYBUS_LIGHT
81	tristate "Greybus LED Class driver"
82	depends on LEDS_CLASS
83	---help---
84	  Select this option if you have a device that follows the
85	  Greybus LED Class specification.
86
87	  To compile this code as a module, chose M here: the module
88	  will be called gb-light.ko
89
90config GREYBUS_LOG
91	tristate "Greybus Debug Log Class driver"
92	---help---
93	  Select this option if you have a device that follows the
94	  Greybus Debug Log Class specification.
95
96	  To compile this code as a module, chose M here: the module
97	  will be called gb-log.ko
98
99config GREYBUS_LOOPBACK
100	tristate "Greybus Loopback Class driver"
101	---help---
102	  Select this option if you have a device that follows the
103	  Greybus Debug Log Class specification.
104
105	  To compile this code as a module, chose M here: the module
106	  will be called gb-log.ko
107
108config GREYBUS_POWER
109	tristate "Greybus Powersupply Class driver"
110	depends on POWER_SUPPLY
111	---help---
112	  Select this option if you have a device that follows the
113	  Greybus Powersupply Class specification.
114
115	  To compile this code as a module, chose M here: the module
116	  will be called gb-power-supply.ko
117
118config GREYBUS_RAW
119	tristate "Greybus Raw Class driver"
120	---help---
121	  Select this option if you have a device that follows the
122	  Greybus Raw Class specification.
123
124	  To compile this code as a module, chose M here: the module
125	  will be called gb-raw.ko
126
127config GREYBUS_VIBRATOR
128	tristate "Greybus Vibrator Motor Class driver"
129	---help---
130	  Select this option if you have a device that follows the
131	  Greybus Vibrator Motor Class specification.
132
133	  To compile this code as a module, chose M here: the module
134	  will be called gb-vibrator.ko
135
136menuconfig GREYBUS_BRIDGED_PHY
137	tristate "Greybus Bridged PHY Class drivers"
138	---help---
139	  Select this option to pick from a variety of Greybus Bridged
140	  PHY class drivers.  These drivers emulate a number of
141	  different "traditional" busses by tunneling them over Greybus.
142	  Examples of this include serial, SPI, USB, and others.
143
144	  To compile this code as a module, chose M here: the module
145	  will be called gb-phy.ko
146
147if GREYBUS_BRIDGED_PHY
148
149config GREYBUS_GPIO
150	tristate "Greybus GPIO Bridged PHY driver"
151	depends on GPIOLIB
152	select GPIOLIB_IRQCHIP
153	---help---
154	  Select this option if you have a device that follows the
155	  Greybus GPIO Bridged PHY Class specification.
156
157	  To compile this code as a module, chose M here: the module
158	  will be called gb-gpio.ko
159
160config GREYBUS_I2C
161	tristate "Greybus I2C Bridged PHY driver"
162	depends on I2C
163	---help---
164	  Select this option if you have a device that follows the
165	  Greybus I2C Bridged PHY Class specification.
166
167	  To compile this code as a module, chose M here: the module
168	  will be called gb-i2c.ko
169
170config GREYBUS_PWM
171	tristate "Greybus PWM Bridged PHY driver"
172	depends on PWM
173	---help---
174	  Select this option if you have a device that follows the
175	  Greybus PWM Bridged PHY Class specification.
176
177	  To compile this code as a module, chose M here: the module
178	  will be called gb-pwm.ko
179
180config GREYBUS_SDIO
181	tristate "Greybus SDIO Bridged PHY driver"
182	depends on MMC
183	---help---
184	  Select this option if you have a device that follows the
185	  Greybus SDIO Bridged PHY Class specification.
186
187	  To compile this code as a module, chose M here: the module
188	  will be called gb-sdio.ko
189
190config GREYBUS_SPI
191	tristate "Greybus SPI Bridged PHY driver"
192	depends on SPI
193	---help---
194	  Select this option if you have a device that follows the
195	  Greybus SPI Bridged PHY Class specification.
196
197	  To compile this code as a module, chose M here: the module
198	  will be called gb-spi.ko
199
200config GREYBUS_UART
201	tristate "Greybus UART Bridged PHY driver"
202	depends on TTY
203	---help---
204	  Select this option if you have a device that follows the
205	  Greybus UART Bridged PHY Class specification.
206
207	  To compile this code as a module, chose M here: the module
208	  will be called gb-uart.ko
209
210config GREYBUS_USB
211	tristate "Greybus USB Host Bridged PHY driver"
212	depends on USB
213	---help---
214	  Select this option if you have a device that follows the
215	  Greybus USB Host Bridged PHY Class specification.
216
217	  To compile this code as a module, chose M here: the module
218	  will be called gb-usb.ko
219
220endif	# GREYBUS_BRIDGED_PHY
221
222config GREYBUS_ARCHE
223	tristate "Greybus Arche Platform driver"
224	depends on USB_HSIC_USB3613 || COMPILE_TEST
225	---help---
226	  Select this option if you have an Arche device.
227
228	  To compile this code as a module, chose M here: the module
229	  will be called gb-arche.ko
230
231endif	# GREYBUS
232