Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Misc strange devices
4#
5
6menu "Misc devices"
7
8config SENSORS_LIS3LV02D
9 tristate
10 depends on INPUT
11
12config AD525X_DPOT
13 tristate "Analog Devices Digital Potentiometers"
14 depends on (I2C || SPI) && SYSFS
15 help
16 If you say yes here, you get support for the Analog Devices
17 AD5258, AD5259, AD5251, AD5252, AD5253, AD5254, AD5255
18 AD5160, AD5161, AD5162, AD5165, AD5200, AD5201, AD5203,
19 AD5204, AD5206, AD5207, AD5231, AD5232, AD5233, AD5235,
20 AD5260, AD5262, AD5263, AD5290, AD5291, AD5292, AD5293,
21 AD7376, AD8400, AD8402, AD8403, ADN2850, AD5241, AD5242,
22 AD5243, AD5245, AD5246, AD5247, AD5248, AD5280, AD5282,
23 ADN2860, AD5273, AD5171, AD5170, AD5172, AD5173, AD5270,
24 AD5271, AD5272, AD5274
25 digital potentiometer chips.
26
27 See Documentation/misc-devices/ad525x_dpot.rst for the
28 userspace interface.
29
30 This driver can also be built as a module. If so, the module
31 will be called ad525x_dpot.
32
33config AD525X_DPOT_I2C
34 tristate "support I2C bus connection"
35 depends on AD525X_DPOT && I2C
36 help
37 Say Y here if you have a digital potentiometers hooked to an I2C bus.
38
39 To compile this driver as a module, choose M here: the
40 module will be called ad525x_dpot-i2c.
41
42config AD525X_DPOT_SPI
43 tristate "support SPI bus connection"
44 depends on AD525X_DPOT && SPI_MASTER
45 help
46 Say Y here if you have a digital potentiometers hooked to an SPI bus.
47
48 If unsure, say N (but it's safe to say "Y").
49
50 To compile this driver as a module, choose M here: the
51 module will be called ad525x_dpot-spi.
52
53config DUMMY_IRQ
54 tristate "Dummy IRQ handler"
55 help
56 This module accepts a single 'irq' parameter, which it should register for.
57 The sole purpose of this module is to help with debugging of systems on
58 which spurious IRQs would happen on disabled IRQ vector.
59
60config IBM_ASM
61 tristate "Device driver for IBM RSA service processor"
62 depends on X86 && PCI && INPUT
63 depends on SERIAL_8250 || SERIAL_8250=n
64 help
65 This option enables device driver support for in-band access to the
66 IBM RSA (Condor) service processor in eServer xSeries systems.
67 The ibmasm device driver allows user space application to access
68 ASM (Advanced Systems Management) functions on the service
69 processor. The driver is meant to be used in conjunction with
70 a user space API.
71 The ibmasm driver also enables the OS to use the UART on the
72 service processor board as a regular serial port. To make use of
73 this feature serial driver support (CONFIG_SERIAL_8250) must be
74 enabled.
75
76 WARNING: This software may not be supported or function
77 correctly on your IBM server. Please consult the IBM ServerProven
78 website <https://www-03.ibm.com/systems/info/x86servers/serverproven/compat/us/>
79 for information on the specific driver level and support statement
80 for your IBM server.
81
82config IBMVMC
83 tristate "IBM Virtual Management Channel support"
84 depends on PPC_PSERIES
85 help
86 This is the IBM POWER Virtual Management Channel
87
88 This driver is to be used for the POWER Virtual
89 Management Channel virtual adapter on the PowerVM
90 platform. It provides both request/response and
91 async message support through the /dev/ibmvmc node.
92
93 To compile this driver as a module, choose M here: the
94 module will be called ibmvmc.
95
96config PHANTOM
97 tristate "Sensable PHANToM (PCI)"
98 depends on PCI
99 help
100 Say Y here if you want to build a driver for Sensable PHANToM device.
101
102 This driver is only for PCI PHANToMs.
103
104 If you choose to build module, its name will be phantom. If unsure,
105 say N here.
106
107config TIFM_CORE
108 tristate "TI Flash Media interface support"
109 depends on PCI
110 help
111 If you want support for Texas Instruments(R) Flash Media adapters
112 you should select this option and then also choose an appropriate
113 host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter
114 support', if you have a TI PCI74xx compatible card reader, for
115 example.
116 You will also have to select some flash card format drivers. MMC/SD
117 cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD
118 Interface support (MMC_TIFM_SD)'.
119
120 To compile this driver as a module, choose M here: the module will
121 be called tifm_core.
122
123config TIFM_7XX1
124 tristate "TI Flash Media PCI74xx/PCI76xx host adapter support"
125 depends on PCI && TIFM_CORE
126 default TIFM_CORE
127 help
128 This option enables support for Texas Instruments(R) PCI74xx and
129 PCI76xx families of Flash Media adapters, found in many laptops.
130 To make actual use of the device, you will have to select some
131 flash card format drivers, as outlined in the TIFM_CORE Help.
132
133 To compile this driver as a module, choose M here: the module will
134 be called tifm_7xx1.
135
136config ICS932S401
137 tristate "Integrated Circuits ICS932S401"
138 depends on I2C
139 help
140 If you say yes here you get support for the Integrated Circuits
141 ICS932S401 clock control chips.
142
143 This driver can also be built as a module. If so, the module
144 will be called ics932s401.
145
146config ATMEL_SSC
147 tristate "Device driver for Atmel SSC peripheral"
148 depends on HAS_IOMEM && (ARCH_AT91 || COMPILE_TEST)
149 help
150 This option enables device driver support for Atmel Synchronized
151 Serial Communication peripheral (SSC).
152
153 The SSC peripheral supports a wide variety of serial frame based
154 communications, i.e. I2S, SPI, etc.
155
156 If unsure, say N.
157
158config ENCLOSURE_SERVICES
159 tristate "Enclosure Services"
160 help
161 Provides support for intelligent enclosures (bays which
162 contain storage devices). You also need either a host
163 driver (SCSI/ATA) which supports enclosures
164 or a SCSI enclosure device (SES) to use these services.
165
166config SGI_XP
167 tristate "Support communication between SGI SSIs"
168 depends on NET
169 depends on (IA64_SGI_UV || X86_UV) && SMP
170 depends on X86_64 || BROKEN
171 select SGI_GRU if X86_64 && SMP
172 help
173 An SGI machine can be divided into multiple Single System
174 Images which act independently of each other and have
175 hardware based memory protection from the others. Enabling
176 this feature will allow for direct communication between SSIs
177 based on a network adapter and DMA messaging.
178
179config CS5535_MFGPT
180 tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support"
181 depends on MFD_CS5535
182 help
183 This driver provides access to MFGPT functionality for other
184 drivers that need timers. MFGPTs are available in the CS5535 and
185 CS5536 companion chips that are found in AMD Geode and several
186 other platforms. They have a better resolution and max interval
187 than the generic PIT, and are suitable for use as high-res timers.
188 You probably don't want to enable this manually; other drivers that
189 make use of it should enable it.
190
191config CS5535_MFGPT_DEFAULT_IRQ
192 int
193 depends on CS5535_MFGPT
194 default 7
195 help
196 MFGPTs on the CS5535 require an interrupt. The selected IRQ
197 can be overridden as a module option as well as by driver that
198 use the cs5535_mfgpt_ API; however, different architectures might
199 want to use a different IRQ by default. This is here for
200 architectures to set as necessary.
201
202config CS5535_CLOCK_EVENT_SRC
203 tristate "CS5535/CS5536 high-res timer (MFGPT) events"
204 depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT
205 help
206 This driver provides a clock event source based on the MFGPT
207 timer(s) in the CS5535 and CS5536 companion chips.
208 MFGPTs have a better resolution and max interval than the
209 generic PIT, and are suitable for use as high-res timers.
210
211config GEHC_ACHC
212 tristate "GEHC ACHC support"
213 depends on SPI && SYSFS
214 depends on SOC_IMX53 || COMPILE_TEST
215 select FW_LOADER
216 help
217 Support for GE ACHC microcontroller, that is part of the GE
218 PPD device.
219
220 To compile this driver as a module, choose M here: the
221 module will be called gehc-achc.
222
223config HI6421V600_IRQ
224 tristate "HiSilicon Hi6421v600 IRQ and powerkey"
225 depends on OF
226 depends on SPMI
227 depends on HAS_IOMEM
228 select MFD_CORE
229 select REGMAP_SPMI
230 help
231 This driver provides IRQ handling for Hi6421v600, used on
232 some Kirin chipsets, like the one at Hikey 970.
233
234config HP_ILO
235 tristate "Channel interface driver for the HP iLO processor"
236 depends on PCI
237 help
238 The channel interface driver allows applications to communicate
239 with iLO management processors present on HP ProLiant servers.
240 Upon loading, the driver creates /dev/hpilo/dXccbN files, which
241 can be used to gather data from the management processor, via
242 read and write system calls.
243
244 To compile this driver as a module, choose M here: the
245 module will be called hpilo.
246
247config QCOM_COINCELL
248 tristate "Qualcomm coincell charger support"
249 depends on MFD_SPMI_PMIC || COMPILE_TEST
250 help
251 This driver supports the coincell block found inside of
252 Qualcomm PMICs. The coincell charger provides a means to
253 charge a coincell battery or backup capacitor which is used
254 to maintain PMIC register and RTC state in the absence of
255 external power.
256
257config QCOM_FASTRPC
258 tristate "Qualcomm FastRPC"
259 depends on ARCH_QCOM || COMPILE_TEST
260 depends on RPMSG
261 select DMA_SHARED_BUFFER
262 select QCOM_SCM
263 help
264 Provides a communication mechanism that allows for clients to
265 make remote method invocations across processor boundary to
266 applications DSP processor. Say M if you want to enable this
267 module.
268
269config SGI_GRU
270 tristate "SGI GRU driver"
271 depends on X86_UV && SMP
272 select MMU_NOTIFIER
273 help
274 The GRU is a hardware resource located in the system chipset. The GRU
275 contains memory that can be mmapped into the user address space. This memory is
276 used to communicate with the GRU to perform functions such as load/store,
277 scatter/gather, bcopy, AMOs, etc. The GRU is directly accessed by user
278 instructions using user virtual addresses. GRU instructions (ex., bcopy) use
279 user virtual addresses for operands.
280
281 If you are not running on a SGI UV system, say N.
282
283config SGI_GRU_DEBUG
284 bool "SGI GRU driver debug"
285 depends on SGI_GRU
286 help
287 This option enables additional debugging code for the SGI GRU driver.
288 If you are unsure, say N.
289
290config APDS9802ALS
291 tristate "Medfield Avago APDS9802 ALS Sensor module"
292 depends on I2C
293 help
294 If you say yes here you get support for the ALS APDS9802 ambient
295 light sensor.
296
297 This driver can also be built as a module. If so, the module
298 will be called apds9802als.
299
300config ISL29003
301 tristate "Intersil ISL29003 ambient light sensor"
302 depends on I2C && SYSFS
303 help
304 If you say yes here you get support for the Intersil ISL29003
305 ambient light sensor.
306
307 This driver can also be built as a module. If so, the module
308 will be called isl29003.
309
310config ISL29020
311 tristate "Intersil ISL29020 ambient light sensor"
312 depends on I2C
313 help
314 If you say yes here you get support for the Intersil ISL29020
315 ambient light sensor.
316
317 This driver can also be built as a module. If so, the module
318 will be called isl29020.
319
320config SENSORS_TSL2550
321 tristate "Taos TSL2550 ambient light sensor"
322 depends on I2C && SYSFS
323 help
324 If you say yes here you get support for the Taos TSL2550
325 ambient light sensor.
326
327 This driver can also be built as a module. If so, the module
328 will be called tsl2550.
329
330config SENSORS_BH1770
331 tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor"
332 depends on I2C
333 help
334 Say Y here if you want to build a driver for BH1770GLC (ROHM) or
335 SFH7770 (Osram) combined ambient light and proximity sensor chip.
336
337 To compile this driver as a module, choose M here: the
338 module will be called bh1770glc. If unsure, say N here.
339
340config SENSORS_APDS990X
341 tristate "APDS990X combined als and proximity sensors"
342 depends on I2C
343 help
344 Say Y here if you want to build a driver for Avago APDS990x
345 combined ambient light and proximity sensor chip.
346
347 To compile this driver as a module, choose M here: the
348 module will be called apds990x. If unsure, say N here.
349
350config HMC6352
351 tristate "Honeywell HMC6352 compass"
352 depends on I2C
353 help
354 This driver provides support for the Honeywell HMC6352 compass,
355 providing configuration and heading data via sysfs.
356
357config DS1682
358 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
359 depends on I2C
360 help
361 If you say yes here you get support for Dallas Semiconductor
362 DS1682 Total Elapsed Time Recorder.
363
364 This driver can also be built as a module. If so, the module
365 will be called ds1682.
366
367config VMWARE_BALLOON
368 tristate "VMware Balloon Driver"
369 depends on VMWARE_VMCI && X86 && HYPERVISOR_GUEST
370 select MEMORY_BALLOON
371 help
372 This is VMware physical memory management driver which acts
373 like a "balloon" that can be inflated to reclaim physical pages
374 by reserving them in the guest and invalidating them in the
375 monitor, freeing up the underlying machine pages so they can
376 be allocated to other guests. The balloon can also be deflated
377 to allow the guest to use more physical memory.
378
379 If unsure, say N.
380
381 To compile this driver as a module, choose M here: the
382 module will be called vmw_balloon.
383
384config PCH_PHUB
385 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB"
386 select GENERIC_NET_UTILS
387 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
388 help
389 This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of
390 Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded
391 processor. The Topcliff has MAC address and Option ROM data in SROM.
392 This driver can access MAC address and Option ROM data in SROM.
393
394 This driver also can be used for LAPIS Semiconductor's IOH,
395 ML7213/ML7223/ML7831.
396 ML7213 which is for IVI(In-Vehicle Infotainment) use.
397 ML7223 IOH is for MP(Media Phone) use.
398 ML7831 IOH is for general purpose use.
399 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
400 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
401
402 To compile this driver as a module, choose M here: the module will
403 be called pch_phub.
404
405config LATTICE_ECP3_CONFIG
406 tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
407 depends on SPI && SYSFS
408 select FW_LOADER
409 default n
410 help
411 This option enables support for bitstream configuration (programming
412 or loading) of the Lattice ECP3 FPGA family via SPI.
413
414 If unsure, say N.
415
416config SRAM
417 bool "Generic on-chip SRAM driver"
418 depends on HAS_IOMEM
419 select GENERIC_ALLOCATOR
420 select SRAM_EXEC if ARM
421 help
422 This driver allows you to declare a memory region to be managed by
423 the genalloc API. It is supposed to be used for small on-chip SRAM
424 areas found on many SoCs.
425
426config SRAM_EXEC
427 bool
428
429config DW_XDATA_PCIE
430 depends on PCI
431 tristate "Synopsys DesignWare xData PCIe driver"
432 help
433 This driver allows controlling Synopsys DesignWare PCIe traffic
434 generator IP also known as xData, present in Synopsys DesignWare
435 PCIe Endpoint prototype.
436
437 If unsure, say N.
438
439config PCI_ENDPOINT_TEST
440 depends on PCI
441 select CRC32
442 tristate "PCI Endpoint Test driver"
443 help
444 Enable this configuration option to enable the host side test driver
445 for PCI Endpoint.
446
447config XILINX_SDFEC
448 tristate "Xilinx SDFEC 16"
449 depends on HAS_IOMEM
450 help
451 This option enables support for the Xilinx SDFEC (Soft Decision
452 Forward Error Correction) driver. This enables a char driver
453 for the SDFEC.
454
455 You may select this driver if your design instantiates the
456 SDFEC(16nm) hardened block. To compile this as a module choose M.
457
458 If unsure, say N.
459
460config MISC_RTSX
461 tristate
462 default MISC_RTSX_PCI || MISC_RTSX_USB
463
464config HISI_HIKEY_USB
465 tristate "USB GPIO Hub on HiSilicon Hikey 960/970 Platform"
466 depends on (OF && GPIOLIB) || COMPILE_TEST
467 depends on USB_ROLE_SWITCH
468 help
469 If you say yes here this adds support for the on-board USB GPIO hub
470 found on HiKey 960/970 boards, which is necessary to support
471 switching between the dual-role USB-C port and the USB-A host ports
472 using only one USB controller.
473
474config OPEN_DICE
475 tristate "Open Profile for DICE driver"
476 depends on OF_RESERVED_MEM
477 help
478 This driver exposes a DICE reserved memory region to userspace via
479 a character device. The memory region contains Compound Device
480 Identifiers (CDIs) generated by firmware as an output of DICE
481 measured boot flow. Userspace can use CDIs for remote attestation
482 and sealing.
483
484 If unsure, say N.
485
486source "drivers/misc/c2port/Kconfig"
487source "drivers/misc/eeprom/Kconfig"
488source "drivers/misc/cb710/Kconfig"
489source "drivers/misc/ti-st/Kconfig"
490source "drivers/misc/lis3lv02d/Kconfig"
491source "drivers/misc/altera-stapl/Kconfig"
492source "drivers/misc/mei/Kconfig"
493source "drivers/misc/vmw_vmci/Kconfig"
494source "drivers/misc/genwqe/Kconfig"
495source "drivers/misc/echo/Kconfig"
496source "drivers/misc/cxl/Kconfig"
497source "drivers/misc/ocxl/Kconfig"
498source "drivers/misc/bcm-vk/Kconfig"
499source "drivers/misc/cardreader/Kconfig"
500source "drivers/misc/habanalabs/Kconfig"
501source "drivers/misc/uacce/Kconfig"
502source "drivers/misc/pvpanic/Kconfig"
503endmenu