Merge tag 'for-5.19-rc7-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave...
[linux-2.6-microblaze.git] / drivers / misc / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Misc strange devices
4 #
5
6 menu "Misc devices"
7
8 config SENSORS_LIS3LV02D
9         tristate
10         depends on INPUT
11
12 config 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
33 config 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
42 config 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
53 config 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
60 config 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
82 config 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
96 config 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
107 config 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
123 config 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
136 config 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
146 config 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
158 config 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
166 config 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
179 config 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
191 config 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
202 config 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
211 config 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
223 config 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
234 config 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
247 config 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
257 config 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
269 config 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
283 config 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
290 config 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
300 config 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
310 config 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
320 config 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
330 config 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
340 config 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
350 config 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
357 config 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
367 config 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
384 config 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
405 config 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
416 config 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
426 config SRAM_EXEC
427         bool
428
429 config 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
439 config 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
447 config 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
460 config MISC_RTSX
461         tristate
462         default MISC_RTSX_PCI || MISC_RTSX_USB
463
464 config 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
474 config 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
486 source "drivers/misc/c2port/Kconfig"
487 source "drivers/misc/eeprom/Kconfig"
488 source "drivers/misc/cb710/Kconfig"
489 source "drivers/misc/ti-st/Kconfig"
490 source "drivers/misc/lis3lv02d/Kconfig"
491 source "drivers/misc/altera-stapl/Kconfig"
492 source "drivers/misc/mei/Kconfig"
493 source "drivers/misc/vmw_vmci/Kconfig"
494 source "drivers/misc/genwqe/Kconfig"
495 source "drivers/misc/echo/Kconfig"
496 source "drivers/misc/cxl/Kconfig"
497 source "drivers/misc/ocxl/Kconfig"
498 source "drivers/misc/bcm-vk/Kconfig"
499 source "drivers/misc/cardreader/Kconfig"
500 source "drivers/misc/habanalabs/Kconfig"
501 source "drivers/misc/uacce/Kconfig"
502 source "drivers/misc/pvpanic/Kconfig"
503 endmenu