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 (AVR32 || 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	prompt "TC Block" if CPU_AT32AP700X
79	default 0
80	range 0 1
81	help
82	  Some chips provide more than one TC block, so you have the
83	  choice of which one to use for the clock framework.  The other
84	  TC can be used for other purposes, such as PWM generation and
85	  interval timing.
86
87config DUMMY_IRQ
88	tristate "Dummy IRQ handler"
89	default n
90	---help---
91	  This module accepts a single 'irq' parameter, which it should register for.
92	  The sole purpose of this module is to help with debugging of systems on
93	  which spurious IRQs would happen on disabled IRQ vector.
94
95config IBM_ASM
96	tristate "Device driver for IBM RSA service processor"
97	depends on X86 && PCI && INPUT
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 PHANTOM
117	tristate "Sensable PHANToM (PCI)"
118	depends on PCI
119	help
120	  Say Y here if you want to build a driver for Sensable PHANToM device.
121
122	  This driver is only for PCI PHANToMs.
123
124	  If you choose to build module, its name will be phantom. If unsure,
125	  say N here.
126
127config INTEL_MID_PTI
128	tristate "Parallel Trace Interface for MIPI P1149.7 cJTAG standard"
129	depends on PCI && TTY && (X86_INTEL_MID || COMPILE_TEST)
130	default n
131	help
132	  The PTI (Parallel Trace Interface) driver directs
133	  trace data routed from various parts in the system out
134	  through an Intel Penwell PTI port and out of the mobile
135	  device for analysis with a debugging tool (Lauterbach or Fido).
136
137	  You should select this driver if the target kernel is meant for
138	  an Intel Atom (non-netbook) mobile device containing a MIPI
139	  P1149.7 standard implementation.
140
141config SGI_IOC4
142	tristate "SGI IOC4 Base IO support"
143	depends on PCI
144	---help---
145	  This option enables basic support for the IOC4 chip on certain
146	  SGI IO controller cards (IO9, IO10, and PCI-RT).  This option
147	  does not enable any specific functions on such a card, but provides
148	  necessary infrastructure for other drivers to utilize.
149
150	  If you have an SGI Altix with an IOC4-based card say Y.
151	  Otherwise say N.
152
153config TIFM_CORE
154	tristate "TI Flash Media interface support"
155	depends on PCI
156	help
157	  If you want support for Texas Instruments(R) Flash Media adapters
158	  you should select this option and then also choose an appropriate
159	  host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter
160	  support', if you have a TI PCI74xx compatible card reader, for
161	  example.
162	  You will also have to select some flash card format drivers. MMC/SD
163	  cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD
164	  Interface support (MMC_TIFM_SD)'.
165
166	  To compile this driver as a module, choose M here: the module will
167	  be called tifm_core.
168
169config TIFM_7XX1
170	tristate "TI Flash Media PCI74xx/PCI76xx host adapter support"
171	depends on PCI && TIFM_CORE
172	default TIFM_CORE
173	help
174	  This option enables support for Texas Instruments(R) PCI74xx and
175	  PCI76xx families of Flash Media adapters, found in many laptops.
176	  To make actual use of the device, you will have to select some
177	  flash card format drivers, as outlined in the TIFM_CORE Help.
178
179	  To compile this driver as a module, choose M here: the module will
180	  be called tifm_7xx1.
181
182config ICS932S401
183	tristate "Integrated Circuits ICS932S401"
184	depends on I2C
185	help
186	  If you say yes here you get support for the Integrated Circuits
187	  ICS932S401 clock control chips.
188
189	  This driver can also be built as a module. If so, the module
190	  will be called ics932s401.
191
192config ATMEL_SSC
193	tristate "Device driver for Atmel SSC peripheral"
194	depends on HAS_IOMEM && (AVR32 || ARCH_AT91 || COMPILE_TEST)
195	---help---
196	  This option enables device driver support for Atmel Synchronized
197	  Serial Communication peripheral (SSC).
198
199	  The SSC peripheral supports a wide variety of serial frame based
200	  communications, i.e. I2S, SPI, etc.
201
202	  If unsure, say N.
203
204config ENCLOSURE_SERVICES
205	tristate "Enclosure Services"
206	default n
207	help
208	  Provides support for intelligent enclosures (bays which
209	  contain storage devices).  You also need either a host
210	  driver (SCSI/ATA) which supports enclosures
211	  or a SCSI enclosure device (SES) to use these services.
212
213config SGI_XP
214	tristate "Support communication between SGI SSIs"
215	depends on NET
216	depends on (IA64_GENERIC || IA64_SGI_SN2 || IA64_SGI_UV || X86_UV) && SMP
217	select IA64_UNCACHED_ALLOCATOR if IA64_GENERIC || IA64_SGI_SN2
218	select GENERIC_ALLOCATOR if IA64_GENERIC || IA64_SGI_SN2
219	select SGI_GRU if X86_64 && SMP
220	---help---
221	  An SGI machine can be divided into multiple Single System
222	  Images which act independently of each other and have
223	  hardware based memory protection from the others.  Enabling
224	  this feature will allow for direct communication between SSIs
225	  based on a network adapter and DMA messaging.
226
227config CS5535_MFGPT
228	tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support"
229	depends on MFD_CS5535
230	default n
231	help
232	  This driver provides access to MFGPT functionality for other
233	  drivers that need timers.  MFGPTs are available in the CS5535 and
234	  CS5536 companion chips that are found in AMD Geode and several
235	  other platforms.  They have a better resolution and max interval
236	  than the generic PIT, and are suitable for use as high-res timers.
237	  You probably don't want to enable this manually; other drivers that
238	  make use of it should enable it.
239
240config CS5535_MFGPT_DEFAULT_IRQ
241	int
242	depends on CS5535_MFGPT
243	default 7
244	help
245	  MFGPTs on the CS5535 require an interrupt.  The selected IRQ
246	  can be overridden as a module option as well as by driver that
247	  use the cs5535_mfgpt_ API; however, different architectures might
248	  want to use a different IRQ by default.  This is here for
249	  architectures to set as necessary.
250
251config CS5535_CLOCK_EVENT_SRC
252	tristate "CS5535/CS5536 high-res timer (MFGPT) events"
253	depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT
254	help
255	  This driver provides a clock event source based on the MFGPT
256	  timer(s) in the CS5535 and CS5536 companion chips.
257	  MFGPTs have a better resolution and max interval than the
258	  generic PIT, and are suitable for use as high-res timers.
259
260config HP_ILO
261	tristate "Channel interface driver for the HP iLO processor"
262	depends on PCI
263	default n
264	help
265	  The channel interface driver allows applications to communicate
266	  with iLO management processors present on HP ProLiant servers.
267	  Upon loading, the driver creates /dev/hpilo/dXccbN files, which
268	  can be used to gather data from the management processor, via
269	  read and write system calls.
270
271	  To compile this driver as a module, choose M here: the
272	  module will be called hpilo.
273
274config QCOM_COINCELL
275	tristate "Qualcomm coincell charger support"
276	depends on MFD_SPMI_PMIC || COMPILE_TEST
277	help
278	  This driver supports the coincell block found inside of
279	  Qualcomm PMICs.  The coincell charger provides a means to
280	  charge a coincell battery or backup capacitor which is used
281	  to maintain PMIC register and RTC state in the absence of
282	  external power.
283
284config SGI_GRU
285	tristate "SGI GRU driver"
286	depends on X86_UV && SMP
287	default n
288	select MMU_NOTIFIER
289	---help---
290	The GRU is a hardware resource located in the system chipset. The GRU
291	contains memory that can be mmapped into the user address space. This memory is
292	used to communicate with the GRU to perform functions such as load/store,
293	scatter/gather, bcopy, AMOs, etc.  The GRU is directly accessed by user
294	instructions using user virtual addresses. GRU instructions (ex., bcopy) use
295	user virtual addresses for operands.
296
297	If you are not running on a SGI UV system, say N.
298
299config SGI_GRU_DEBUG
300	bool  "SGI GRU driver debug"
301	depends on SGI_GRU
302	default n
303	---help---
304	This option enables additional debugging code for the SGI GRU driver.
305	If you are unsure, say N.
306
307config APDS9802ALS
308	tristate "Medfield Avago APDS9802 ALS Sensor module"
309	depends on I2C
310	help
311	  If you say yes here you get support for the ALS APDS9802 ambient
312	  light sensor.
313
314	  This driver can also be built as a module.  If so, the module
315	  will be called apds9802als.
316
317config ISL29003
318	tristate "Intersil ISL29003 ambient light sensor"
319	depends on I2C && SYSFS
320	help
321	  If you say yes here you get support for the Intersil ISL29003
322	  ambient light sensor.
323
324	  This driver can also be built as a module.  If so, the module
325	  will be called isl29003.
326
327config ISL29020
328	tristate "Intersil ISL29020 ambient light sensor"
329	depends on I2C
330	help
331	  If you say yes here you get support for the Intersil ISL29020
332	  ambient light sensor.
333
334	  This driver can also be built as a module.  If so, the module
335	  will be called isl29020.
336
337config SENSORS_TSL2550
338	tristate "Taos TSL2550 ambient light sensor"
339	depends on I2C && SYSFS
340	help
341	  If you say yes here you get support for the Taos TSL2550
342	  ambient light sensor.
343
344	  This driver can also be built as a module.  If so, the module
345	  will be called tsl2550.
346
347config SENSORS_BH1780
348	tristate "ROHM BH1780GLI ambient light sensor"
349	depends on I2C && SYSFS
350	help
351	  If you say yes here you get support for the ROHM BH1780GLI
352	  ambient light sensor.
353
354	  This driver can also be built as a module.  If so, the module
355	  will be called bh1780gli.
356
357config SENSORS_BH1770
358         tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor"
359         depends on I2C
360         ---help---
361           Say Y here if you want to build a driver for BH1770GLC (ROHM) or
362	   SFH7770 (Osram) combined ambient light and proximity sensor chip.
363
364           To compile this driver as a module, choose M here: the
365           module will be called bh1770glc. If unsure, say N here.
366
367config SENSORS_APDS990X
368	 tristate "APDS990X combined als and proximity sensors"
369	 depends on I2C
370	 default n
371	 ---help---
372	   Say Y here if you want to build a driver for Avago APDS990x
373	   combined ambient light and proximity sensor chip.
374
375	   To compile this driver as a module, choose M here: the
376	   module will be called apds990x. If unsure, say N here.
377
378config HMC6352
379	tristate "Honeywell HMC6352 compass"
380	depends on I2C
381	help
382	  This driver provides support for the Honeywell HMC6352 compass,
383	  providing configuration and heading data via sysfs.
384
385config DS1682
386	tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
387	depends on I2C
388	help
389	  If you say yes here you get support for Dallas Semiconductor
390	  DS1682 Total Elapsed Time Recorder.
391
392	  This driver can also be built as a module.  If so, the module
393	  will be called ds1682.
394
395config SPEAR13XX_PCIE_GADGET
396	bool "PCIe gadget support for SPEAr13XX platform"
397	depends on ARCH_SPEAR13XX && BROKEN
398	default n
399	help
400	 This option enables gadget support for PCIe controller. If
401	 board file defines any controller as PCIe endpoint then a sysfs
402	 entry will be created for that controller. User can use these
403	 sysfs node to configure PCIe EP as per his requirements.
404
405config TI_DAC7512
406	tristate "Texas Instruments DAC7512"
407	depends on SPI && SYSFS
408	help
409	  If you say yes here you get support for the Texas Instruments
410	  DAC7512 16-bit digital-to-analog converter.
411
412	  This driver can also be built as a module. If so, the module
413	  will be called ti_dac7512.
414
415config VMWARE_BALLOON
416	tristate "VMware Balloon Driver"
417	depends on VMWARE_VMCI && X86 && HYPERVISOR_GUEST
418	help
419	  This is VMware physical memory management driver which acts
420	  like a "balloon" that can be inflated to reclaim physical pages
421	  by reserving them in the guest and invalidating them in the
422	  monitor, freeing up the underlying machine pages so they can
423	  be allocated to other guests. The balloon can also be deflated
424	  to allow the guest to use more physical memory.
425
426	  If unsure, say N.
427
428	  To compile this driver as a module, choose M here: the
429	  module will be called vmw_balloon.
430
431config ARM_CHARLCD
432	bool "ARM Ltd. Character LCD Driver"
433	depends on PLAT_VERSATILE
434	help
435	  This is a driver for the character LCD found on the ARM Ltd.
436	  Versatile and RealView Platform Baseboards. It doesn't do
437	  very much more than display the text "ARM Linux" on the first
438	  line and the Linux version on the second line, but that's
439	  still useful.
440
441config BMP085
442	tristate
443	depends on SYSFS
444
445config BMP085_I2C
446	tristate "BMP085 digital pressure sensor on I2C"
447	select BMP085
448	select REGMAP_I2C
449	depends on I2C && SYSFS
450	help
451	  Say Y here if you want to support Bosch Sensortec's digital pressure
452	  sensor hooked to an I2C bus.
453
454	  To compile this driver as a module, choose M here: the
455	  module will be called bmp085-i2c.
456
457config BMP085_SPI
458	tristate "BMP085 digital pressure sensor on SPI"
459	select BMP085
460	select REGMAP_SPI
461	depends on SPI_MASTER && SYSFS
462	help
463	  Say Y here if you want to support Bosch Sensortec's digital pressure
464	  sensor hooked to an SPI bus.
465
466	  To compile this driver as a module, choose M here: the
467	  module will be called bmp085-spi.
468
469config PCH_PHUB
470	tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB"
471	select GENERIC_NET_UTILS
472	depends on PCI && (X86_32 || COMPILE_TEST)
473	help
474	  This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of
475	  Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded
476	  processor. The Topcliff has MAC address and Option ROM data in SROM.
477	  This driver can access MAC address and Option ROM data in SROM.
478
479	  This driver also can be used for LAPIS Semiconductor's IOH,
480	  ML7213/ML7223/ML7831.
481	  ML7213 which is for IVI(In-Vehicle Infotainment) use.
482	  ML7223 IOH is for MP(Media Phone) use.
483	  ML7831 IOH is for general purpose use.
484	  ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
485	  ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
486
487	  To compile this driver as a module, choose M here: the module will
488	  be called pch_phub.
489
490config USB_SWITCH_FSA9480
491	tristate "FSA9480 USB Switch"
492	depends on I2C
493	help
494	  The FSA9480 is a USB port accessory detector and switch.
495	  The FSA9480 is fully controlled using I2C and enables USB data,
496	  stereo and mono audio, video, microphone and UART data to use
497	  a common connector port.
498
499config LATTICE_ECP3_CONFIG
500	tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
501	depends on SPI && SYSFS
502	select FW_LOADER
503	default	n
504	help
505	  This option enables support for bitstream configuration (programming
506	  or loading) of the Lattice ECP3 FPGA family via SPI.
507
508	  If unsure, say N.
509
510config SRAM
511	bool "Generic on-chip SRAM driver"
512	depends on HAS_IOMEM
513	select GENERIC_ALLOCATOR
514	help
515	  This driver allows you to declare a memory region to be managed by
516	  the genalloc API. It is supposed to be used for small on-chip SRAM
517	  areas found on many SoCs.
518
519config VEXPRESS_SYSCFG
520	bool "Versatile Express System Configuration driver"
521	depends on VEXPRESS_CONFIG
522	default y
523	help
524	  ARM Ltd. Versatile Express uses specialised platform configuration
525	  bus. System Configuration interface is one of the possible means
526	  of generating transactions on this bus.
527
528source "drivers/misc/c2port/Kconfig"
529source "drivers/misc/eeprom/Kconfig"
530source "drivers/misc/cb710/Kconfig"
531source "drivers/misc/ti-st/Kconfig"
532source "drivers/misc/lis3lv02d/Kconfig"
533source "drivers/misc/altera-stapl/Kconfig"
534source "drivers/misc/mei/Kconfig"
535source "drivers/misc/vmw_vmci/Kconfig"
536source "drivers/misc/mic/Kconfig"
537source "drivers/misc/genwqe/Kconfig"
538source "drivers/misc/echo/Kconfig"
539source "drivers/misc/cxl/Kconfig"
540endmenu
541