1 # SPDX-License-Identifier: GPL-2.0-only
8 config SENSORS_LIS3LV02D
13 tristate "Analog Devices Digital Potentiometers"
14 depends on (I2C || SPI) && SYSFS
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.
27 See Documentation/misc-devices/ad525x_dpot.rst for the
30 This driver can also be built as a module. If so, the module
31 will be called ad525x_dpot.
33 config AD525X_DPOT_I2C
34 tristate "support I2C bus connection"
35 depends on AD525X_DPOT && I2C
37 Say Y here if you have a digital potentiometers hooked to an I2C bus.
39 To compile this driver as a module, choose M here: the
40 module will be called ad525x_dpot-i2c.
42 config AD525X_DPOT_SPI
43 tristate "support SPI bus connection"
44 depends on AD525X_DPOT && SPI_MASTER
46 Say Y here if you have a digital potentiometers hooked to an SPI bus.
48 If unsure, say N (but it's safe to say "Y").
50 To compile this driver as a module, choose M here: the
51 module will be called ad525x_dpot-spi.
54 tristate "Dummy IRQ handler"
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.
61 tristate "Device driver for IBM RSA service processor"
62 depends on X86 && PCI && INPUT
63 depends on SERIAL_8250 || SERIAL_8250=n
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
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
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
83 tristate "IBM Virtual Management Channel support"
84 depends on PPC_PSERIES
86 This is the IBM POWER Virtual Management Channel
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.
93 To compile this driver as a module, choose M here: the
94 module will be called ibmvmc.
97 tristate "Sensable PHANToM (PCI)"
100 Say Y here if you want to build a driver for Sensable PHANToM device.
102 This driver is only for PCI PHANToMs.
104 If you choose to build module, its name will be phantom. If unsure,
108 tristate "RPMB partition interface"
111 Unified RPMB unit interface for RPMB capable devices such as eMMC and
112 UFS. Provides interface for in-kernel security controllers to access
118 tristate "TI Flash Media interface support"
121 If you want support for Texas Instruments(R) Flash Media adapters
122 you should select this option and then also choose an appropriate
123 host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter
124 support', if you have a TI PCI74xx compatible card reader, for
126 You will also have to select some flash card format drivers. MMC/SD
127 cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD
128 Interface support (MMC_TIFM_SD)'.
130 To compile this driver as a module, choose M here: the module will
134 tristate "TI Flash Media PCI74xx/PCI76xx host adapter support"
135 depends on PCI && TIFM_CORE
138 This option enables support for Texas Instruments(R) PCI74xx and
139 PCI76xx families of Flash Media adapters, found in many laptops.
140 To make actual use of the device, you will have to select some
141 flash card format drivers, as outlined in the TIFM_CORE Help.
143 To compile this driver as a module, choose M here: the module will
147 tristate "Integrated Circuits ICS932S401"
150 If you say yes here you get support for the Integrated Circuits
151 ICS932S401 clock control chips.
153 This driver can also be built as a module. If so, the module
154 will be called ics932s401.
157 tristate "Device driver for Atmel SSC peripheral"
158 depends on HAS_IOMEM && (ARCH_AT91 || COMPILE_TEST)
160 This option enables device driver support for Atmel Synchronized
161 Serial Communication peripheral (SSC).
163 The SSC peripheral supports a wide variety of serial frame based
164 communications, i.e. I2S, SPI, etc.
168 config ENCLOSURE_SERVICES
169 tristate "Enclosure Services"
171 Provides support for intelligent enclosures (bays which
172 contain storage devices). You also need either a host
173 driver (SCSI/ATA) which supports enclosures
174 or a SCSI enclosure device (SES) to use these services.
177 tristate "Support communication between SGI SSIs"
179 depends on X86_UV && SMP
180 depends on X86_64 || BROKEN
181 select SGI_GRU if X86_64 && SMP
183 An SGI machine can be divided into multiple Single System
184 Images which act independently of each other and have
185 hardware based memory protection from the others. Enabling
186 this feature will allow for direct communication between SSIs
187 based on a network adapter and DMA messaging.
190 tristate "Ampere Computing SMPro error monitor driver"
191 depends on MFD_SMPRO || COMPILE_TEST
193 Say Y here to get support for the SMpro error monitor function
194 provided by Ampere Computing's Altra and Altra Max SoCs. Upon
195 loading, the driver creates sysfs files which can be use to gather
196 multiple HW error data reported via read and write system calls.
198 To compile this driver as a module, say M here. The driver will be
202 tristate "Ampere Computing SMPro miscellaneous driver"
203 depends on MFD_SMPRO || COMPILE_TEST
205 Say Y here to get support for the SMpro error miscellalenous function
206 provided by Ampere Computing's Altra and Altra Max SoCs.
208 To compile this driver as a module, say M here. The driver will be
212 tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support"
213 depends on MFD_CS5535
215 This driver provides access to MFGPT functionality for other
216 drivers that need timers. MFGPTs are available in the CS5535 and
217 CS5536 companion chips that are found in AMD Geode and several
218 other platforms. They have a better resolution and max interval
219 than the generic PIT, and are suitable for use as high-res timers.
220 You probably don't want to enable this manually; other drivers that
221 make use of it should enable it.
223 config CS5535_MFGPT_DEFAULT_IRQ
225 depends on CS5535_MFGPT
228 MFGPTs on the CS5535 require an interrupt. The selected IRQ
229 can be overridden as a module option as well as by driver that
230 use the cs5535_mfgpt_ API; however, different architectures might
231 want to use a different IRQ by default. This is here for
232 architectures to set as necessary.
234 config CS5535_CLOCK_EVENT_SRC
235 tristate "CS5535/CS5536 high-res timer (MFGPT) events"
236 depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT
238 This driver provides a clock event source based on the MFGPT
239 timer(s) in the CS5535 and CS5536 companion chips.
240 MFGPTs have a better resolution and max interval than the
241 generic PIT, and are suitable for use as high-res timers.
244 tristate "GEHC ACHC support"
245 depends on SPI && SYSFS
246 depends on SOC_IMX53 || COMPILE_TEST
249 Support for GE ACHC microcontroller, that is part of the GE
252 To compile this driver as a module, choose M here: the
253 module will be called gehc-achc.
255 config HI6421V600_IRQ
256 tristate "HiSilicon Hi6421v600 IRQ and powerkey"
263 This driver provides IRQ handling for Hi6421v600, used on
264 some Kirin chipsets, like the one at Hikey 970.
267 tristate "Channel interface driver for the HP iLO processor"
270 The channel interface driver allows applications to communicate
271 with iLO management processors present on HP ProLiant servers.
272 Upon loading, the driver creates /dev/hpilo/dXccbN files, which
273 can be used to gather data from the management processor, via
274 read and write system calls.
276 To compile this driver as a module, choose M here: the
277 module will be called hpilo.
280 tristate "Qualcomm coincell charger support"
281 depends on MFD_SPMI_PMIC || COMPILE_TEST
283 This driver supports the coincell block found inside of
284 Qualcomm PMICs. The coincell charger provides a means to
285 charge a coincell battery or backup capacitor which is used
286 to maintain PMIC register and RTC state in the absence of
290 tristate "Qualcomm FastRPC"
291 depends on ARCH_QCOM || COMPILE_TEST
293 select DMA_SHARED_BUFFER
296 Provides a communication mechanism that allows for clients to
297 make remote method invocations across processor boundary to
298 applications DSP processor. Say M if you want to enable this
302 tristate "SGI GRU driver"
303 depends on X86_UV && SMP
306 The GRU is a hardware resource located in the system chipset. The GRU
307 contains memory that can be mmapped into the user address space.
308 This memory is used to communicate with the GRU to perform functions
309 such as load/store, scatter/gather, bcopy, AMOs, etc. The GRU is
310 directly accessed by user instructions using user virtual addresses.
311 GRU instructions (ex., bcopy) use user virtual addresses for operands.
313 If you are not running on a SGI UV system, say N.
316 bool "SGI GRU driver debug"
319 This option enables additional debugging code for the SGI GRU driver.
320 If you are unsure, say N.
323 tristate "Medfield Avago APDS9802 ALS Sensor module"
326 If you say yes here you get support for the ALS APDS9802 ambient
329 This driver can also be built as a module. If so, the module
330 will be called apds9802als.
333 tristate "Intersil ISL29003 ambient light sensor"
334 depends on I2C && SYSFS
336 If you say yes here you get support for the Intersil ISL29003
337 ambient light sensor.
339 This driver can also be built as a module. If so, the module
340 will be called isl29003.
343 tristate "Intersil ISL29020 ambient light sensor"
346 If you say yes here you get support for the Intersil ISL29020
347 ambient light sensor.
349 This driver can also be built as a module. If so, the module
350 will be called isl29020.
352 config SENSORS_TSL2550
353 tristate "Taos TSL2550 ambient light sensor"
354 depends on I2C && SYSFS
356 If you say yes here you get support for the Taos TSL2550
357 ambient light sensor.
359 This driver can also be built as a module. If so, the module
360 will be called tsl2550.
362 config SENSORS_BH1770
363 tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor"
366 Say Y here if you want to build a driver for BH1770GLC (ROHM) or
367 SFH7770 (Osram) combined ambient light and proximity sensor chip.
369 To compile this driver as a module, choose M here: the
370 module will be called bh1770glc. If unsure, say N here.
372 config SENSORS_APDS990X
373 tristate "APDS990X combined als and proximity sensors"
376 Say Y here if you want to build a driver for Avago APDS990x
377 combined ambient light and proximity sensor chip.
379 To compile this driver as a module, choose M here: the
380 module will be called apds990x. If unsure, say N here.
383 tristate "Honeywell HMC6352 compass"
386 This driver provides support for the Honeywell HMC6352 compass,
387 providing configuration and heading data via sysfs.
390 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
393 If you say yes here you get support for Dallas Semiconductor
394 DS1682 Total Elapsed Time Recorder.
396 This driver can also be built as a module. If so, the module
397 will be called ds1682.
399 config VMWARE_BALLOON
400 tristate "VMware Balloon Driver"
401 depends on VMWARE_VMCI && X86 && HYPERVISOR_GUEST
402 select MEMORY_BALLOON
404 This is VMware physical memory management driver which acts
405 like a "balloon" that can be inflated to reclaim physical pages
406 by reserving them in the guest and invalidating them in the
407 monitor, freeing up the underlying machine pages so they can
408 be allocated to other guests. The balloon can also be deflated
409 to allow the guest to use more physical memory.
413 To compile this driver as a module, choose M here: the
414 module will be called vmw_balloon.
417 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB"
418 select GENERIC_NET_UTILS
419 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
421 This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of
422 Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded
423 processor. The Topcliff has MAC address and Option ROM data in SROM.
424 This driver can access MAC address and Option ROM data in SROM.
426 This driver also can be used for LAPIS Semiconductor's IOH,
427 ML7213/ML7223/ML7831.
428 ML7213 which is for IVI(In-Vehicle Infotainment) use.
429 ML7223 IOH is for MP(Media Phone) use.
430 ML7831 IOH is for general purpose use.
431 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
432 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
434 To compile this driver as a module, choose M here: the module will
437 config LATTICE_ECP3_CONFIG
438 tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
439 depends on SPI && SYSFS
442 This option enables support for bitstream configuration (programming
443 or loading) of the Lattice ECP3 FPGA family via SPI.
448 bool "Generic on-chip SRAM driver"
450 select GENERIC_ALLOCATOR
451 select SRAM_EXEC if ARM
453 This driver allows you to declare a memory region to be managed by
454 the genalloc API. It is supposed to be used for small on-chip SRAM
455 areas found on many SoCs.
462 tristate "Synopsys DesignWare xData PCIe driver"
464 This driver allows controlling Synopsys DesignWare PCIe traffic
465 generator IP also known as xData, present in Synopsys DesignWare
466 PCIe Endpoint prototype.
470 config PCI_ENDPOINT_TEST
473 tristate "PCI Endpoint Test driver"
475 Enable this configuration option to enable the host side test driver
479 tristate "Xilinx SDFEC 16"
482 This option enables support for the Xilinx SDFEC (Soft Decision
483 Forward Error Correction) driver. This enables a char driver
486 You may select this driver if your design instantiates the
487 SDFEC(16nm) hardened block. To compile this as a module choose M.
493 default MISC_RTSX_PCI || MISC_RTSX_USB
495 config HISI_HIKEY_USB
496 tristate "USB GPIO Hub on HiSilicon Hikey 960/970 Platform"
497 depends on (OF && GPIOLIB) || COMPILE_TEST
498 depends on USB_ROLE_SWITCH
500 If you say yes here this adds support for the on-board USB GPIO hub
501 found on HiKey 960/970 boards, which is necessary to support
502 switching between the dual-role USB-C port and the USB-A host ports
503 using only one USB controller.
506 tristate "Open Profile for DICE driver"
507 depends on OF_RESERVED_MEM
510 This driver exposes a DICE reserved memory region to userspace via
511 a character device. The memory region contains Compound Device
512 Identifiers (CDIs) generated by firmware as an output of DICE
513 measured boot flow. Userspace can use CDIs for remote attestation
519 tristate "NT synchronization primitive emulation"
522 This module provides kernel support for emulation of Windows NT
523 synchronization primitives. It is not a hardware driver.
525 To compile this driver as a module, choose M here: the
526 module will be called ntsync.
530 config VCPU_STALL_DETECTOR
531 tristate "Guest vCPU stall detector"
532 depends on OF && HAS_IOMEM
534 When this driver is bound inside a KVM guest, it will
535 periodically "pet" an MMIO stall detector device from each vCPU
536 and allow the host to detect vCPU stalls.
538 To compile this driver as a module, choose M here: the module
539 will be called vcpu_stall_detector.
541 If you do not intend to run this kernel as a guest, say N.
544 tristate "Select TMR Manager"
545 depends on MICROBLAZE && MB_MANAGER
547 This option enables the driver developed for TMR Manager.
548 The Triple Modular Redundancy(TMR) manager provides support for
551 Say N here unless you know what you are doing.
554 tristate "Select TMR Inject"
555 depends on TMR_MANAGER && FAULT_INJECTION_DEBUG_FS
557 This option enables the driver developed for TMR Inject.
558 The Triple Modular Redundancy(TMR) Inject provides
561 Say N here unless you know what you are doing.
564 tristate "TI TPS6594 Error Signal Monitor support"
565 depends on MFD_TPS6594
568 Support ESM (Error Signal Monitor) on TPS6594 PMIC devices.
569 ESM is used typically to reboot the board in error condition.
571 This driver can also be built as a module. If so, the module
572 will be called tps6594-esm.
575 tristate "TI TPS6594 Pre-configurable Finite State Machine support"
576 depends on MFD_TPS6594
579 Support PFSM (Pre-configurable Finite State Machine) on TPS6594 PMIC devices.
580 These devices integrate a finite state machine engine, which manages the state
581 of the device during operating state transition.
583 This driver can also be built as a module. If so, the module
584 will be called tps6594-pfsm.
587 tristate "Nitro (Enclaves) Security Module support"
591 This driver provides support for the Nitro Security Module
592 in AWS EC2 Nitro based Enclaves. The driver exposes a /dev/nsm
593 device user space can use to communicate with the hypervisor.
595 To compile this driver as a module, choose M here.
596 The module will be called nsm.
598 config MARVELL_CN10K_DPI
599 tristate "Octeon CN10K DPI driver"
600 depends on PCI && PCI_IOV
601 depends on ARCH_THUNDER || (COMPILE_TEST && 64BIT)
603 Enables Octeon CN10K DMA packet interface (DPI) driver which
604 intializes DPI hardware's physical function (PF) device's
605 global configuration and its virtual function (VFs) resource
606 configuration to enable DMA transfers. DPI PF device does not
607 have any data movement functionality, it only serves VF's
608 resource configuration requests.
610 To compile this driver as a module, choose M here: the module
611 will be called mrvl_cn10k_dpi.
613 config MCHP_LAN966X_PCI
614 tristate "Microchip LAN966x PCIe Support"
620 This enables the support for the LAN966x PCIe device.
622 This is used to drive the LAN966x PCIe device from the host system
623 to which it is connected. The driver uses a device tree overlay to
624 load other drivers to support for LAN966x internal components.
626 Even if this driver does not depend on those other drivers, in order
627 to have a fully functional board, the following drivers are needed:
628 - fixed-clock (COMMON_CLK)
629 - lan966x-oic (LAN966X_OIC)
630 - lan966x-cpu-syscon (MFD_SYSCON)
631 - lan966x-switch-reset (RESET_MCHP_SPARX5)
632 - lan966x-pinctrl (PINCTRL_OCELOT)
633 - lan966x-serdes (PHY_LAN966X_SERDES)
634 - lan966x-miim (MDIO_MSCC_MIIM)
635 - lan966x-switch (LAN966X_SWITCH)
637 source "drivers/misc/c2port/Kconfig"
638 source "drivers/misc/eeprom/Kconfig"
639 source "drivers/misc/cb710/Kconfig"
640 source "drivers/misc/lis3lv02d/Kconfig"
641 source "drivers/misc/altera-stapl/Kconfig"
642 source "drivers/misc/mei/Kconfig"
643 source "drivers/misc/vmw_vmci/Kconfig"
644 source "drivers/misc/genwqe/Kconfig"
645 source "drivers/misc/echo/Kconfig"
646 source "drivers/misc/cxl/Kconfig"
647 source "drivers/misc/ocxl/Kconfig"
648 source "drivers/misc/bcm-vk/Kconfig"
649 source "drivers/misc/cardreader/Kconfig"
650 source "drivers/misc/uacce/Kconfig"
651 source "drivers/misc/pvpanic/Kconfig"
652 source "drivers/misc/mchp_pci1xxxx/Kconfig"
653 source "drivers/misc/keba/Kconfig"