projects/linux·blob master · refs

589 lines · 18.9 KiB

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 IBMVMC
61 tristate "IBM Virtual Management Channel support"
62 depends on PPC_PSERIES
63 help
64 This is the IBM POWER Virtual Management Channel
65
66 This driver is to be used for the POWER Virtual
67 Management Channel virtual adapter on the PowerVM
68 platform. It provides both request/response and
69 async message support through the /dev/ibmvmc node.
70
71 To compile this driver as a module, choose M here: the
72 module will be called ibmvmc.
73
74config PHANTOM
75 tristate "Sensable PHANToM (PCI)"
76 depends on PCI
77 help
78 Say Y here if you want to build a driver for Sensable PHANToM device.
79
80 This driver is only for PCI PHANToMs.
81
82 If you choose to build module, its name will be phantom. If unsure,
83 say N here.
84
85config RPMB
86 tristate "RPMB partition interface"
87 help
88 Unified RPMB unit interface for RPMB capable devices such as eMMC and
89 UFS. Provides interface for in-kernel security controllers to access
90 RPMB unit.
91
92 If unsure, select N.
93
94config TI_FPC202
95 tristate "TI FPC202 Dual Port Controller"
96 depends on I2C
97 depends on GPIOLIB
98 depends on LEDS_CLASS
99 select I2C_ATR
100 help
101 If you say yes here you get support for the Texas Instruments FPC202
102 Dual Port Controller.
103
104 This driver can also be built as a module. If so, the module will be
105 called fpc202.
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 SMPRO_ERRMON
167 tristate "Ampere Computing SMPro error monitor driver"
168 depends on MFD_SMPRO || COMPILE_TEST
169 help
170 Say Y here to get support for the SMpro error monitor function
171 provided by Ampere Computing's Altra and Altra Max SoCs. Upon
172 loading, the driver creates sysfs files which can be use to gather
173 multiple HW error data reported via read and write system calls.
174
175 To compile this driver as a module, say M here. The driver will be
176 called smpro-errmon.
177
178config SMPRO_MISC
179 tristate "Ampere Computing SMPro miscellaneous driver"
180 depends on MFD_SMPRO || COMPILE_TEST
181 help
182 Say Y here to get support for the SMpro error miscellalenous function
183 provided by Ampere Computing's Altra and Altra Max SoCs.
184
185 To compile this driver as a module, say M here. The driver will be
186 called smpro-misc.
187
188config CS5535_MFGPT
189 tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support"
190 depends on MFD_CS5535
191 help
192 This driver provides access to MFGPT functionality for other
193 drivers that need timers. MFGPTs are available in the CS5535 and
194 CS5536 companion chips that are found in AMD Geode and several
195 other platforms. They have a better resolution and max interval
196 than the generic PIT, and are suitable for use as high-res timers.
197 You probably don't want to enable this manually; other drivers that
198 make use of it should enable it.
199
200config CS5535_MFGPT_DEFAULT_IRQ
201 int
202 depends on CS5535_MFGPT
203 default 7
204 help
205 MFGPTs on the CS5535 require an interrupt. The selected IRQ
206 can be overridden as a module option as well as by driver that
207 use the cs5535_mfgpt_ API; however, different architectures might
208 want to use a different IRQ by default. This is here for
209 architectures to set as necessary.
210
211config CS5535_CLOCK_EVENT_SRC
212 tristate "CS5535/CS5536 high-res timer (MFGPT) events"
213 depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT
214 help
215 This driver provides a clock event source based on the MFGPT
216 timer(s) in the CS5535 and CS5536 companion chips.
217 MFGPTs have a better resolution and max interval than the
218 generic PIT, and are suitable for use as high-res timers.
219
220config GEHC_ACHC
221 tristate "GEHC ACHC support"
222 depends on SPI && SYSFS
223 depends on SOC_IMX53 || COMPILE_TEST
224 select FW_LOADER
225 help
226 Support for GE ACHC microcontroller, that is part of the GE
227 PPD device.
228
229 To compile this driver as a module, choose M here: the
230 module will be called gehc-achc.
231
232config HI6421V600_IRQ
233 tristate "HiSilicon Hi6421v600 IRQ and powerkey"
234 depends on OF
235 depends on SPMI
236 depends on HAS_IOMEM
237 select MFD_CORE
238 select REGMAP_SPMI
239 help
240 This driver provides IRQ handling for Hi6421v600, used on
241 some Kirin chipsets, like the one at Hikey 970.
242
243config HP_ILO
244 tristate "Channel interface driver for the HP iLO processor"
245 depends on PCI
246 help
247 The channel interface driver allows applications to communicate
248 with iLO management processors present on HP ProLiant servers.
249 Upon loading, the driver creates /dev/hpilo/dXccbN files, which
250 can be used to gather data from the management processor, via
251 read and write system calls.
252
253 To compile this driver as a module, choose M here: the
254 module will be called hpilo.
255
256config QCOM_COINCELL
257 tristate "Qualcomm coincell charger support"
258 depends on MFD_SPMI_PMIC || COMPILE_TEST
259 help
260 This driver supports the coincell block found inside of
261 Qualcomm PMICs. The coincell charger provides a means to
262 charge a coincell battery or backup capacitor which is used
263 to maintain PMIC register and RTC state in the absence of
264 external power.
265
266config QCOM_FASTRPC
267 tristate "Qualcomm FastRPC"
268 depends on ARCH_QCOM || COMPILE_TEST
269 depends on RPMSG
270 select DMA_SHARED_BUFFER
271 select QCOM_SCM
272 help
273 Provides a communication mechanism that allows for clients to
274 make remote method invocations across processor boundary to
275 applications DSP processor. Say M if you want to enable this
276 module.
277
278config APDS9802ALS
279 tristate "Medfield Avago APDS9802 ALS Sensor module"
280 depends on I2C
281 help
282 If you say yes here you get support for the ALS APDS9802 ambient
283 light sensor.
284
285 This driver can also be built as a module. If so, the module
286 will be called apds9802als.
287
288config ISL29003
289 tristate "Intersil ISL29003 ambient light sensor"
290 depends on I2C && SYSFS
291 help
292 If you say yes here you get support for the Intersil ISL29003
293 ambient light sensor.
294
295 This driver can also be built as a module. If so, the module
296 will be called isl29003.
297
298config ISL29020
299 tristate "Intersil ISL29020 ambient light sensor"
300 depends on I2C
301 help
302 If you say yes here you get support for the Intersil ISL29020
303 ambient light sensor.
304
305 This driver can also be built as a module. If so, the module
306 will be called isl29020.
307
308config SENSORS_TSL2550
309 tristate "Taos TSL2550 ambient light sensor"
310 depends on I2C && SYSFS
311 help
312 If you say yes here you get support for the Taos TSL2550
313 ambient light sensor.
314
315 This driver can also be built as a module. If so, the module
316 will be called tsl2550.
317
318config SENSORS_BH1770
319 tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor"
320 depends on I2C
321 help
322 Say Y here if you want to build a driver for BH1770GLC (ROHM) or
323 SFH7770 (Osram) combined ambient light and proximity sensor chip.
324
325 To compile this driver as a module, choose M here: the
326 module will be called bh1770glc. If unsure, say N here.
327
328config HMC6352
329 tristate "Honeywell HMC6352 compass"
330 depends on I2C
331 help
332 This driver provides support for the Honeywell HMC6352 compass,
333 providing configuration and heading data via sysfs.
334
335config DS1682
336 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
337 depends on I2C
338 help
339 If you say yes here you get support for Dallas Semiconductor
340 DS1682 Total Elapsed Time Recorder.
341
342 This driver can also be built as a module. If so, the module
343 will be called ds1682.
344
345config VMWARE_BALLOON
346 tristate "VMware Balloon Driver"
347 depends on VMWARE_VMCI && X86 && HYPERVISOR_GUEST
348 select BALLOON
349 help
350 This is VMware physical memory management driver which acts
351 like a "balloon" that can be inflated to reclaim physical pages
352 by reserving them in the guest and invalidating them in the
353 monitor, freeing up the underlying machine pages so they can
354 be allocated to other guests. The balloon can also be deflated
355 to allow the guest to use more physical memory.
356
357 If unsure, say N.
358
359 To compile this driver as a module, choose M here: the
360 module will be called vmw_balloon.
361
362config PCH_PHUB
363 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB"
364 select GENERIC_NET_UTILS
365 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
366 help
367 This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of
368 Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded
369 processor. The Topcliff has MAC address and Option ROM data in SROM.
370 This driver can access MAC address and Option ROM data in SROM.
371
372 This driver also can be used for LAPIS Semiconductor's IOH,
373 ML7213/ML7223/ML7831.
374 ML7213 which is for IVI(In-Vehicle Infotainment) use.
375 ML7223 IOH is for MP(Media Phone) use.
376 ML7831 IOH is for general purpose use.
377 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
378 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
379
380 To compile this driver as a module, choose M here: the module will
381 be called pch_phub.
382
383config LATTICE_ECP3_CONFIG
384 tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
385 depends on SPI && SYSFS
386 select FW_LOADER
387 help
388 This option enables support for bitstream configuration (programming
389 or loading) of the Lattice ECP3 FPGA family via SPI.
390
391 If unsure, say N.
392
393config SRAM
394 bool "Generic on-chip SRAM driver"
395 depends on HAS_IOMEM
396 select GENERIC_ALLOCATOR
397 select SRAM_EXEC if ARM
398 help
399 This driver allows you to declare a memory region to be managed by
400 the genalloc API. It is supposed to be used for small on-chip SRAM
401 areas found on many SoCs.
402
403config SRAM_EXEC
404 bool
405
406config DW_XDATA_PCIE
407 depends on PCI
408 tristate "Synopsys DesignWare xData PCIe driver"
409 help
410 This driver allows controlling Synopsys DesignWare PCIe traffic
411 generator IP also known as xData, present in Synopsys DesignWare
412 PCIe Endpoint prototype.
413
414 If unsure, say N.
415
416config PCI_ENDPOINT_TEST
417 depends on PCI
418 select CRC32
419 tristate "PCI Endpoint Test driver"
420 help
421 Enable this configuration option to enable the host side test driver
422 for PCI Endpoint.
423
424config XILINX_SDFEC
425 tristate "Xilinx SDFEC 16"
426 depends on HAS_IOMEM
427 help
428 This option enables support for the Xilinx SDFEC (Soft Decision
429 Forward Error Correction) driver. This enables a char driver
430 for the SDFEC.
431
432 You may select this driver if your design instantiates the
433 SDFEC(16nm) hardened block. To compile this as a module choose M.
434
435 If unsure, say N.
436
437config MISC_RTSX
438 tristate
439 default MISC_RTSX_PCI || MISC_RTSX_USB
440
441config OPEN_DICE
442 tristate "Open Profile for DICE driver"
443 depends on OF_RESERVED_MEM
444 depends on HAS_IOMEM
445 help
446 This driver exposes a DICE reserved memory region to userspace via
447 a character device. The memory region contains Compound Device
448 Identifiers (CDIs) generated by firmware as an output of DICE
449 measured boot flow. Userspace can use CDIs for remote attestation
450 and sealing.
451
452 If unsure, say N.
453
454config NTSYNC
455 tristate "NT synchronization primitive emulation"
456 help
457 This module provides kernel support for emulation of Windows NT
458 synchronization primitives. It is not a hardware driver.
459
460 To compile this driver as a module, choose M here: the
461 module will be called ntsync.
462
463 If unsure, say N.
464
465config VCPU_STALL_DETECTOR
466 tristate "Guest vCPU stall detector"
467 depends on OF && HAS_IOMEM
468 help
469 When this driver is bound inside a KVM guest, it will
470 periodically "pet" an MMIO stall detector device from each vCPU
471 and allow the host to detect vCPU stalls.
472
473 To compile this driver as a module, choose M here: the module
474 will be called vcpu_stall_detector.
475
476 If you do not intend to run this kernel as a guest, say N.
477
478config TMR_MANAGER
479 tristate "Select TMR Manager"
480 depends on MICROBLAZE && MB_MANAGER
481 help
482 This option enables the driver developed for TMR Manager.
483 The Triple Modular Redundancy(TMR) manager provides support for
484 fault detection.
485
486 Say N here unless you know what you are doing.
487
488config TMR_INJECT
489 tristate "Select TMR Inject"
490 depends on TMR_MANAGER && FAULT_INJECTION_DEBUG_FS
491 help
492 This option enables the driver developed for TMR Inject.
493 The Triple Modular Redundancy(TMR) Inject provides
494 fault injection.
495
496 Say N here unless you know what you are doing.
497
498config TPS6594_ESM
499 tristate "TI TPS6594 Error Signal Monitor support"
500 depends on MFD_TPS6594
501 default MFD_TPS6594
502 help
503 Support ESM (Error Signal Monitor) on TPS6594 PMIC devices.
504 ESM is used typically to reboot the board in error condition.
505
506 This driver can also be built as a module. If so, the module
507 will be called tps6594-esm.
508
509config TPS6594_PFSM
510 tristate "TI TPS6594 Pre-configurable Finite State Machine support"
511 depends on MFD_TPS6594
512 default MFD_TPS6594
513 help
514 Support PFSM (Pre-configurable Finite State Machine) on TPS6594 PMIC devices.
515 These devices integrate a finite state machine engine, which manages the state
516 of the device during operating state transition.
517
518 This driver can also be built as a module. If so, the module
519 will be called tps6594-pfsm.
520
521config NSM
522 tristate "Nitro (Enclaves) Security Module support"
523 depends on VIRTIO
524 select HW_RANDOM
525 help
526 This driver provides support for the Nitro Security Module
527 in AWS EC2 Nitro based Enclaves. The driver exposes a /dev/nsm
528 device user space can use to communicate with the hypervisor.
529
530 To compile this driver as a module, choose M here.
531 The module will be called nsm.
532
533config MARVELL_CN10K_DPI
534 tristate "Octeon CN10K DPI driver"
535 depends on PCI && PCI_IOV
536 depends on ARCH_THUNDER || (COMPILE_TEST && 64BIT)
537 help
538 Enables Octeon CN10K DMA packet interface (DPI) driver which
539 intializes DPI hardware's physical function (PF) device's
540 global configuration and its virtual function (VFs) resource
541 configuration to enable DMA transfers. DPI PF device does not
542 have any data movement functionality, it only serves VF's
543 resource configuration requests.
544
545 To compile this driver as a module, choose M here: the module
546 will be called mrvl_cn10k_dpi.
547
548config MCHP_LAN966X_PCI
549 tristate "Microchip LAN966x PCIe Support"
550 depends on PCI
551 depends on OF_OVERLAY
552 select IRQ_DOMAIN
553 help
554 This enables the support for the LAN966x PCIe device.
555
556 This is used to drive the LAN966x PCIe device from the host system
557 to which it is connected. The driver uses a device tree overlay to
558 load other drivers to support for LAN966x internal components.
559
560 Even if this driver does not depend on those other drivers, in order
561 to have a fully functional board, the following drivers are needed:
562 - fixed-clock (COMMON_CLK)
563 - lan966x-oic (LAN966X_OIC)
564 - lan966x-cpu-syscon (MFD_SYSCON)
565 - lan966x-switch-reset (RESET_MCHP_SPARX5)
566 - lan966x-pinctrl (PINCTRL_OCELOT)
567 - lan966x-serdes (PHY_LAN966X_SERDES)
568 - lan966x-miim (MDIO_MSCC_MIIM)
569 - lan966x-switch (LAN966X_SWITCH)
570
571source "drivers/misc/c2port/Kconfig"
572source "drivers/misc/eeprom/Kconfig"
573source "drivers/misc/cb710/Kconfig"
574source "drivers/misc/lis3lv02d/Kconfig"
575source "drivers/misc/altera-stapl/Kconfig"
576source "drivers/misc/mei/Kconfig"
577source "drivers/misc/vmw_vmci/Kconfig"
578source "drivers/misc/genwqe/Kconfig"
579source "drivers/misc/ocxl/Kconfig"
580source "drivers/misc/bcm-vk/Kconfig"
581source "drivers/misc/cardreader/Kconfig"
582source "drivers/misc/uacce/Kconfig"
583source "drivers/misc/pvpanic/Kconfig"
584source "drivers/misc/mchp_pci1xxxx/Kconfig"
585source "drivers/misc/keba/Kconfig"
586source "drivers/misc/amd-sbi/Kconfig"
587source "drivers/misc/rp1/Kconfig"
588source "drivers/misc/issei/Kconfig"
589endmenu