1# SPDX-License-Identifier: GPL-2.0-only 2# 3# HID driver configuration 4# 5menu "HID support" 6 depends on INPUT 7 8config HID 9 tristate "HID bus support" 10 depends on INPUT 11 default y 12 help 13 A human interface device (HID) is a type of computer device that 14 interacts directly with and takes input from humans. The term "HID" 15 most commonly used to refer to the USB-HID specification, but other 16 devices (such as, but not strictly limited to, Bluetooth) are 17 designed using HID specification (this involves certain keyboards, 18 mice, tablets, etc). This option adds the HID bus to the kernel, 19 together with generic HID layer code. The HID devices are added and 20 removed from the HID bus by the transport-layer drivers, such as 21 usbhid (USB_HID) and hidp (BT_HIDP). 22 23 For docs and specs, see https://www.usb.org/developers/hidpage/ 24 25 If unsure, say Y. 26 27if HID 28 29config HID_BATTERY_STRENGTH 30 bool "Battery level reporting for HID devices" 31 depends on HID 32 select POWER_SUPPLY 33 default n 34 help 35 This option adds support of reporting battery strength (for HID devices 36 that support this feature) through power_supply class so that userspace 37 tools, such as upower, can display it. 38 39config HIDRAW 40 bool "/dev/hidraw raw HID device support" 41 depends on HID 42 help 43 Say Y here if you want to support HID devices (from the USB 44 specification standpoint) that aren't strictly user interface 45 devices, like monitor controls and Uninterruptible Power Supplies. 46 47 This module supports these devices separately using a separate 48 event interface on /dev/hidraw. 49 50 There is also a /dev/hiddev configuration option in the USB HID 51 configuration menu. In comparison to hiddev, this device does not process 52 the hid events at all (no parsing, no lookups). This lets applications 53 to work on raw hid events when they want to, and avoid using transport-specific 54 userspace libhid/libusb libraries. 55 56 If unsure, say Y. 57 58config UHID 59 tristate "User-space I/O driver support for HID subsystem" 60 depends on HID 61 default n 62 help 63 Say Y here if you want to provide HID I/O Drivers from user-space. 64 This allows to write I/O drivers in user-space and feed the data from 65 the device into the kernel. The kernel parses the HID reports, loads the 66 corresponding HID Device Driver or provides input devices on top of your 67 user-space device. 68 69 This driver cannot be used to parse HID-reports in user-space and write 70 special HID-drivers. You should use hidraw for that. 71 Instead, this driver allows to write the transport-layer driver in 72 user-space like USB-HID and Bluetooth-HID do in kernel-space. 73 74 If unsure, say N. 75 76 To compile this driver as a module, choose M here: the 77 module will be called uhid. 78 79config HID_GENERIC 80 tristate "Generic HID driver" 81 depends on HID 82 default HID 83 help 84 Support for generic devices on the HID bus. This includes most 85 keyboards and mice, joysticks, tablets and digitizers. 86 87 To compile this driver as a module, choose M here: the module 88 will be called hid-generic. 89 90 If unsure, say Y. 91 92menu "Special HID drivers" 93 depends on HID 94 95config HID_A4TECH 96 tristate "A4TECH mice" 97 depends on HID 98 default !EXPERT 99 help 100 Support for some A4TECH mice with two scroll wheels. 101 102config HID_ACCUTOUCH 103 tristate "Accutouch touch device" 104 depends on USB_HID 105 help 106 This selects a driver for the Accutouch 2216 touch controller. 107 108 The driver works around a problem in the reported device capabilities 109 which causes userspace to detect the device as a mouse rather than 110 a touchscreen. 111 112 Say Y here if you have a Accutouch 2216 touch controller. 113 114config HID_ACRUX 115 tristate "ACRUX game controller support" 116 depends on HID 117 help 118 Say Y here if you want to enable support for ACRUX game controllers. 119 120config HID_ACRUX_FF 121 bool "ACRUX force feedback support" 122 depends on HID_ACRUX 123 select INPUT_FF_MEMLESS 124 help 125 Say Y here if you want to enable force feedback support for ACRUX 126 game controllers. 127 128config HID_APPLE 129 tristate "Apple {i,Power,Mac}Books" 130 depends on HID 131 default !EXPERT 132 help 133 Support for some Apple devices which less or more break 134 HID specification. 135 136 Say Y here if you want support for keyboards of Apple iBooks, PowerBooks, 137 MacBooks, MacBook Pros and Apple Aluminum. 138 139config HID_APPLEIR 140 tristate "Apple infrared receiver" 141 depends on (USB_HID) 142 help 143 Support for Apple infrared remote control. All the Apple computers from 144 2005 onwards include such a port, except the unibody Macbook (2009), 145 and Mac Pros. This receiver is also used in the Apple TV set-top box 146 prior to the 2010 model. 147 148 Say Y here if you want support for Apple infrared remote control. 149 150config HID_ASUS 151 tristate "Asus" 152 depends on USB_HID 153 depends on LEDS_CLASS 154 depends on ASUS_WMI || ASUS_WMI=n 155 select POWER_SUPPLY 156 help 157 Support for Asus notebook built-in keyboard and touchpad via i2c, and 158 the Asus Republic of Gamers laptop keyboard special keys. 159 160 Supported devices: 161 - EeeBook X205TA 162 - VivoBook E200HA 163 - GL553V series 164 - GL753V series 165 166config HID_AUREAL 167 tristate "Aureal" 168 depends on HID 169 help 170 Support for Aureal Cy se W-01RN Remote Controller and other Aureal derived remotes. 171 172config HID_BELKIN 173 tristate "Belkin Flip KVM and Wireless keyboard" 174 depends on HID 175 default !EXPERT 176 help 177 Support for Belkin Flip KVM and Wireless keyboard. 178 179config HID_BETOP_FF 180 tristate "Betop Production Inc. force feedback support" 181 depends on USB_HID 182 select INPUT_FF_MEMLESS 183 help 184 Say Y here if you want to enable force feedback support for devices by 185 BETOP Production Ltd. 186 Currently the following devices are known to be supported: 187 - BETOP 2185 PC & BFM MODE 188 189config HID_BIGBEN_FF 190 tristate "BigBen Interactive Kids' gamepad support" 191 depends on USB_HID 192 depends on NEW_LEDS 193 depends on LEDS_CLASS 194 select INPUT_FF_MEMLESS 195 help 196 Support for the "Kid-friendly Wired Controller" PS3OFMINIPAD 197 gamepad made by BigBen Interactive, originally sold as a PS3 198 accessory. This driver fixes input mapping and adds support for 199 force feedback effects and LEDs on the device. 200 201config HID_CHERRY 202 tristate "Cherry Cymotion keyboard" 203 depends on HID 204 default !EXPERT 205 help 206 Support for Cherry Cymotion keyboard. 207 208config HID_CHICONY 209 tristate "Chicony devices" 210 depends on USB_HID 211 default !EXPERT 212 help 213 Support for Chicony Tactical pad and special keys on Chicony keyboards. 214 215config HID_CORSAIR 216 tristate "Corsair devices" 217 depends on USB_HID && LEDS_CLASS 218 help 219 Support for Corsair devices that are not fully compliant with the 220 HID standard. 221 222 Supported devices: 223 - Vengeance K90 224 - Scimitar PRO RGB 225 226config HID_COUGAR 227 tristate "Cougar devices" 228 depends on HID 229 help 230 Support for Cougar devices that are not fully compliant with the 231 HID standard. 232 233 Supported devices: 234 - Cougar 500k Gaming Keyboard 235 236config HID_MACALLY 237 tristate "Macally devices" 238 depends on HID 239 help 240 Support for Macally devices that are not fully compliant with the 241 HID standard. 242 243 supported devices: 244 - Macally ikey keyboard 245 246config HID_PRODIKEYS 247 tristate "Prodikeys PC-MIDI Keyboard support" 248 depends on USB_HID && SND 249 select SND_RAWMIDI 250 help 251 Support for Prodikeys PC-MIDI Keyboard device support. 252 Say Y here to enable support for this device. 253 - Prodikeys PC-MIDI keyboard. 254 The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI 255 input and one MIDI output. These MIDI jacks appear as 256 a sound "card" in the ALSA sound system. 257 Note: if you say N here, this device will still function as a basic 258 multimedia keyboard, but will lack support for the musical keyboard 259 and some additional multimedia keys. 260 261config HID_CMEDIA 262 tristate "CMedia audio chips" 263 depends on HID 264 help 265 Support for CMedia CM6533 HID audio jack controls 266 and HS100B mute buttons. 267 268config HID_CP2112 269 tristate "Silicon Labs CP2112 HID USB-to-SMBus Bridge support" 270 depends on USB_HID && HIDRAW && I2C && GPIOLIB 271 select GPIOLIB_IRQCHIP 272 help 273 Support for Silicon Labs CP2112 HID USB to SMBus Master Bridge. 274 This is a HID device driver which registers as an i2c adapter 275 and gpiochip to expose these functions of the CP2112. The 276 customizable USB descriptor fields are exposed as sysfs attributes. 277 278config HID_CREATIVE_SB0540 279 tristate "Creative SB0540 infrared receiver" 280 depends on USB_HID 281 help 282 Support for Creative infrared SB0540-compatible remote controls, such 283 as the RM-1500 and RM-1800 remotes. 284 285 Say Y here if you want support for Creative SB0540 infrared receiver. 286 287config HID_CYPRESS 288 tristate "Cypress mouse and barcode readers" 289 depends on HID 290 default !EXPERT 291 help 292 Support for cypress mouse and barcode readers. 293 294config HID_DRAGONRISE 295 tristate "DragonRise Inc. game controller" 296 depends on HID 297 help 298 Say Y here if you have DragonRise Inc. game controllers. 299 These might be branded as: 300 - Tesun USB-703 301 - Media-tech MT1504 "Rogue" 302 - DVTech JS19 "Gear" 303 - Defender Game Master 304 305config DRAGONRISE_FF 306 bool "DragonRise Inc. force feedback" 307 depends on HID_DRAGONRISE 308 select INPUT_FF_MEMLESS 309 help 310 Say Y here if you want to enable force feedback support for DragonRise Inc. 311 game controllers. 312 313config HID_EMS_FF 314 tristate "EMS Production Inc. force feedback support" 315 depends on HID 316 select INPUT_FF_MEMLESS 317 help 318 Say Y here if you want to enable force feedback support for devices by 319 EMS Production Ltd. 320 Currently the following devices are known to be supported: 321 - Trio Linker Plus II 322 323config HID_ELAN 324 tristate "ELAN USB Touchpad Support" 325 depends on LEDS_CLASS && USB_HID 326 help 327 Say Y to enable support for the USB ELAN touchpad 328 Currently the following devices are known to be supported: 329 - HP Pavilion X2 10-p0XX. 330 331config HID_ELECOM 332 tristate "ELECOM HID devices" 333 depends on HID 334 help 335 Support for ELECOM devices: 336 - BM084 Bluetooth Mouse 337 - EX-G Trackballs (M-XT3DRBK, M-XT3URBK) 338 - DEFT Trackballs (M-DT1DRBK, M-DT1URBK, M-DT2DRBK, M-DT2URBK) 339 - HUGE Trackballs (M-HT1DRBK, M-HT1URBK) 340 341config HID_ELO 342 tristate "ELO USB 4000/4500 touchscreen" 343 depends on USB_HID 344 help 345 Support for the ELO USB 4000/4500 touchscreens. Note that this is for 346 different devices than those handled by CONFIG_TOUCHSCREEN_USB_ELO. 347 348config HID_EZKEY 349 tristate "Ezkey BTC 8193 keyboard" 350 depends on HID 351 default !EXPERT 352 help 353 Support for Ezkey BTC 8193 keyboard. 354 355config HID_FT260 356 tristate "FTDI FT260 USB HID to I2C host support" 357 depends on USB_HID && HIDRAW && I2C 358 help 359 Provides I2C host adapter functionality over USB-HID through FT260 360 device. The customizable USB descriptor fields are exposed as sysfs 361 attributes. 362 363 To compile this driver as a module, choose M here: the module 364 will be called hid-ft260. 365 366config HID_GEMBIRD 367 tristate "Gembird Joypad" 368 depends on HID 369 help 370 Support for Gembird JPD-DualForce 2. 371 372config HID_GFRM 373 tristate "Google Fiber TV Box remote control support" 374 depends on HID 375 help 376 Support for Google Fiber TV Box remote controls 377 378config HID_GLORIOUS 379 tristate "Glorious PC Gaming Race mice" 380 depends on HID 381 help 382 Support for Glorious PC Gaming Race mice such as 383 the Glorious Model O, O- and D. 384 385config HID_HOLTEK 386 tristate "Holtek HID devices" 387 depends on USB_HID 388 help 389 Support for Holtek based devices: 390 - Holtek On Line Grip based game controller 391 - Trust GXT 18 Gaming Keyboard 392 - Sharkoon Drakonia / Perixx MX-2000 gaming mice 393 - Tracer Sniper TRM-503 / NOVA Gaming Slider X200 / 394 Zalman ZM-GM1 395 - SHARKOON DarkGlider Gaming mouse 396 - LEETGION Hellion Gaming Mouse 397 398config HOLTEK_FF 399 bool "Holtek On Line Grip force feedback support" 400 depends on HID_HOLTEK 401 select INPUT_FF_MEMLESS 402 help 403 Say Y here if you have a Holtek On Line Grip based game controller 404 and want to have force feedback support for it. 405 406config HID_VIVALDI_COMMON 407 tristate 408 help 409 ChromeOS Vivaldi HID parsing support library. This is a hidden 410 option so that drivers can use common code to parse the HID 411 descriptors for vivaldi function row keymap. 412 413config HID_GOOGLE_HAMMER 414 tristate "Google Hammer Keyboard" 415 select HID_VIVALDI_COMMON 416 select INPUT_VIVALDIFMAP 417 depends on USB_HID && LEDS_CLASS && CROS_EC 418 help 419 Say Y here if you have a Google Hammer device. 420 421config HID_VIVALDI 422 tristate "Vivaldi Keyboard" 423 select HID_VIVALDI_COMMON 424 select INPUT_VIVALDIFMAP 425 depends on HID 426 help 427 Say Y here if you want to enable support for Vivaldi keyboards. 428 429 Vivaldi keyboards use a vendor-specific (Google) HID usage to report 430 how the keys in the top row are physically ordered. 431 432config HID_GT683R 433 tristate "MSI GT68xR LED support" 434 depends on LEDS_CLASS && USB_HID 435 help 436 Say Y here if you want to enable support for the three MSI GT68xR LEDs 437 438 This driver support following modes: 439 - Normal: LEDs are fully on when enabled 440 - Audio: LEDs brightness depends on sound level 441 - Breathing: LEDs brightness varies at human breathing rate 442 443 Currently the following devices are know to be supported: 444 - MSI GT683R 445 446config HID_KEYTOUCH 447 tristate "Keytouch HID devices" 448 depends on HID 449 help 450 Support for Keytouch HID devices not fully compliant with 451 the specification. Currently supported: 452 - Keytouch IEC 60945 453 454config HID_KYE 455 tristate "KYE/Genius devices" 456 depends on HID 457 help 458 Support for KYE/Genius devices not fully compliant with HID standard: 459 - Ergo Mouse 460 - EasyPen i405X tablet 461 - MousePen i608X tablet 462 - EasyPen M610X tablet 463 464config HID_UCLOGIC 465 tristate "UC-Logic" 466 depends on USB_HID 467 help 468 Support for UC-Logic and Huion tablets. 469 470config HID_WALTOP 471 tristate "Waltop" 472 depends on HID 473 help 474 Support for Waltop tablets. 475 476config HID_VIEWSONIC 477 tristate "ViewSonic/Signotec" 478 depends on HID 479 help 480 Support for ViewSonic/Signotec PD1011 signature pad. 481 482config HID_XIAOMI 483 tristate "Xiaomi" 484 depends on HID 485 help 486 Adds support for side buttons of Xiaomi Mi Dual Mode Wireless 487 Mouse Silent Edition. 488 489config HID_GYRATION 490 tristate "Gyration remote control" 491 depends on HID 492 help 493 Support for Gyration remote control. 494 495config HID_ICADE 496 tristate "ION iCade arcade controller" 497 depends on HID 498 help 499 Support for the ION iCade arcade controller to work as a joystick. 500 501 To compile this driver as a module, choose M here: the 502 module will be called hid-icade. 503 504config HID_ITE 505 tristate "ITE devices" 506 depends on HID 507 default !EXPERT 508 help 509 Support for ITE devices not fully compliant with HID standard. 510 511config HID_JABRA 512 tristate "Jabra USB HID Driver" 513 depends on HID 514 help 515 Support for Jabra USB HID devices. 516 517 Prevents mapping of vendor defined HID usages to input events. Without 518 this driver HID reports from Jabra devices may incorrectly be seen as 519 mouse button events. 520 Say M here if you may ever plug in a Jabra USB device. 521 522config HID_TWINHAN 523 tristate "Twinhan IR remote control" 524 depends on HID 525 help 526 Support for Twinhan IR remote control. 527 528config HID_KENSINGTON 529 tristate "Kensington Slimblade Trackball" 530 depends on HID 531 default !EXPERT 532 help 533 Support for Kensington Slimblade Trackball. 534 535config HID_LCPOWER 536 tristate "LC-Power" 537 depends on HID 538 help 539 Support for LC-Power RC1000MCE RF remote control. 540 541config HID_LED 542 tristate "Simple RGB LED support" 543 depends on HID 544 depends on LEDS_CLASS 545 help 546 Support for simple RGB LED devices. Currently supported are: 547 - Riso Kagaku Webmail Notifier 548 - Dream Cheeky Webmail Notifier and Friends Alert 549 - ThingM blink(1) 550 - Delcom Visual Signal Indicator Generation 2 551 - Greynut Luxafor 552 553 To compile this driver as a module, choose M here: the 554 module will be called hid-led. 555 556config HID_LENOVO 557 tristate "Lenovo / Thinkpad devices" 558 depends on HID 559 select NEW_LEDS 560 select LEDS_CLASS 561 help 562 Support for IBM/Lenovo devices that are not fully compliant with HID standard. 563 564 Say Y if you want support for horizontal scrolling of the IBM/Lenovo 565 Scrollpoint mice or the non-compliant features of the Lenovo Thinkpad 566 standalone keyboards, e.g: 567 - ThinkPad USB Keyboard with TrackPoint (supports extra LEDs and trackpoint 568 configuration) 569 - ThinkPad Compact Bluetooth Keyboard with TrackPoint (supports Fn keys) 570 - ThinkPad Compact USB Keyboard with TrackPoint (supports Fn keys) 571 572config HID_LETSKETCH 573 tristate "Letsketch WP9620N tablets" 574 depends on USB_HID 575 help 576 Driver for the LetSketch / VSON WP9620N drawing tablet. This 577 drawing tablet is also sold under other brand names such as Case U, 578 presumably this driver will work for all of them. But it has only been 579 tested with a LetSketch WP9620N model. 580 581 These tablets also work without a special HID driver, but then only 582 part of the active area works and both the pad and stylus buttons are 583 hardwired to special key-combos. E.g. the 2 stylus buttons send right 584 mouse clicks / resp. "e" key presses. 585 586config HID_LOGITECH 587 tristate "Logitech devices" 588 depends on USB_HID 589 depends on LEDS_CLASS 590 default !EXPERT 591 help 592 Support for Logitech devices that are not fully compliant with HID standard. 593 594config HID_LOGITECH_DJ 595 tristate "Logitech receivers full support" 596 depends on USB_HID 597 depends on HIDRAW 598 depends on HID_LOGITECH 599 select HID_LOGITECH_HIDPP 600 help 601 Say Y if you want support for Logitech receivers and devices. 602 Logitech receivers are capable of pairing multiple Logitech compliant 603 devices to the same receiver. Without this driver it will be handled by 604 generic USB_HID driver and all incoming events will be multiplexed 605 into a single mouse and a single keyboard device. 606 607config HID_LOGITECH_HIDPP 608 tristate "Logitech HID++ devices support" 609 depends on HID_LOGITECH 610 select POWER_SUPPLY 611 help 612 Support for Logitech devices relying on the HID++ Logitech specification 613 614 Say Y if you want support for Logitech devices relying on the HID++ 615 specification. Such devices are the various Logitech Touchpads (T650, 616 T651, TK820), some mice (Zone Touch mouse), or even keyboards (Solar 617 Keyboard). 618 619config LOGITECH_FF 620 bool "Logitech force feedback support" 621 depends on HID_LOGITECH 622 select INPUT_FF_MEMLESS 623 help 624 Say Y here if you have one of these devices: 625 - Logitech WingMan Cordless RumblePad 626 - Logitech WingMan Cordless RumblePad 2 627 - Logitech WingMan Force 3D 628 629 and if you want to enable force feedback for them. 630 Note: if you say N here, this device will still be supported, but without 631 force feedback. 632 633config LOGIRUMBLEPAD2_FF 634 bool "Logitech force feedback support (variant 2)" 635 depends on HID_LOGITECH 636 select INPUT_FF_MEMLESS 637 help 638 Say Y here if you want to enable force feedback support for: 639 - Logitech RumblePad 640 - Logitech Rumblepad 2 641 - Logitech Formula Vibration Feedback Wheel 642 643config LOGIG940_FF 644 bool "Logitech Flight System G940 force feedback support" 645 depends on HID_LOGITECH 646 select INPUT_FF_MEMLESS 647 help 648 Say Y here if you want to enable force feedback support for Logitech 649 Flight System G940 devices. 650 651config LOGIWHEELS_FF 652 bool "Logitech wheels configuration and force feedback support" 653 depends on HID_LOGITECH 654 select INPUT_FF_MEMLESS 655 default LOGITECH_FF 656 help 657 Say Y here if you want to enable force feedback and range setting(*) 658 support for following Logitech wheels: 659 - Logitech G25 (*) 660 - Logitech G27 (*) 661 - Logitech G29 (*) 662 - Logitech Driving Force 663 - Logitech Driving Force Pro (*) 664 - Logitech Driving Force GT (*) 665 - Logitech Driving Force EX/RX 666 - Logitech Driving Force Wireless 667 - Logitech Speed Force Wireless 668 - Logitech MOMO Force 669 - Logitech MOMO Racing Force 670 - Logitech Formula Force GP 671 - Logitech Formula Force EX/RX 672 - Logitech Wingman Formula Force GP 673 674config HID_MAGICMOUSE 675 tristate "Apple Magic Mouse/Trackpad multi-touch support" 676 depends on HID 677 help 678 Support for the Apple Magic Mouse/Trackpad multi-touch. 679 680 Say Y here if you want support for the multi-touch features of the 681 Apple Wireless "Magic" Mouse and the Apple Wireless "Magic" Trackpad. 682 683config HID_MALTRON 684 tristate "Maltron L90 keyboard" 685 depends on HID 686 help 687 Adds support for the volume up, volume down, mute, and play/pause buttons 688 of the Maltron L90 keyboard. 689 690config HID_MAYFLASH 691 tristate "Mayflash game controller adapter force feedback" 692 depends on HID 693 select INPUT_FF_MEMLESS 694 help 695 Say Y here if you have HJZ Mayflash PS3 game controller adapters 696 and want to enable force feedback support. 697 698config HID_REDRAGON 699 tristate "Redragon keyboards" 700 depends on HID 701 default !EXPERT 702 help 703 Support for Redragon keyboards that need fix-ups to work properly. 704 705config HID_MICROSOFT 706 tristate "Microsoft non-fully HID-compliant devices" 707 depends on HID 708 default !EXPERT 709 select INPUT_FF_MEMLESS 710 help 711 Support for Microsoft devices that are not fully compliant with HID standard. 712 713config HID_MONTEREY 714 tristate "Monterey Genius KB29E keyboard" 715 depends on HID 716 default !EXPERT 717 help 718 Support for Monterey Genius KB29E. 719 720config HID_MULTITOUCH 721 tristate "HID Multitouch panels" 722 depends on HID 723 help 724 Generic support for HID multitouch panels. 725 726 Say Y here if you have one of the following devices: 727 - 3M PCT touch screens 728 - ActionStar dual touch panels 729 - Atmel panels 730 - Cando dual touch panels 731 - Chunghwa panels 732 - CJTouch panels 733 - CVTouch panels 734 - Cypress TrueTouch panels 735 - Elan Microelectronics touch panels 736 - Elo TouchSystems IntelliTouch Plus panels 737 - GeneralTouch 'Sensing Win7-TwoFinger' panels 738 - GoodTouch panels 739 - Hanvon dual touch panels 740 - Ilitek dual touch panels 741 - IrTouch Infrared USB panels 742 - LG Display panels (Dell ST2220Tc) 743 - Lumio CrystalTouch panels 744 - MosArt dual-touch panels 745 - Panasonic multitouch panels 746 - PenMount dual touch panels 747 - Perixx Peripad 701 touchpad 748 - PixArt optical touch screen 749 - Pixcir dual touch panels 750 - Quanta panels 751 - eGalax dual-touch panels, including the Joojoo and Wetab tablets 752 - SiS multitouch panels 753 - Stantum multitouch panels 754 - Touch International Panels 755 - Unitec Panels 756 - Wistron optical touch panels 757 - XAT optical touch panels 758 - Xiroku optical touch panels 759 - Zytronic touch panels 760 761 If unsure, say N. 762 763 To compile this driver as a module, choose M here: the 764 module will be called hid-multitouch. 765 766config HID_NINTENDO 767 tristate "Nintendo Joy-Con and Pro Controller support" 768 depends on HID 769 depends on NEW_LEDS 770 depends on LEDS_CLASS 771 select POWER_SUPPLY 772 help 773 Adds support for the Nintendo Switch Joy-Cons and Pro Controller. 774 All controllers support bluetooth, and the Pro Controller also supports 775 its USB mode. 776 777 To compile this driver as a module, choose M here: the 778 module will be called hid-nintendo. 779 780config NINTENDO_FF 781 bool "Nintendo Switch controller force feedback support" 782 depends on HID_NINTENDO 783 select INPUT_FF_MEMLESS 784 help 785 Say Y here if you have a Nintendo Switch controller and want to enable 786 force feedback support for it. This works for both joy-cons and the pro 787 controller. For the pro controller, both rumble motors can be controlled 788 individually. 789 790config HID_NTI 791 tristate "NTI keyboard adapters" 792 help 793 Support for the "extra" Sun keyboard keys on keyboards attached 794 through Network Technologies USB-SUN keyboard adapters. 795 796config HID_NTRIG 797 tristate "N-Trig touch screen" 798 depends on USB_HID 799 help 800 Support for N-Trig touch screen. 801 802config HID_ORTEK 803 tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad" 804 depends on HID 805 help 806 There are certain devices which have LogicalMaximum wrong in the keyboard 807 usage page of their report descriptor. The most prevailing ones so far 808 are manufactured by Ortek, thus the name of the driver. Currently 809 supported devices by this driver are 810 811 - Ortek PKB-1700 812 - Ortek WKB-2000 813 - Skycable wireless presenter 814 815config HID_PANTHERLORD 816 tristate "Pantherlord/GreenAsia game controller" 817 depends on HID 818 help 819 Say Y here if you have a PantherLord/GreenAsia based game controller 820 or adapter. 821 822config PANTHERLORD_FF 823 bool "Pantherlord force feedback support" 824 depends on HID_PANTHERLORD 825 select INPUT_FF_MEMLESS 826 help 827 Say Y here if you have a PantherLord/GreenAsia based game controller 828 or adapter and want to enable force feedback support for it. 829 830config HID_PENMOUNT 831 tristate "Penmount touch device" 832 depends on USB_HID 833 help 834 This selects a driver for the PenMount 6000 touch controller. 835 836 The driver works around a problem in the report descript allowing 837 the userspace to touch events instead of mouse events. 838 839 Say Y here if you have a Penmount based touch controller. 840 841config HID_PETALYNX 842 tristate "Petalynx Maxter remote control" 843 depends on HID 844 help 845 Support for Petalynx Maxter remote control. 846 847config HID_PICOLCD 848 tristate "PicoLCD (graphic version)" 849 depends on HID 850 help 851 This provides support for Minibox PicoLCD devices, currently 852 only the graphical ones are supported. 853 854 This includes support for the following device features: 855 - Keypad 856 - Switching between Firmware and Flash mode 857 - EEProm / Flash access (via debugfs) 858 Features selectively enabled: 859 - Framebuffer for monochrome 256x64 display 860 - Backlight control 861 - Contrast control 862 - General purpose outputs 863 Features that are not (yet) supported: 864 - IR 865 866config HID_PICOLCD_FB 867 bool "Framebuffer support" if EXPERT 868 default !EXPERT 869 depends on HID_PICOLCD 870 depends on HID_PICOLCD=FB || FB=y 871 select FB_DEFERRED_IO 872 select FB_SYS_FILLRECT 873 select FB_SYS_COPYAREA 874 select FB_SYS_IMAGEBLIT 875 select FB_SYS_FOPS 876 help 877 Provide access to PicoLCD's 256x64 monochrome display via a 878 framebuffer device. 879 880config HID_PICOLCD_BACKLIGHT 881 bool "Backlight control" if EXPERT 882 default !EXPERT 883 depends on HID_PICOLCD 884 depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y 885 help 886 Provide access to PicoLCD's backlight control via backlight 887 class. 888 889config HID_PICOLCD_LCD 890 bool "Contrast control" if EXPERT 891 default !EXPERT 892 depends on HID_PICOLCD 893 depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y 894 help 895 Provide access to PicoLCD's LCD contrast via lcd class. 896 897config HID_PICOLCD_LEDS 898 bool "GPO via leds class" if EXPERT 899 default !EXPERT 900 depends on HID_PICOLCD 901 depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y 902 help 903 Provide access to PicoLCD's GPO pins via leds class. 904 905config HID_PICOLCD_CIR 906 bool "CIR via RC class" if EXPERT 907 default !EXPERT 908 depends on HID_PICOLCD 909 depends on HID_PICOLCD=RC_CORE || RC_CORE=y 910 help 911 Provide access to PicoLCD's CIR interface via remote control (LIRC). 912 913config HID_PLANTRONICS 914 tristate "Plantronics USB HID Driver" 915 depends on HID 916 help 917 Provides HID support for Plantronics USB audio devices. 918 Correctly maps vendor unique volume up/down HID usages to 919 KEY_VOLUMEUP and KEY_VOLUMEDOWN events and prevents core mapping 920 of other vendor unique HID usages to random mouse events. 921 922 Say M here if you may ever plug in a Plantronics USB audio device. 923 924config HID_PLAYSTATION 925 tristate "PlayStation HID Driver" 926 depends on HID 927 depends on LEDS_CLASS_MULTICOLOR 928 select CRC32 929 select POWER_SUPPLY 930 help 931 Provides support for Sony PS5 controllers including support for 932 its special functionalities e.g. touchpad, lights and motion 933 sensors. 934 935config PLAYSTATION_FF 936 bool "PlayStation force feedback support" 937 depends on HID_PLAYSTATION 938 select INPUT_FF_MEMLESS 939 help 940 Say Y here if you would like to enable force feedback support for 941 PlayStation game controllers. 942 943config HID_PRIMAX 944 tristate "Primax non-fully HID-compliant devices" 945 depends on HID 946 help 947 Support for Primax devices that are not fully compliant with the 948 HID standard. 949 950config HID_RETRODE 951 tristate "Retrode 2 USB adapter for vintage video games" 952 depends on USB_HID 953 help 954 Support for 955 * Retrode 2 cartridge and controller adapter 956 957config HID_ROCCAT 958 tristate "Roccat device support" 959 depends on USB_HID 960 help 961 Support for Roccat devices. 962 Say Y here if you have a Roccat mouse or keyboard and want 963 support for its special functionalities. 964 965config HID_SAITEK 966 tristate "Saitek (Mad Catz) non-fully HID-compliant devices" 967 depends on HID 968 help 969 Support for Saitek devices that are not fully compliant with the 970 HID standard. 971 972 Supported devices: 973 - PS1000 Dual Analog Pad 974 - Saitek R.A.T.7, R.A.T.9, M.M.O.7 Gaming Mice 975 - Mad Catz R.A.T.5, R.A.T.9 Gaming Mice 976 977config HID_SAMSUNG 978 tristate "Samsung InfraRed remote control or keyboards" 979 depends on USB_HID 980 help 981 Support for Samsung InfraRed remote control or keyboards. 982 983config HID_SEMITEK 984 tristate "Semitek USB keyboards" 985 depends on HID 986 help 987 Support for Semitek USB keyboards that are not fully compliant 988 with the HID standard. 989 990 There are many variants, including: 991 - GK61, GK64, GK68, GK84, GK96, etc. 992 - SK61, SK64, SK68, SK84, SK96, etc. 993 - Dierya DK61/DK66 994 - Tronsmart TK09R 995 - Woo-dy 996 - X-Bows Nature/Knight 997 998config HID_SONY 999 tristate "Sony PS2/3/4 accessories" 1000 depends on USB_HID 1001 depends on NEW_LEDS 1002 depends on LEDS_CLASS 1003 select POWER_SUPPLY 1004 select CRC32 1005 help 1006 Support for 1007 1008 * Sony PS3 6-axis controllers 1009 * Sony PS4 DualShock 4 controllers 1010 * Buzz controllers 1011 * Sony PS3 Blue-ray Disk Remote Control (Bluetooth) 1012 * Logitech Harmony adapter for Sony Playstation 3 (Bluetooth) 1013 * Guitar Hero Live PS3, Wii U and PS4 guitar dongles 1014 * Guitar Hero PS3 and PC guitar dongles 1015 1016config SONY_FF 1017 bool "Sony PS2/3/4 accessories force feedback support" 1018 depends on HID_SONY 1019 select INPUT_FF_MEMLESS 1020 help 1021 Say Y here if you have a Sony PS2/3/4 accessory and want to enable 1022 force feedback support for it. 1023 1024config HID_SPEEDLINK 1025 tristate "Speedlink VAD Cezanne mouse support" 1026 depends on HID 1027 help 1028 Support for Speedlink Vicious and Divine Cezanne mouse. 1029 1030config HID_STEAM 1031 tristate "Steam Controller support" 1032 depends on HID 1033 select POWER_SUPPLY 1034 help 1035 Say Y here if you have a Steam Controller if you want to use it 1036 without running the Steam Client. It supports both the wired and 1037 the wireless adaptor. 1038 1039config HID_STEELSERIES 1040 tristate "Steelseries SRW-S1 steering wheel support" 1041 depends on HID 1042 help 1043 Support for Steelseries SRW-S1 steering wheel 1044 1045config HID_SUNPLUS 1046 tristate "Sunplus wireless desktop" 1047 depends on HID 1048 help 1049 Support for Sunplus wireless desktop. 1050 1051config HID_RMI 1052 tristate "Synaptics RMI4 device support" 1053 depends on HID 1054 select RMI4_CORE 1055 select RMI4_F03 1056 select RMI4_F11 1057 select RMI4_F12 1058 select RMI4_F30 1059 help 1060 Support for Synaptics RMI4 touchpads. 1061 Say Y here if you have a Synaptics RMI4 touchpads over i2c-hid or usbhid 1062 and want support for its special functionalities. 1063 1064config HID_GREENASIA 1065 tristate "GreenAsia (Product ID 0x12) game controller support" 1066 depends on HID 1067 help 1068 Say Y here if you have a GreenAsia (Product ID 0x12) based game 1069 controller or adapter. 1070 1071config GREENASIA_FF 1072 bool "GreenAsia (Product ID 0x12) force feedback support" 1073 depends on HID_GREENASIA 1074 select INPUT_FF_MEMLESS 1075 help 1076 Say Y here if you have a GreenAsia (Product ID 0x12) based game controller 1077 (like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter 1078 and want to enable force feedback support for it. 1079 1080config HID_HYPERV_MOUSE 1081 tristate "Microsoft Hyper-V mouse driver" 1082 depends on HYPERV 1083 help 1084 Select this option to enable the Hyper-V mouse driver. 1085 1086config HID_SMARTJOYPLUS 1087 tristate "SmartJoy PLUS PS2/USB adapter support" 1088 depends on HID 1089 help 1090 Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box, 1091 Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro. 1092 1093 Note that DDR (Dance Dance Revolution) mode is not supported, nor 1094 is pressure sensitive buttons on the pro models. 1095 1096config SMARTJOYPLUS_FF 1097 bool "SmartJoy PLUS PS2/USB adapter force feedback support" 1098 depends on HID_SMARTJOYPLUS 1099 select INPUT_FF_MEMLESS 1100 help 1101 Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to 1102 enable force feedback support for it. 1103 1104config HID_TIVO 1105 tristate "TiVo Slide Bluetooth remote control support" 1106 depends on HID 1107 help 1108 Say Y if you have a TiVo Slide Bluetooth remote control. 1109 1110config HID_TOPSEED 1111 tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support" 1112 depends on HID 1113 help 1114 Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic 1115 CLLRCMCE remote control. 1116 1117config HID_THINGM 1118 tristate "ThingM blink(1) USB RGB LED" 1119 depends on HID 1120 depends on LEDS_CLASS 1121 select HID_LED 1122 help 1123 Support for the ThingM blink(1) USB RGB LED. This driver has been 1124 merged into the generic hid led driver. Config symbol HID_THINGM 1125 just selects HID_LED and will be removed soon. 1126 1127config HID_THRUSTMASTER 1128 tristate "ThrustMaster devices support" 1129 depends on USB_HID 1130 help 1131 Say Y here if you have a THRUSTMASTER FireStore Dual Power 2, 1132 a THRUSTMASTER Ferrari GT Rumble Wheel or Thrustmaster FFB 1133 Wheel (T150RS, T300RS, T300 Ferrari Alcantara Edition, T500RS). 1134 1135config THRUSTMASTER_FF 1136 bool "ThrustMaster devices force feedback support" 1137 depends on HID_THRUSTMASTER 1138 select INPUT_FF_MEMLESS 1139 help 1140 Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3, 1141 a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT 1142 Rumble Force or Force Feedback Wheel. 1143 1144config HID_UDRAW_PS3 1145 tristate "THQ PS3 uDraw tablet" 1146 depends on HID 1147 help 1148 Say Y here if you want to use the THQ uDraw gaming tablet for 1149 the PS3. 1150 1151config HID_U2FZERO 1152 tristate "U2F Zero LED and RNG support" 1153 depends on USB_HID 1154 depends on LEDS_CLASS 1155 depends on HW_RANDOM 1156 help 1157 Support for the LED of the U2F Zero device. 1158 1159 U2F Zero supports custom commands for blinking the LED 1160 and getting data from the internal hardware RNG. 1161 The internal hardware can be used to feed the enthropy pool. 1162 1163 U2F Zero only supports blinking its LED, so this driver doesn't 1164 allow setting the brightness to anything but 1, which will 1165 trigger a single blink and immediately reset back to 0. 1166 1167config HID_WACOM 1168 tristate "Wacom Intuos/Graphire tablet support (USB)" 1169 depends on USB_HID 1170 select POWER_SUPPLY 1171 select NEW_LEDS 1172 select LEDS_CLASS 1173 select LEDS_TRIGGERS 1174 help 1175 Say Y here if you want to use the USB or BT version of the Wacom Intuos 1176 or Graphire tablet. 1177 1178 To compile this driver as a module, choose M here: the 1179 module will be called wacom. 1180 1181config HID_WIIMOTE 1182 tristate "Nintendo Wii / Wii U peripherals" 1183 depends on HID 1184 depends on LEDS_CLASS 1185 select POWER_SUPPLY 1186 select INPUT_FF_MEMLESS 1187 help 1188 Support for Nintendo Wii and Wii U Bluetooth peripherals. Supported 1189 devices are the Wii Remote and its extension devices, but also devices 1190 based on the Wii Remote like the Wii U Pro Controller or the 1191 Wii Balance Board. 1192 1193 Support for all official Nintendo extensions is available, however, 3rd 1194 party extensions might not be supported. Please report these devices to: 1195 http://github.com/dvdhrm/xwiimote/issues 1196 1197 Other Nintendo Wii U peripherals that are IEEE 802.11 based (including 1198 the Wii U Gamepad) might be supported in the future. But currently 1199 support is limited to Bluetooth based devices. 1200 1201 If unsure, say N. 1202 1203 To compile this driver as a module, choose M here: the 1204 module will be called hid-wiimote. 1205 1206config HID_XINMO 1207 tristate "Xin-Mo non-fully compliant devices" 1208 depends on HID 1209 help 1210 Support for Xin-Mo devices that are not fully compliant with the HID 1211 standard. Currently only supports the Xin-Mo Dual Arcade. Say Y here 1212 if you have a Xin-Mo Dual Arcade controller. 1213 1214config HID_ZEROPLUS 1215 tristate "Zeroplus based game controller support" 1216 depends on HID 1217 help 1218 Say Y here if you have a Zeroplus based game controller. 1219 1220config ZEROPLUS_FF 1221 bool "Zeroplus based game controller force feedback support" 1222 depends on HID_ZEROPLUS 1223 select INPUT_FF_MEMLESS 1224 help 1225 Say Y here if you have a Zeroplus based game controller and want 1226 to have force feedback support for it. 1227 1228config HID_ZYDACRON 1229 tristate "Zydacron remote control support" 1230 depends on HID 1231 help 1232 Support for Zydacron remote control. 1233 1234config HID_SENSOR_HUB 1235 tristate "HID Sensors framework support" 1236 depends on HID && HAS_IOMEM 1237 select MFD_CORE 1238 default n 1239 help 1240 Support for HID Sensor framework. This creates a MFD instance 1241 for a sensor hub and identifies all the sensors connected to it. 1242 Each sensor is registered as a MFD cell, so that sensor specific 1243 processing can be done in a separate driver. Each sensor 1244 drivers can use the service provided by this driver to register 1245 for events and handle data streams. Each sensor driver can format 1246 data and present to user mode using input or IIO interface. 1247 1248config HID_SENSOR_CUSTOM_SENSOR 1249 tristate "HID Sensors hub custom sensor support" 1250 depends on HID_SENSOR_HUB 1251 default n 1252 help 1253 HID Sensor hub specification allows definition of some custom and 1254 generic sensors. Unlike other HID sensors, they can't be exported 1255 via Linux IIO because of custom fields. This is up to the manufacturer 1256 to decide how to interpret these special sensor ids and process in 1257 the user space. Currently some manufacturers are using these ids for 1258 sensor calibration and debugging other sensors. Manufacturers 1259 shouldn't use these special custom sensor ids to export any of the 1260 standard sensors. 1261 Select this config option for custom/generic sensor support. 1262 1263config HID_ALPS 1264 tristate "Alps HID device support" 1265 depends on HID 1266 help 1267 Support for Alps I2C HID touchpads and StickPointer. 1268 Say Y here if you have a Alps touchpads over i2c-hid or usbhid 1269 and want support for its special functionalities. 1270 1271config HID_MCP2221 1272 tristate "Microchip MCP2221 HID USB-to-I2C/SMbus host support" 1273 depends on USB_HID && I2C 1274 depends on GPIOLIB 1275 help 1276 Provides I2C and SMBUS host adapter functionality over USB-HID 1277 through MCP2221 device. 1278 1279 To compile this driver as a module, choose M here: the module 1280 will be called hid-mcp2221.ko. 1281 1282endmenu 1283 1284endif # HID 1285 1286source "drivers/hid/usbhid/Kconfig" 1287 1288source "drivers/hid/i2c-hid/Kconfig" 1289 1290source "drivers/hid/intel-ish-hid/Kconfig" 1291 1292source "drivers/hid/amd-sfh-hid/Kconfig" 1293 1294source "drivers/hid/surface-hid/Kconfig" 1295 1296endmenu 1297