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 486config VCPU_STALL_DETECTOR 487 tristate "Guest vCPU stall detector" 488 depends on OF && HAS_IOMEM 489 help 490 When this driver is bound inside a KVM guest, it will 491 periodically "pet" an MMIO stall detector device from each vCPU 492 and allow the host to detect vCPU stalls. 493 494 To compile this driver as a module, choose M here: the module 495 will be called vcpu_stall_detector. 496 497 If you do not intend to run this kernel as a guest, say N. 498 499source "drivers/misc/c2port/Kconfig" 500source "drivers/misc/eeprom/Kconfig" 501source "drivers/misc/cb710/Kconfig" 502source "drivers/misc/ti-st/Kconfig" 503source "drivers/misc/lis3lv02d/Kconfig" 504source "drivers/misc/altera-stapl/Kconfig" 505source "drivers/misc/mei/Kconfig" 506source "drivers/misc/vmw_vmci/Kconfig" 507source "drivers/misc/genwqe/Kconfig" 508source "drivers/misc/echo/Kconfig" 509source "drivers/misc/cxl/Kconfig" 510source "drivers/misc/ocxl/Kconfig" 511source "drivers/misc/bcm-vk/Kconfig" 512source "drivers/misc/cardreader/Kconfig" 513source "drivers/misc/habanalabs/Kconfig" 514source "drivers/misc/uacce/Kconfig" 515source "drivers/misc/pvpanic/Kconfig" 516endmenu 517