xref: /linux/drivers/misc/Kconfig (revision e9f0878c4b2004ac19581274c1ae4c61ae3ca70e)
1#
2# Misc strange devices
3#
4
5menu "Misc devices"
6
7config SENSORS_LIS3LV02D
8	tristate
9	depends on INPUT
10	select INPUT_POLLDEV
11	default n
12
13config AD525X_DPOT
14	tristate "Analog Devices Digital Potentiometers"
15	depends on (I2C || SPI) && SYSFS
16	help
17	  If you say yes here, you get support for the Analog Devices
18	  AD5258, AD5259, AD5251, AD5252, AD5253, AD5254, AD5255
19	  AD5160, AD5161, AD5162, AD5165, AD5200, AD5201, AD5203,
20	  AD5204, AD5206, AD5207, AD5231, AD5232, AD5233, AD5235,
21	  AD5260, AD5262, AD5263, AD5290, AD5291, AD5292, AD5293,
22	  AD7376, AD8400, AD8402, AD8403, ADN2850, AD5241, AD5242,
23	  AD5243, AD5245, AD5246, AD5247, AD5248, AD5280, AD5282,
24	  ADN2860, AD5273, AD5171, AD5170, AD5172, AD5173, AD5270,
25	  AD5271, AD5272, AD5274
26	  digital potentiometer chips.
27
28	  See Documentation/misc-devices/ad525x_dpot.txt for the
29	  userspace interface.
30
31	  This driver can also be built as a module.  If so, the module
32	  will be called ad525x_dpot.
33
34config AD525X_DPOT_I2C
35	tristate "support I2C bus connection"
36	depends on AD525X_DPOT && I2C
37	help
38	  Say Y here if you have a digital potentiometers hooked to an I2C bus.
39
40	  To compile this driver as a module, choose M here: the
41	  module will be called ad525x_dpot-i2c.
42
43config AD525X_DPOT_SPI
44	tristate "support SPI bus connection"
45	depends on AD525X_DPOT && SPI_MASTER
46	help
47	  Say Y here if you have a digital potentiometers hooked to an SPI bus.
48
49	  If unsure, say N (but it's safe to say "Y").
50
51	  To compile this driver as a module, choose M here: the
52	  module will be called ad525x_dpot-spi.
53
54config ATMEL_TCLIB
55	bool "Atmel AT32/AT91 Timer/Counter Library"
56	depends on ARCH_AT91
57	help
58	  Select this if you want a library to allocate the Timer/Counter
59	  blocks found on many Atmel processors.  This facilitates using
60	  these blocks by different drivers despite processor differences.
61
62config ATMEL_TCB_CLKSRC
63	bool "TC Block Clocksource"
64	depends on ATMEL_TCLIB
65	default y
66	help
67	  Select this to get a high precision clocksource based on a
68	  TC block with a 5+ MHz base clock rate.  Two timer channels
69	  are combined to make a single 32-bit timer.
70
71	  When GENERIC_CLOCKEVENTS is defined, the third timer channel
72	  may be used as a clock event device supporting oneshot mode
73	  (delays of up to two seconds) based on the 32 KiHz clock.
74
75config ATMEL_TCB_CLKSRC_BLOCK
76	int
77	depends on ATMEL_TCB_CLKSRC
78	default 0
79	range 0 1
80	help
81	  Some chips provide more than one TC block, so you have the
82	  choice of which one to use for the clock framework.  The other
83	  TC can be used for other purposes, such as PWM generation and
84	  interval timing.
85
86config DUMMY_IRQ
87	tristate "Dummy IRQ handler"
88	default n
89	---help---
90	  This module accepts a single 'irq' parameter, which it should register for.
91	  The sole purpose of this module is to help with debugging of systems on
92	  which spurious IRQs would happen on disabled IRQ vector.
93
94config IBM_ASM
95	tristate "Device driver for IBM RSA service processor"
96	depends on X86 && PCI && INPUT
97	depends on SERIAL_8250 || SERIAL_8250=n
98	---help---
99	  This option enables device driver support for in-band access to the
100	  IBM RSA (Condor) service processor in eServer xSeries systems.
101	  The ibmasm device driver allows user space application to access
102	  ASM (Advanced Systems Management) functions on the service
103	  processor. The driver is meant to be used in conjunction with
104	  a user space API.
105	  The ibmasm driver also enables the OS to use the UART on the
106	  service processor board as a regular serial port. To make use of
107	  this feature serial driver support (CONFIG_SERIAL_8250) must be
108	  enabled.
109
110	  WARNING: This software may not be supported or function
111	  correctly on your IBM server. Please consult the IBM ServerProven
112	  website <http://www-03.ibm.com/systems/info/x86servers/serverproven/compat/us/>
113	  for information on the specific driver level and support statement
114	  for your IBM server.
115
116config IBMVMC
117	tristate "IBM Virtual Management Channel support"
118	depends on PPC_PSERIES
119	help
120	  This is the IBM POWER Virtual Management Channel
121
122	  This driver is to be used for the POWER Virtual
123	  Management Channel virtual adapter on the PowerVM
124	  platform. It provides both request/response and
125	  async message support through the /dev/ibmvmc node.
126
127	  To compile this driver as a module, choose M here: the
128	  module will be called ibmvmc.
129
130config PHANTOM
131	tristate "Sensable PHANToM (PCI)"
132	depends on PCI
133	help
134	  Say Y here if you want to build a driver for Sensable PHANToM device.
135
136	  This driver is only for PCI PHANToMs.
137
138	  If you choose to build module, its name will be phantom. If unsure,
139	  say N here.
140
141config INTEL_MID_PTI
142	tristate "Parallel Trace Interface for MIPI P1149.7 cJTAG standard"
143	depends on PCI && TTY && (X86_INTEL_MID || COMPILE_TEST)
144	default n
145	help
146	  The PTI (Parallel Trace Interface) driver directs
147	  trace data routed from various parts in the system out
148	  through an Intel Penwell PTI port and out of the mobile
149	  device for analysis with a debugging tool (Lauterbach or Fido).
150
151	  You should select this driver if the target kernel is meant for
152	  an Intel Atom (non-netbook) mobile device containing a MIPI
153	  P1149.7 standard implementation.
154
155config SGI_IOC4
156	tristate "SGI IOC4 Base IO support"
157	depends on PCI
158	---help---
159	  This option enables basic support for the IOC4 chip on certain
160	  SGI IO controller cards (IO9, IO10, and PCI-RT).  This option
161	  does not enable any specific functions on such a card, but provides
162	  necessary infrastructure for other drivers to utilize.
163
164	  If you have an SGI Altix with an IOC4-based card say Y.
165	  Otherwise say N.
166
167config TIFM_CORE
168	tristate "TI Flash Media interface support"
169	depends on PCI
170	help
171	  If you want support for Texas Instruments(R) Flash Media adapters
172	  you should select this option and then also choose an appropriate
173	  host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter
174	  support', if you have a TI PCI74xx compatible card reader, for
175	  example.
176	  You will also have to select some flash card format drivers. MMC/SD
177	  cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD
178	  Interface support (MMC_TIFM_SD)'.
179
180	  To compile this driver as a module, choose M here: the module will
181	  be called tifm_core.
182
183config TIFM_7XX1
184	tristate "TI Flash Media PCI74xx/PCI76xx host adapter support"
185	depends on PCI && TIFM_CORE
186	default TIFM_CORE
187	help
188	  This option enables support for Texas Instruments(R) PCI74xx and
189	  PCI76xx families of Flash Media adapters, found in many laptops.
190	  To make actual use of the device, you will have to select some
191	  flash card format drivers, as outlined in the TIFM_CORE Help.
192
193	  To compile this driver as a module, choose M here: the module will
194	  be called tifm_7xx1.
195
196config ICS932S401
197	tristate "Integrated Circuits ICS932S401"
198	depends on I2C
199	help
200	  If you say yes here you get support for the Integrated Circuits
201	  ICS932S401 clock control chips.
202
203	  This driver can also be built as a module. If so, the module
204	  will be called ics932s401.
205
206config ATMEL_SSC
207	tristate "Device driver for Atmel SSC peripheral"
208	depends on HAS_IOMEM && (ARCH_AT91 || COMPILE_TEST)
209	---help---
210	  This option enables device driver support for Atmel Synchronized
211	  Serial Communication peripheral (SSC).
212
213	  The SSC peripheral supports a wide variety of serial frame based
214	  communications, i.e. I2S, SPI, etc.
215
216	  If unsure, say N.
217
218config ENCLOSURE_SERVICES
219	tristate "Enclosure Services"
220	default n
221	help
222	  Provides support for intelligent enclosures (bays which
223	  contain storage devices).  You also need either a host
224	  driver (SCSI/ATA) which supports enclosures
225	  or a SCSI enclosure device (SES) to use these services.
226
227config SGI_XP
228	tristate "Support communication between SGI SSIs"
229	depends on NET
230	depends on (IA64_GENERIC || IA64_SGI_SN2 || IA64_SGI_UV || X86_UV) && SMP
231	select IA64_UNCACHED_ALLOCATOR if IA64_GENERIC || IA64_SGI_SN2
232	select GENERIC_ALLOCATOR if IA64_GENERIC || IA64_SGI_SN2
233	select SGI_GRU if X86_64 && SMP
234	---help---
235	  An SGI machine can be divided into multiple Single System
236	  Images which act independently of each other and have
237	  hardware based memory protection from the others.  Enabling
238	  this feature will allow for direct communication between SSIs
239	  based on a network adapter and DMA messaging.
240
241config CS5535_MFGPT
242	tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support"
243	depends on MFD_CS5535
244	default n
245	help
246	  This driver provides access to MFGPT functionality for other
247	  drivers that need timers.  MFGPTs are available in the CS5535 and
248	  CS5536 companion chips that are found in AMD Geode and several
249	  other platforms.  They have a better resolution and max interval
250	  than the generic PIT, and are suitable for use as high-res timers.
251	  You probably don't want to enable this manually; other drivers that
252	  make use of it should enable it.
253
254config CS5535_MFGPT_DEFAULT_IRQ
255	int
256	depends on CS5535_MFGPT
257	default 7
258	help
259	  MFGPTs on the CS5535 require an interrupt.  The selected IRQ
260	  can be overridden as a module option as well as by driver that
261	  use the cs5535_mfgpt_ API; however, different architectures might
262	  want to use a different IRQ by default.  This is here for
263	  architectures to set as necessary.
264
265config CS5535_CLOCK_EVENT_SRC
266	tristate "CS5535/CS5536 high-res timer (MFGPT) events"
267	depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT
268	help
269	  This driver provides a clock event source based on the MFGPT
270	  timer(s) in the CS5535 and CS5536 companion chips.
271	  MFGPTs have a better resolution and max interval than the
272	  generic PIT, and are suitable for use as high-res timers.
273
274config HP_ILO
275	tristate "Channel interface driver for the HP iLO processor"
276	depends on PCI
277	default n
278	help
279	  The channel interface driver allows applications to communicate
280	  with iLO management processors present on HP ProLiant servers.
281	  Upon loading, the driver creates /dev/hpilo/dXccbN files, which
282	  can be used to gather data from the management processor, via
283	  read and write system calls.
284
285	  To compile this driver as a module, choose M here: the
286	  module will be called hpilo.
287
288config QCOM_COINCELL
289	tristate "Qualcomm coincell charger support"
290	depends on MFD_SPMI_PMIC || COMPILE_TEST
291	help
292	  This driver supports the coincell block found inside of
293	  Qualcomm PMICs.  The coincell charger provides a means to
294	  charge a coincell battery or backup capacitor which is used
295	  to maintain PMIC register and RTC state in the absence of
296	  external power.
297
298config SGI_GRU
299	tristate "SGI GRU driver"
300	depends on X86_UV && SMP
301	default n
302	select MMU_NOTIFIER
303	---help---
304	The GRU is a hardware resource located in the system chipset. The GRU
305	contains memory that can be mmapped into the user address space. This memory is
306	used to communicate with the GRU to perform functions such as load/store,
307	scatter/gather, bcopy, AMOs, etc.  The GRU is directly accessed by user
308	instructions using user virtual addresses. GRU instructions (ex., bcopy) use
309	user virtual addresses for operands.
310
311	If you are not running on a SGI UV system, say N.
312
313config SGI_GRU_DEBUG
314	bool  "SGI GRU driver debug"
315	depends on SGI_GRU
316	default n
317	---help---
318	This option enables additional debugging code for the SGI GRU driver.
319	If you are unsure, say N.
320
321config APDS9802ALS
322	tristate "Medfield Avago APDS9802 ALS Sensor module"
323	depends on I2C
324	help
325	  If you say yes here you get support for the ALS APDS9802 ambient
326	  light sensor.
327
328	  This driver can also be built as a module.  If so, the module
329	  will be called apds9802als.
330
331config ISL29003
332	tristate "Intersil ISL29003 ambient light sensor"
333	depends on I2C && SYSFS
334	help
335	  If you say yes here you get support for the Intersil ISL29003
336	  ambient light sensor.
337
338	  This driver can also be built as a module.  If so, the module
339	  will be called isl29003.
340
341config ISL29020
342	tristate "Intersil ISL29020 ambient light sensor"
343	depends on I2C
344	help
345	  If you say yes here you get support for the Intersil ISL29020
346	  ambient light sensor.
347
348	  This driver can also be built as a module.  If so, the module
349	  will be called isl29020.
350
351config SENSORS_TSL2550
352	tristate "Taos TSL2550 ambient light sensor"
353	depends on I2C && SYSFS
354	help
355	  If you say yes here you get support for the Taos TSL2550
356	  ambient light sensor.
357
358	  This driver can also be built as a module.  If so, the module
359	  will be called tsl2550.
360
361config SENSORS_BH1770
362         tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor"
363         depends on I2C
364         ---help---
365           Say Y here if you want to build a driver for BH1770GLC (ROHM) or
366	   SFH7770 (Osram) combined ambient light and proximity sensor chip.
367
368           To compile this driver as a module, choose M here: the
369           module will be called bh1770glc. If unsure, say N here.
370
371config SENSORS_APDS990X
372	 tristate "APDS990X combined als and proximity sensors"
373	 depends on I2C
374	 default n
375	 ---help---
376	   Say Y here if you want to build a driver for Avago APDS990x
377	   combined ambient light and proximity sensor chip.
378
379	   To compile this driver as a module, choose M here: the
380	   module will be called apds990x. If unsure, say N here.
381
382config HMC6352
383	tristate "Honeywell HMC6352 compass"
384	depends on I2C
385	help
386	  This driver provides support for the Honeywell HMC6352 compass,
387	  providing configuration and heading data via sysfs.
388
389config DS1682
390	tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
391	depends on I2C
392	help
393	  If you say yes here you get support for Dallas Semiconductor
394	  DS1682 Total Elapsed Time Recorder.
395
396	  This driver can also be built as a module.  If so, the module
397	  will be called ds1682.
398
399config SPEAR13XX_PCIE_GADGET
400	bool "PCIe gadget support for SPEAr13XX platform"
401	depends on ARCH_SPEAR13XX && BROKEN
402	default n
403	help
404	 This option enables gadget support for PCIe controller. If
405	 board file defines any controller as PCIe endpoint then a sysfs
406	 entry will be created for that controller. User can use these
407	 sysfs node to configure PCIe EP as per his requirements.
408
409config VMWARE_BALLOON
410	tristate "VMware Balloon Driver"
411	depends on VMWARE_VMCI && X86 && HYPERVISOR_GUEST
412	help
413	  This is VMware physical memory management driver which acts
414	  like a "balloon" that can be inflated to reclaim physical pages
415	  by reserving them in the guest and invalidating them in the
416	  monitor, freeing up the underlying machine pages so they can
417	  be allocated to other guests. The balloon can also be deflated
418	  to allow the guest to use more physical memory.
419
420	  If unsure, say N.
421
422	  To compile this driver as a module, choose M here: the
423	  module will be called vmw_balloon.
424
425config PCH_PHUB
426	tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB"
427	select GENERIC_NET_UTILS
428	depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
429	help
430	  This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of
431	  Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded
432	  processor. The Topcliff has MAC address and Option ROM data in SROM.
433	  This driver can access MAC address and Option ROM data in SROM.
434
435	  This driver also can be used for LAPIS Semiconductor's IOH,
436	  ML7213/ML7223/ML7831.
437	  ML7213 which is for IVI(In-Vehicle Infotainment) use.
438	  ML7223 IOH is for MP(Media Phone) use.
439	  ML7831 IOH is for general purpose use.
440	  ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
441	  ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
442
443	  To compile this driver as a module, choose M here: the module will
444	  be called pch_phub.
445
446config USB_SWITCH_FSA9480
447	tristate "FSA9480 USB Switch"
448	depends on I2C
449	help
450	  The FSA9480 is a USB port accessory detector and switch.
451	  The FSA9480 is fully controlled using I2C and enables USB data,
452	  stereo and mono audio, video, microphone and UART data to use
453	  a common connector port.
454
455config LATTICE_ECP3_CONFIG
456	tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
457	depends on SPI && SYSFS
458	select FW_LOADER
459	default	n
460	help
461	  This option enables support for bitstream configuration (programming
462	  or loading) of the Lattice ECP3 FPGA family via SPI.
463
464	  If unsure, say N.
465
466config SRAM
467	bool "Generic on-chip SRAM driver"
468	depends on HAS_IOMEM
469	select GENERIC_ALLOCATOR
470	select SRAM_EXEC if ARM
471	help
472	  This driver allows you to declare a memory region to be managed by
473	  the genalloc API. It is supposed to be used for small on-chip SRAM
474	  areas found on many SoCs.
475
476config SRAM_EXEC
477	bool
478
479config VEXPRESS_SYSCFG
480	bool "Versatile Express System Configuration driver"
481	depends on VEXPRESS_CONFIG
482	default y
483	help
484	  ARM Ltd. Versatile Express uses specialised platform configuration
485	  bus. System Configuration interface is one of the possible means
486	  of generating transactions on this bus.
487
488config ASPEED_LPC_CTRL
489	depends on (ARCH_ASPEED || COMPILE_TEST) && REGMAP && MFD_SYSCON
490	tristate "Aspeed ast2400/2500 HOST LPC to BMC bridge control"
491	---help---
492	  Control Aspeed ast2400/2500 HOST LPC to BMC mappings through
493	  ioctl()s, the driver also provides a read/write interface to a BMC ram
494	  region where the host LPC read/write region can be buffered.
495
496config ASPEED_LPC_SNOOP
497	tristate "Aspeed ast2500 HOST LPC snoop support"
498	depends on (ARCH_ASPEED || COMPILE_TEST) && REGMAP && MFD_SYSCON
499	help
500	  Provides a driver to control the LPC snoop interface which
501	  allows the BMC to listen on and save the data written by
502	  the host to an arbitrary LPC I/O port.
503
504config PCI_ENDPOINT_TEST
505	depends on PCI
506	select CRC32
507	tristate "PCI Endpoint Test driver"
508	---help---
509           Enable this configuration option to enable the host side test driver
510           for PCI Endpoint.
511
512config MISC_RTSX
513	tristate
514	default MISC_RTSX_PCI || MISC_RTSX_USB
515
516source "drivers/misc/c2port/Kconfig"
517source "drivers/misc/eeprom/Kconfig"
518source "drivers/misc/cb710/Kconfig"
519source "drivers/misc/ti-st/Kconfig"
520source "drivers/misc/lis3lv02d/Kconfig"
521source "drivers/misc/altera-stapl/Kconfig"
522source "drivers/misc/mei/Kconfig"
523source "drivers/misc/vmw_vmci/Kconfig"
524source "drivers/misc/mic/Kconfig"
525source "drivers/misc/genwqe/Kconfig"
526source "drivers/misc/echo/Kconfig"
527source "drivers/misc/cxl/Kconfig"
528source "drivers/misc/ocxl/Kconfig"
529source "drivers/misc/cardreader/Kconfig"
530endmenu
531