blob: 67e2b3c2d4132e9cfe549c206aa861dfa8542a55 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001# 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 select INPUT_POLLDEV
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 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 DUMMY_IRQ
63 tristate "Dummy IRQ handler"
64 ---help---
65 This module accepts a single 'irq' parameter, which it should register for.
66 The sole purpose of this module is to help with debugging of systems on
67 which spurious IRQs would happen on disabled IRQ vector.
68
69config IBM_ASM
70 tristate "Device driver for IBM RSA service processor"
71 depends on X86 && PCI && INPUT
72 depends on SERIAL_8250 || SERIAL_8250=n
73 ---help---
74 This option enables device driver support for in-band access to the
75 IBM RSA (Condor) service processor in eServer xSeries systems.
76 The ibmasm device driver allows user space application to access
77 ASM (Advanced Systems Management) functions on the service
78 processor. The driver is meant to be used in conjunction with
79 a user space API.
80 The ibmasm driver also enables the OS to use the UART on the
81 service processor board as a regular serial port. To make use of
82 this feature serial driver support (CONFIG_SERIAL_8250) must be
83 enabled.
84
85 WARNING: This software may not be supported or function
86 correctly on your IBM server. Please consult the IBM ServerProven
87 website <http://www-03.ibm.com/systems/info/x86servers/serverproven/compat/us/>
88 for information on the specific driver level and support statement
89 for your IBM server.
90
91config IBMVMC
92 tristate "IBM Virtual Management Channel support"
93 depends on PPC_PSERIES
94 help
95 This is the IBM POWER Virtual Management Channel
96
97 This driver is to be used for the POWER Virtual
98 Management Channel virtual adapter on the PowerVM
99 platform. It provides both request/response and
100 async message support through the /dev/ibmvmc node.
101
102 To compile this driver as a module, choose M here: the
103 module will be called ibmvmc.
104
105config PHANTOM
106 tristate "Sensable PHANToM (PCI)"
107 depends on PCI
108 help
109 Say Y here if you want to build a driver for Sensable PHANToM device.
110
111 This driver is only for PCI PHANToMs.
112
113 If you choose to build module, its name will be phantom. If unsure,
114 say N here.
115
116config INTEL_MID_PTI
117 tristate "Parallel Trace Interface for MIPI P1149.7 cJTAG standard"
118 depends on PCI && TTY && (X86_INTEL_MID || COMPILE_TEST)
119 help
120 The PTI (Parallel Trace Interface) driver directs
121 trace data routed from various parts in the system out
122 through an Intel Penwell PTI port and out of the mobile
123 device for analysis with a debugging tool (Lauterbach or Fido).
124
125 You should select this driver if the target kernel is meant for
126 an Intel Atom (non-netbook) mobile device containing a MIPI
127 P1149.7 standard implementation.
128
129config TIFM_CORE
130 tristate "TI Flash Media interface support"
131 depends on PCI
132 help
133 If you want support for Texas Instruments(R) Flash Media adapters
134 you should select this option and then also choose an appropriate
135 host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter
136 support', if you have a TI PCI74xx compatible card reader, for
137 example.
138 You will also have to select some flash card format drivers. MMC/SD
139 cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD
140 Interface support (MMC_TIFM_SD)'.
141
142 To compile this driver as a module, choose M here: the module will
143 be called tifm_core.
144
145config TIFM_7XX1
146 tristate "TI Flash Media PCI74xx/PCI76xx host adapter support"
147 depends on PCI && TIFM_CORE
148 default TIFM_CORE
149 help
150 This option enables support for Texas Instruments(R) PCI74xx and
151 PCI76xx families of Flash Media adapters, found in many laptops.
152 To make actual use of the device, you will have to select some
153 flash card format drivers, as outlined in the TIFM_CORE Help.
154
155 To compile this driver as a module, choose M here: the module will
156 be called tifm_7xx1.
157
158config ICS932S401
159 tristate "Integrated Circuits ICS932S401"
160 depends on I2C
161 help
162 If you say yes here you get support for the Integrated Circuits
163 ICS932S401 clock control chips.
164
165 This driver can also be built as a module. If so, the module
166 will be called ics932s401.
167
168config ATMEL_SSC
169 tristate "Device driver for Atmel SSC peripheral"
170 depends on HAS_IOMEM && (ARCH_AT91 || COMPILE_TEST)
171 ---help---
172 This option enables device driver support for Atmel Synchronized
173 Serial Communication peripheral (SSC).
174
175 The SSC peripheral supports a wide variety of serial frame based
176 communications, i.e. I2S, SPI, etc.
177
178 If unsure, say N.
179
180config ENCLOSURE_SERVICES
181 tristate "Enclosure Services"
182 help
183 Provides support for intelligent enclosures (bays which
184 contain storage devices). You also need either a host
185 driver (SCSI/ATA) which supports enclosures
186 or a SCSI enclosure device (SES) to use these services.
187
188config SGI_XP
189 tristate "Support communication between SGI SSIs"
190 depends on NET
191 depends on (IA64_SGI_UV || X86_UV) && SMP
192 depends on X86_64 || BROKEN
193 select SGI_GRU if X86_64 && SMP
194 ---help---
195 An SGI machine can be divided into multiple Single System
196 Images which act independently of each other and have
197 hardware based memory protection from the others. Enabling
198 this feature will allow for direct communication between SSIs
199 based on a network adapter and DMA messaging.
200
201config CS5535_MFGPT
202 tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support"
203 depends on MFD_CS5535
204 help
205 This driver provides access to MFGPT functionality for other
206 drivers that need timers. MFGPTs are available in the CS5535 and
207 CS5536 companion chips that are found in AMD Geode and several
208 other platforms. They have a better resolution and max interval
209 than the generic PIT, and are suitable for use as high-res timers.
210 You probably don't want to enable this manually; other drivers that
211 make use of it should enable it.
212
213config CS5535_MFGPT_DEFAULT_IRQ
214 int
215 depends on CS5535_MFGPT
216 default 7
217 help
218 MFGPTs on the CS5535 require an interrupt. The selected IRQ
219 can be overridden as a module option as well as by driver that
220 use the cs5535_mfgpt_ API; however, different architectures might
221 want to use a different IRQ by default. This is here for
222 architectures to set as necessary.
223
224config CS5535_CLOCK_EVENT_SRC
225 tristate "CS5535/CS5536 high-res timer (MFGPT) events"
226 depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT
227 help
228 This driver provides a clock event source based on the MFGPT
229 timer(s) in the CS5535 and CS5536 companion chips.
230 MFGPTs have a better resolution and max interval than the
231 generic PIT, and are suitable for use as high-res timers.
232
233config HP_ILO
234 tristate "Channel interface driver for the HP iLO processor"
235 depends on PCI
236 help
237 The channel interface driver allows applications to communicate
238 with iLO management processors present on HP ProLiant servers.
239 Upon loading, the driver creates /dev/hpilo/dXccbN files, which
240 can be used to gather data from the management processor, via
241 read and write system calls.
242
243 To compile this driver as a module, choose M here: the
244 module will be called hpilo.
245
246config QCOM_COINCELL
247 tristate "Qualcomm coincell charger support"
248 depends on MFD_SPMI_PMIC || COMPILE_TEST
249 help
250 This driver supports the coincell block found inside of
251 Qualcomm PMICs. The coincell charger provides a means to
252 charge a coincell battery or backup capacitor which is used
253 to maintain PMIC register and RTC state in the absence of
254 external power.
255
256config QCOM_FASTRPC
257 tristate "Qualcomm FastRPC"
258 depends on ARCH_QCOM || COMPILE_TEST
259 depends on RPMSG
260 select DMA_SHARED_BUFFER
261 help
262 Provides a communication mechanism that allows for clients to
263 make remote method invocations across processor boundary to
264 applications DSP processor. Say M if you want to enable this
265 module.
266
267config SGI_GRU
268 tristate "SGI GRU driver"
269 depends on X86_UV && SMP
270 select MMU_NOTIFIER
271 ---help---
272 The GRU is a hardware resource located in the system chipset. The GRU
273 contains memory that can be mmapped into the user address space. This memory is
274 used to communicate with the GRU to perform functions such as load/store,
275 scatter/gather, bcopy, AMOs, etc. The GRU is directly accessed by user
276 instructions using user virtual addresses. GRU instructions (ex., bcopy) use
277 user virtual addresses for operands.
278
279 If you are not running on a SGI UV system, say N.
280
281config SGI_GRU_DEBUG
282 bool "SGI GRU driver debug"
283 depends on SGI_GRU
284 ---help---
285 This option enables additional debugging code for the SGI GRU driver.
286 If you are unsure, say N.
287
288config APDS9802ALS
289 tristate "Medfield Avago APDS9802 ALS Sensor module"
290 depends on I2C
291 help
292 If you say yes here you get support for the ALS APDS9802 ambient
293 light sensor.
294
295 This driver can also be built as a module. If so, the module
296 will be called apds9802als.
297
298config ISL29003
299 tristate "Intersil ISL29003 ambient light sensor"
300 depends on I2C && SYSFS
301 help
302 If you say yes here you get support for the Intersil ISL29003
303 ambient light sensor.
304
305 This driver can also be built as a module. If so, the module
306 will be called isl29003.
307
308config ISL29020
309 tristate "Intersil ISL29020 ambient light sensor"
310 depends on I2C
311 help
312 If you say yes here you get support for the Intersil ISL29020
313 ambient light sensor.
314
315 This driver can also be built as a module. If so, the module
316 will be called isl29020.
317
318config SENSORS_TSL2550
319 tristate "Taos TSL2550 ambient light sensor"
320 depends on I2C && SYSFS
321 help
322 If you say yes here you get support for the Taos TSL2550
323 ambient light sensor.
324
325 This driver can also be built as a module. If so, the module
326 will be called tsl2550.
327
328config SENSORS_BH1770
329 tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor"
330 depends on I2C
331 ---help---
332 Say Y here if you want to build a driver for BH1770GLC (ROHM) or
333 SFH7770 (Osram) combined ambient light and proximity sensor chip.
334
335 To compile this driver as a module, choose M here: the
336 module will be called bh1770glc. If unsure, say N here.
337
338config SENSORS_APDS990X
339 tristate "APDS990X combined als and proximity sensors"
340 depends on I2C
341 ---help---
342 Say Y here if you want to build a driver for Avago APDS990x
343 combined ambient light and proximity sensor chip.
344
345 To compile this driver as a module, choose M here: the
346 module will be called apds990x. If unsure, say N here.
347
348config HMC6352
349 tristate "Honeywell HMC6352 compass"
350 depends on I2C
351 help
352 This driver provides support for the Honeywell HMC6352 compass,
353 providing configuration and heading data via sysfs.
354
355config DS1682
356 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
357 depends on I2C
358 help
359 If you say yes here you get support for Dallas Semiconductor
360 DS1682 Total Elapsed Time Recorder.
361
362 This driver can also be built as a module. If so, the module
363 will be called ds1682.
364
365config VMWARE_BALLOON
366 tristate "VMware Balloon Driver"
367 depends on VMWARE_VMCI && X86 && HYPERVISOR_GUEST
368 select MEMORY_BALLOON
369 help
370 This is VMware physical memory management driver which acts
371 like a "balloon" that can be inflated to reclaim physical pages
372 by reserving them in the guest and invalidating them in the
373 monitor, freeing up the underlying machine pages so they can
374 be allocated to other guests. The balloon can also be deflated
375 to allow the guest to use more physical memory.
376
377 If unsure, say N.
378
379 To compile this driver as a module, choose M here: the
380 module will be called vmw_balloon.
381
382config PCH_PHUB
383 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) PHUB"
384 select GENERIC_NET_UTILS
385 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
386 help
387 This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of
388 Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded
389 processor. The Topcliff has MAC address and Option ROM data in SROM.
390 This driver can access MAC address and Option ROM data in SROM.
391
392 This driver also can be used for LAPIS Semiconductor's IOH,
393 ML7213/ML7223/ML7831.
394 ML7213 which is for IVI(In-Vehicle Infotainment) use.
395 ML7223 IOH is for MP(Media Phone) use.
396 ML7831 IOH is for general purpose use.
397 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
398 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
399
400 To compile this driver as a module, choose M here: the module will
401 be called pch_phub.
402
403config LATTICE_ECP3_CONFIG
404 tristate "Lattice ECP3 FPGA bitstream configuration via SPI"
405 depends on SPI && SYSFS
406 select FW_LOADER
407 default n
408 help
409 This option enables support for bitstream configuration (programming
410 or loading) of the Lattice ECP3 FPGA family via SPI.
411
412 If unsure, say N.
413
414config SRAM
415 bool "Generic on-chip SRAM driver"
416 depends on HAS_IOMEM
417 select GENERIC_ALLOCATOR
418 select SRAM_EXEC if ARM
419 help
420 This driver allows you to declare a memory region to be managed by
421 the genalloc API. It is supposed to be used for small on-chip SRAM
422 areas found on many SoCs.
423
424config SRAM_EXEC
425 bool
426
427config VEXPRESS_SYSCFG
428 bool "Versatile Express System Configuration driver"
429 depends on VEXPRESS_CONFIG
430 default y
431 help
432 ARM Ltd. Versatile Express uses specialised platform configuration
433 bus. System Configuration interface is one of the possible means
434 of generating transactions on this bus.
435
436config PCI_ENDPOINT_TEST
437 depends on PCI
438 select CRC32
439 tristate "PCI Endpoint Test driver"
440 ---help---
441 Enable this configuration option to enable the host side test driver
442 for PCI Endpoint.
443
444config XILINX_SDFEC
445 tristate "Xilinx SDFEC 16"
446 depends on HAS_IOMEM
447 help
448 This option enables support for the Xilinx SDFEC (Soft Decision
449 Forward Error Correction) driver. This enables a char driver
450 for the SDFEC.
451
452 You may select this driver if your design instantiates the
453 SDFEC(16nm) hardened block. To compile this as a module choose M.
454
455 If unsure, say N.
456
457config MISC_RTSX
458 tristate
459 default MISC_RTSX_PCI || MISC_RTSX_USB
460
461config UID_SYS_STATS
462 bool "Per-UID statistics"
463 depends on PROFILING && TASK_XACCT && TASK_IO_ACCOUNTING
464 help
465 Per UID based cpu time statistics exported to /proc/uid_cputime
466 Per UID based io statistics exported to /proc/uid_io
467 Per UID based procstat control in /proc/uid_procstat
468
469config UID_SYS_STATS_DEBUG
470 bool "Per-TASK statistics"
471 depends on UID_SYS_STATS
472 default n
473 help
474 Per TASK based io statistics exported to /proc/uid_io
475
476config PVPANIC
477 tristate "pvpanic device support"
478 depends on HAS_IOMEM && (ACPI || OF)
479 help
480 This driver provides support for the pvpanic device. pvpanic is
481 a paravirtualized device provided by QEMU; it lets a virtual machine
482 (guest) communicate panic events to the host.
483
484config HISI_HIKEY_USB
485 tristate "USB functionality of HiSilicon Hikey Platform"
486 depends on OF && GPIOLIB
487 help
488 If you say yes here you get support for usb functionality of HiSilicon Hikey Platform.
489
490config ASR_RFKILL
491 tristate "Rfkill power control for ASR wlan/bt/fm"
492 depends on MMC_SDHCI_ASR
493 select RFKILL
494 select WIRELESS_EXT
495 select WEXT_PRIV
496 select WEXT_SPY
497 default n
498 ---help---
499 Creates an rfkill entry in sysfs for power control of ASR
500 wlan/bt/fm chips.
501
502config ASR_GNSS_5311
503 tristate "Sysfs control for ASR gnss chip"
504 default n
505 ---help---
506 Creates the entry in sysfs for power control/RST/Wakeup of ASR
507 gnss chips.
508
509config PCIE8X_RFKILL
510 tristate "Rfkill power control for PCIe wlan"
511 depends on PCI
512 select RFKILL
513 select WIRELESS_EXT
514 select WEXT_PRIV
515 select WEXT_SPY
516 default n
517 ---help---
518 Creates an rfkill entry in sysfs for power control of PCIe
519 wlan/bt/fm chips. The default state of the chip is powered off.
520
521config DXSLIC_DXS101
522 bool "DXSLIC DXS101"
523
524config DXSLIC_NONE
525 bool "DXSLIC NONE SLIC"
526
527config MISLIC_LE9643
528 bool "MISLIC LE9643"
529
530config MISLIC_LE9653
531 bool "MISLIC LE9653"
532
533config MISLIC_NONE
534 bool "MISLIC NONE SLIC"
535
536config PROSLIC_SI3217X
537 bool "PROSLIC SI3217X"
538
539config PROSLIC_SI3218X
540 bool "PROSLIC SI3218X"
541
542config PROSLIC_NONE
543 bool "PROSLIC NONE SLIC"
544
545config ECALL_GPIO_SUPPORT
546 bool "ECALL GPIO SUPPORT"
547
548source "drivers/misc/c2port/Kconfig"
549source "drivers/misc/eeprom/Kconfig"
550source "drivers/misc/cb710/Kconfig"
551source "drivers/misc/ti-st/Kconfig"
552source "drivers/misc/lis3lv02d/Kconfig"
553source "drivers/misc/altera-stapl/Kconfig"
554source "drivers/misc/mei/Kconfig"
555source "drivers/misc/vmw_vmci/Kconfig"
556source "drivers/misc/mic/Kconfig"
557source "drivers/misc/genwqe/Kconfig"
558source "drivers/misc/echo/Kconfig"
559source "drivers/misc/cxl/Kconfig"
560source "drivers/misc/ocxl/Kconfig"
561source "drivers/misc/cardreader/Kconfig"
562source "drivers/misc/habanalabs/Kconfig"
563endmenu