Kconfig 27 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931
#
# HID driver configuration
#
menu "HID support"
     depends on INPUT

config HID
	tristate "HID bus support"
	depends on INPUT
	default y
	---help---
	  A human interface device (HID) is a type of computer device that
	  interacts directly with and takes input from humans. The term "HID"
	  most commonly used to refer to the USB-HID specification, but other
	  devices (such as, but not strictly limited to, Bluetooth) are
	  designed using HID specification (this involves certain keyboards,
	  mice, tablets, etc). This option adds the HID bus to the kernel,
	  together with generic HID layer code. The HID devices are added and
	  removed from the HID bus by the transport-layer drivers, such as
	  usbhid (USB_HID) and hidp (BT_HIDP).

	  For docs and specs, see http://www.usb.org/developers/hidpage/

	  If unsure, say Y.

if HID

config HID_BATTERY_STRENGTH
	bool "Battery level reporting for HID devices"
	depends on HID
	select POWER_SUPPLY
	default n
	---help---
	This option adds support of reporting battery strength (for HID devices
	that support this feature) through power_supply class so that userspace
	tools, such as upower, can display it.

config HIDRAW
	bool "/dev/hidraw raw HID device support"
	depends on HID
	---help---
	Say Y here if you want to support HID devices (from the USB
	specification standpoint) that aren't strictly user interface
	devices, like monitor controls and Uninterruptable Power Supplies.

	This module supports these devices separately using a separate
	event interface on /dev/hidraw.

	There is also a /dev/hiddev configuration option in the USB HID
	configuration menu. In comparison to hiddev, this device does not process
	the hid events at all (no parsing, no lookups). This lets applications
	to work on raw hid events when they want to, and avoid using transport-specific
	userspace libhid/libusb libraries.

	If unsure, say Y.

config UHID
	tristate "User-space I/O driver support for HID subsystem"
	depends on HID
	default n
	---help---
	Say Y here if you want to provide HID I/O Drivers from user-space.
	This allows to write I/O drivers in user-space and feed the data from
	the device into the kernel. The kernel parses the HID reports, loads the
	corresponding HID Device Driver or provides input devices on top of your
	user-space device.

	This driver cannot be used to parse HID-reports in user-space and write
	special HID-drivers. You should use hidraw for that.
	Instead, this driver allows to write the transport-layer driver in
	user-space like USB-HID and Bluetooth-HID do in kernel-space.

	If unsure, say N.

	To compile this driver as a module, choose M here: the
	module will be called uhid.

config HID_GENERIC
	tristate "Generic HID driver"
	depends on HID
	default HID
	---help---
	Support for generic devices on the HID bus. This includes most
	keyboards and mice, joysticks, tablets and digitizers.

	To compile this driver as a module, choose M here: the module
	will be called hid-generic.

	If unsure, say Y.

menu "Special HID drivers"
	depends on HID

config HID_A4TECH
	tristate "A4 tech mice"
	depends on HID
	default !EXPERT
	---help---
	Support for A4 tech X5 and WOP-35 / Trust 450L mice.

config HID_ACRUX
	tristate "ACRUX game controller support"
	depends on HID
	---help---
	Say Y here if you want to enable support for ACRUX game controllers.

config HID_ACRUX_FF
	bool "ACRUX force feedback support"
	depends on HID_ACRUX
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you want to enable force feedback support for ACRUX
	game controllers.

config HID_APPLE
	tristate "Apple {i,Power,Mac}Books"
	depends on HID
	default !EXPERT
	---help---
	Support for some Apple devices which less or more break
	HID specification.

	Say Y here if you want support for keyboards of	Apple iBooks, PowerBooks,
	MacBooks, MacBook Pros and Apple Aluminum.

config HID_APPLEIR
	tristate "Apple infrared receiver"
	depends on (USB_HID)
	---help---
	Support for Apple infrared remote control. All the Apple computers from
	  2005 onwards include such a port, except the unibody Macbook (2009),
	  and Mac Pros. This receiver is also used in the Apple TV set-top box
	  prior to the 2010 model.

	Say Y here if you want support for Apple infrared remote control.

config HID_AUREAL
	tristate "Aureal"
	depends on HID
	---help---
	Support for Aureal Cy se W-01RN Remote Controller and other Aureal derived remotes.

config HID_BELKIN
	tristate "Belkin Flip KVM and Wireless keyboard"
	depends on HID
	default !EXPERT
	---help---
	Support for Belkin Flip KVM and Wireless keyboard.

config HID_BETOP_FF
	tristate "Betop Production Inc. force feedback support"
	depends on USB_HID
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you want to enable force feedback support for devices by
	BETOP Production Ltd.
	Currently the following devices are known to be supported:
	 - BETOP 2185 PC & BFM MODE

config HID_CHERRY
	tristate "Cherry Cymotion keyboard"
	depends on HID
	default !EXPERT
	---help---
	Support for Cherry Cymotion keyboard.

config HID_CHICONY
	tristate "Chicony Tactical pad"
	depends on HID
	default !EXPERT
	---help---
	Support for Chicony Tactical pad.

config HID_CORSAIR
	tristate "Corsair devices"
	depends on HID && USB && LEDS_CLASS
	---help---
	Support for Corsair devices that are not fully compliant with the
	HID standard.

	Supported devices:
	- Vengeance K90

config HID_PRODIKEYS
	tristate "Prodikeys PC-MIDI Keyboard support"
	depends on HID && SND
	select SND_RAWMIDI
	---help---
	Support for Prodikeys PC-MIDI Keyboard device support.
	Say Y here to enable support for this device.
	- Prodikeys PC-MIDI keyboard.
	  The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI
	  input and one MIDI output. These MIDI jacks appear as
	  a sound "card" in the ALSA sound system.
	  Note: if you say N here, this device will still function as a basic
	  multimedia keyboard, but will lack support for the musical keyboard
	  and some additional multimedia keys.

config HID_CP2112
	tristate "Silicon Labs CP2112 HID USB-to-SMBus Bridge support"
	depends on USB_HID && I2C && GPIOLIB
	---help---
	Support for Silicon Labs CP2112 HID USB to SMBus Master Bridge.
	This is a HID device driver which registers as an i2c adapter
	and gpiochip to expose these functions of the CP2112. The
	customizable USB descriptor fields are exposed as sysfs attributes.

config HID_CYPRESS
	tristate "Cypress mouse and barcode readers"
	depends on HID
	default !EXPERT
	---help---
	Support for cypress mouse and barcode readers.

config HID_DRAGONRISE
	tristate "DragonRise Inc. game controller"
	depends on HID
	---help---
	Say Y here if you have DragonRise Inc. game controllers.
	These might be branded as:
	- Tesun USB-703
	- Media-tech MT1504 "Rogue"
	- DVTech JS19 "Gear"
	- Defender Game Master

config DRAGONRISE_FF
	bool "DragonRise Inc. force feedback"
	depends on HID_DRAGONRISE
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you want to enable force feedback support for DragonRise Inc.
	game controllers.

config HID_EMS_FF
	tristate "EMS Production Inc. force feedback support"
	depends on HID
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you want to enable force feedback support for devices by
	EMS Production Ltd.
	Currently the following devices are known to be supported:
	 - Trio Linker Plus II

config HID_ELECOM
	tristate "ELECOM BM084 bluetooth mouse"
	depends on HID
	---help---
	Support for the ELECOM BM084 (bluetooth mouse).

config HID_ELO
	tristate "ELO USB 4000/4500 touchscreen"
	depends on USB_HID
	---help---
	Support for the ELO USB 4000/4500 touchscreens. Note that this is for
	different devices than those handled by CONFIG_TOUCHSCREEN_USB_ELO.

config HID_EZKEY
	tristate "Ezkey BTC 8193 keyboard"
	depends on HID
	default !EXPERT
	---help---
	Support for Ezkey BTC 8193 keyboard.

config HID_GEMBIRD
	tristate "Gembird Joypad"
	depends on HID
	---help---
	Support for Gembird JPD-DualForce 2.

config HID_GFRM
	tristate "Google Fiber TV Box remote control support"
	depends on HID
	---help---
	Support for Google Fiber TV Box remote controls

config HID_HOLTEK
	tristate "Holtek HID devices"
	depends on USB_HID
	---help---
	Support for Holtek based devices:
	  - Holtek On Line Grip based game controller
	  - Trust GXT 18 Gaming Keyboard
	  - Sharkoon Drakonia / Perixx MX-2000 gaming mice
	  - Tracer Sniper TRM-503 / NOVA Gaming Slider X200 /
	    Zalman ZM-GM1
	  - SHARKOON DarkGlider Gaming mouse
	  - LEETGION Hellion Gaming Mouse

config HOLTEK_FF
	bool "Holtek On Line Grip force feedback support"
	depends on HID_HOLTEK
	select INPUT_FF_MEMLESS
	---help---
	  Say Y here if you have a Holtek On Line Grip based game controller
	  and want to have force feedback support for it.

config HID_GT683R
	tristate "MSI GT68xR LED support"
	depends on LEDS_CLASS && USB_HID
	---help---
	Say Y here if you want to enable support for the three MSI GT68xR LEDs

	This driver support following modes:
	  - Normal: LEDs are fully on when enabled
	  - Audio:  LEDs brightness depends on sound level
	  - Breathing: LEDs brightness varies at human breathing rate

	Currently the following devices are know to be supported:
	  - MSI GT683R

config HID_KEYTOUCH
	tristate "Keytouch HID devices"
	depends on HID
	---help---
	Support for Keytouch HID devices not fully compliant with
	the specification. Currently supported:
		- Keytouch IEC 60945

config HID_KYE
	tristate "KYE/Genius devices"
	depends on HID
	---help---
	Support for KYE/Genius devices not fully compliant with HID standard:
	- Ergo Mouse
	- EasyPen i405X tablet
	- MousePen i608X tablet
	- EasyPen M610X tablet

config HID_UCLOGIC
	tristate "UC-Logic"
	depends on USB_HID
	---help---
	Support for UC-Logic and Huion tablets.

config HID_WALTOP
	tristate "Waltop"
	depends on HID
	---help---
	Support for Waltop tablets.

config HID_GYRATION
	tristate "Gyration remote control"
	depends on HID
	---help---
	Support for Gyration remote control.

config HID_ICADE
	tristate "ION iCade arcade controller"
	depends on HID
	---help---
	Support for the ION iCade arcade controller to work as a joystick.

	To compile this driver as a module, choose M here: the
	module will be called hid-icade.

config HID_TWINHAN
	tristate "Twinhan IR remote control"
	depends on HID
	---help---
	Support for Twinhan IR remote control.

config HID_KENSINGTON
	tristate "Kensington Slimblade Trackball"
	depends on HID
	default !EXPERT
	---help---
	Support for Kensington Slimblade Trackball.

config HID_LCPOWER
	tristate "LC-Power"
	depends on HID
	---help---
	Support for LC-Power RC1000MCE RF remote control.

config HID_LENOVO
	tristate "Lenovo / Thinkpad devices"
	depends on HID
	select NEW_LEDS
	select LEDS_CLASS
	---help---
	Support for Lenovo devices that are not fully compliant with HID standard.

	Say Y if you want support for the non-compliant features of the Lenovo
	Thinkpad standalone keyboards, e.g:
	- ThinkPad USB Keyboard with TrackPoint (supports extra LEDs and trackpoint
	  configuration)
	- ThinkPad Compact Bluetooth Keyboard with TrackPoint (supports Fn keys)
	- ThinkPad Compact USB Keyboard with TrackPoint (supports Fn keys)

config HID_LOGITECH
	tristate "Logitech devices"
	depends on HID
	default !EXPERT
	---help---
	Support for Logitech devices that are not fully compliant with HID standard.

config HID_LOGITECH_DJ
	tristate "Logitech Unifying receivers full support"
	depends on HIDRAW
	depends on HID_LOGITECH
	select HID_LOGITECH_HIDPP
	---help---
	Say Y if you want support for Logitech Unifying receivers and devices.
	Unifying receivers are capable of pairing up to 6 Logitech compliant
	devices to the same receiver. Without this driver it will be handled by
	generic USB_HID driver and all incoming events will be multiplexed
	into a single mouse and a single keyboard device.

config HID_LOGITECH_HIDPP
	tristate "Logitech HID++ devices support"
	depends on HID_LOGITECH
	---help---
	Support for Logitech devices relyingon the HID++ Logitech specification

	Say Y if you want support for Logitech devices relying on the HID++
	specification. Such devices are the various Logitech Touchpads (T650,
	T651, TK820), some mice (Zone Touch mouse), or even keyboards (Solar
	Keyboard).

config LOGITECH_FF
	bool "Logitech force feedback support"
	depends on HID_LOGITECH
	select INPUT_FF_MEMLESS
	help
	  Say Y here if you have one of these devices:
	  - Logitech WingMan Cordless RumblePad
	  - Logitech WingMan Cordless RumblePad 2
	  - Logitech WingMan Force 3D
	  - Logitech Formula Force EX
	  - Logitech WingMan Formula Force GP

	  and if you want to enable force feedback for them.
	  Note: if you say N here, this device will still be supported, but without
	  force feedback.

config LOGIRUMBLEPAD2_FF
	bool "Logitech force feedback support (variant 2)"
	depends on HID_LOGITECH
	select INPUT_FF_MEMLESS
	help
	  Say Y here if you want to enable force feedback support for:
	  - Logitech RumblePad
	  - Logitech Rumblepad 2
	  - Logitech Formula Vibration Feedback Wheel

config LOGIG940_FF
	bool "Logitech Flight System G940 force feedback support"
	depends on HID_LOGITECH
	select INPUT_FF_MEMLESS
	help
	  Say Y here if you want to enable force feedback support for Logitech
	  Flight System G940 devices.

config LOGIWHEELS_FF
	bool "Logitech wheels configuration and force feedback support"
	depends on HID_LOGITECH
	select INPUT_FF_MEMLESS
	default LOGITECH_FF
	help
	  Say Y here if you want to enable force feedback and range setting
	  support for following Logitech wheels:
	  - Logitech Driving Force
	  - Logitech Driving Force Pro
	  - Logitech Driving Force GT
	  - Logitech G25
	  - Logitech G27
	  - Logitech MOMO/MOMO 2
	  - Logitech Formula Force EX

config HID_MAGICMOUSE
	tristate "Apple Magic Mouse/Trackpad multi-touch support"
	depends on HID
	---help---
	Support for the Apple Magic Mouse/Trackpad multi-touch.

	Say Y here if you want support for the multi-touch features of the
	Apple Wireless "Magic" Mouse and the Apple Wireless "Magic" Trackpad.

config HID_MICROSOFT
	tristate "Microsoft non-fully HID-compliant devices"
	depends on HID
	default !EXPERT
	---help---
	Support for Microsoft devices that are not fully compliant with HID standard.

config HID_MONTEREY
	tristate "Monterey Genius KB29E keyboard"
	depends on HID
	default !EXPERT
	---help---
	Support for Monterey Genius KB29E.

config HID_MULTITOUCH
	tristate "HID Multitouch panels"
	depends on HID
	---help---
	  Generic support for HID multitouch panels.

	  Say Y here if you have one of the following devices:
	  - 3M PCT touch screens
	  - ActionStar dual touch panels
	  - Atmel panels
	  - Cando dual touch panels
	  - Chunghwa panels
	  - CJTouch panels
	  - CVTouch panels
	  - Cypress TrueTouch panels
	  - Elan Microelectronics touch panels
	  - Elo TouchSystems IntelliTouch Plus panels
	  - GeneralTouch 'Sensing Win7-TwoFinger' panels
	  - GoodTouch panels
	  - Hanvon dual touch panels
	  - Ilitek dual touch panels
	  - IrTouch Infrared USB panels
	  - LG Display panels (Dell ST2220Tc)
	  - Lumio CrystalTouch panels
	  - MosArt dual-touch panels
	  - Panasonic multitouch panels
	  - PenMount dual touch panels
	  - Perixx Peripad 701 touchpad
	  - PixArt optical touch screen
	  - Pixcir dual touch panels
	  - Quanta panels
	  - eGalax dual-touch panels, including the Joojoo and Wetab tablets
	  - SiS multitouch panels
	  - Stantum multitouch panels
	  - Touch International Panels
	  - Unitec Panels
	  - Wistron optical touch panels
	  - XAT optical touch panels
	  - Xiroku optical touch panels
	  - Zytronic touch panels

	  If unsure, say N.

	  To compile this driver as a module, choose M here: the
	  module will be called hid-multitouch.

config HID_NTRIG
	tristate "N-Trig touch screen"
	depends on USB_HID
	---help---
	Support for N-Trig touch screen.

config HID_ORTEK
	tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad"
	depends on HID
	---help---
	There are certain devices which have LogicalMaximum wrong in the keyboard
	usage page of their report descriptor. The most prevailing ones so far
	are manufactured by Ortek, thus the name of the driver. Currently
	supported devices by this driver are

	   - Ortek PKB-1700
	   - Ortek WKB-2000
	   - Skycable wireless presenter

config HID_PANTHERLORD
	tristate "Pantherlord/GreenAsia game controller"
	depends on HID
	---help---
	  Say Y here if you have a PantherLord/GreenAsia based game controller
	  or adapter.

config PANTHERLORD_FF
	bool "Pantherlord force feedback support"
	depends on HID_PANTHERLORD
	select INPUT_FF_MEMLESS
	---help---
	  Say Y here if you have a PantherLord/GreenAsia based game controller
	  or adapter and want to enable force feedback support for it.

config HID_PENMOUNT
	tristate "Penmount touch device"
	depends on USB_HID
	---help---
	  This selects a driver for the PenMount 6000 touch controller.

	  The driver works around a problem in the report descript allowing
	  the userspace to touch events instead of mouse events.

	  Say Y here if you have a Penmount based touch controller.

config HID_PETALYNX
	tristate "Petalynx Maxter remote control"
	depends on HID
	---help---
	Support for Petalynx Maxter remote control.

config HID_PICOLCD
	tristate "PicoLCD (graphic version)"
	depends on HID
	---help---
	  This provides support for Minibox PicoLCD devices, currently
	  only the graphical ones are supported.

	  This includes support for the following device features:
	  - Keypad
	  - Switching between Firmware and Flash mode
	  - EEProm / Flash access     (via debugfs)
	  Features selectively enabled:
	  - Framebuffer for monochrome 256x64 display
	  - Backlight control
	  - Contrast control
	  - General purpose outputs
	  Features that are not (yet) supported:
	  - IR

config HID_PICOLCD_FB
	bool "Framebuffer support" if EXPERT
	default !EXPERT
	depends on HID_PICOLCD
	depends on HID_PICOLCD=FB || FB=y
	select FB_DEFERRED_IO
	select FB_SYS_FILLRECT
	select FB_SYS_COPYAREA
	select FB_SYS_IMAGEBLIT
	select FB_SYS_FOPS
	---help---
	  Provide access to PicoLCD's 256x64 monochrome display via a
	  framebuffer device.

config HID_PICOLCD_BACKLIGHT
	bool "Backlight control" if EXPERT
	default !EXPERT
	depends on HID_PICOLCD
	depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y
	---help---
	  Provide access to PicoLCD's backlight control via backlight
	  class.

config HID_PICOLCD_LCD
	bool "Contrast control" if EXPERT
	default !EXPERT
	depends on HID_PICOLCD
	depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y
	---help---
	  Provide access to PicoLCD's LCD contrast via lcd class.

config HID_PICOLCD_LEDS
	bool "GPO via leds class" if EXPERT
	default !EXPERT
	depends on HID_PICOLCD
	depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y
	---help---
	  Provide access to PicoLCD's GPO pins via leds class.

config HID_PICOLCD_CIR
	bool "CIR via RC class" if EXPERT
	default !EXPERT
	depends on HID_PICOLCD
	depends on HID_PICOLCD=RC_CORE || RC_CORE=y
	---help---
	  Provide access to PicoLCD's CIR interface via remote control (LIRC).

config HID_PLANTRONICS
	tristate "Plantronics USB HID Driver"
	depends on HID
	---help---
	  Provides HID support for Plantronics USB audio devices.
	  Correctly maps vendor unique volume up/down HID usages to
	  KEY_VOLUMEUP and KEY_VOLUMEDOWN events and prevents core mapping
	  of other vendor unique HID usages to random mouse events.

	  Say M here if you may ever plug in a Plantronics USB audio device.

config HID_PRIMAX
	tristate "Primax non-fully HID-compliant devices"
	depends on HID
	---help---
	Support for Primax devices that are not fully compliant with the
	HID standard.

config HID_ROCCAT
	tristate "Roccat device support"
	depends on USB_HID
	---help---
	Support for Roccat devices.
	Say Y here if you have a Roccat mouse or keyboard and want
	support for its special functionalities.

config HID_SAITEK
	tristate "Saitek (Mad Catz) non-fully HID-compliant devices"
	depends on HID
	---help---
	Support for Saitek devices that are not fully compliant with the
	HID standard.

	Supported devices:
	- PS1000 Dual Analog Pad
	- Saitek R.A.T.7, R.A.T.9, M.M.O.7 Gaming Mice
	- Mad Catz R.A.T.5, R.A.T.9 Gaming Mice

config HID_SAMSUNG
	tristate "Samsung InfraRed remote control or keyboards"
	depends on HID
	---help---
	Support for Samsung InfraRed remote control or keyboards.

config HID_SONY
	tristate "Sony PS2/3/4 accessories"
	depends on USB_HID
	depends on NEW_LEDS
	depends on LEDS_CLASS
	select POWER_SUPPLY
	---help---
	Support for

	  * Sony PS3 6-axis controllers
	  * Sony PS4 DualShock 4 controllers
	  * Buzz controllers
	  * Sony PS3 Blue-ray Disk Remote Control (Bluetooth)
	  * Logitech Harmony adapter for Sony Playstation 3 (Bluetooth)

config SONY_FF
	bool "Sony PS2/3/4 accessories force feedback support" 
	depends on HID_SONY
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you have a Sony PS2/3/4 accessory and want to enable
	force feedback support for it.

config HID_SPEEDLINK
	tristate "Speedlink VAD Cezanne mouse support"
	depends on HID
	---help---
	Support for Speedlink Vicious and Divine Cezanne mouse.

config HID_STEELSERIES
	tristate "Steelseries SRW-S1 steering wheel support"
	depends on HID
	---help---
	Support for Steelseries SRW-S1 steering wheel

config HID_SUNPLUS
	tristate "Sunplus wireless desktop"
	depends on HID
	---help---
	Support for Sunplus wireless desktop.

config HID_RMI
	tristate "Synaptics RMI4 device support"
	depends on HID
	---help---
	Support for Synaptics RMI4 touchpads.
	Say Y here if you have a Synaptics RMI4 touchpads over i2c-hid or usbhid
	and want support for its special functionalities.

config HID_GREENASIA
	tristate "GreenAsia (Product ID 0x12) game controller support"
	depends on HID
	---help---
	  Say Y here if you have a GreenAsia (Product ID 0x12) based game
	  controller or adapter.

config GREENASIA_FF
	bool "GreenAsia (Product ID 0x12) force feedback support"
	depends on HID_GREENASIA
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you have a GreenAsia (Product ID 0x12) based game controller
	(like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter
	and want to enable force feedback support for it.

config HID_HYPERV_MOUSE
	tristate "Microsoft Hyper-V mouse driver"
	depends on HYPERV
	---help---
	Select this option to enable the Hyper-V mouse driver.

config HID_SMARTJOYPLUS
	tristate "SmartJoy PLUS PS2/USB adapter support"
	depends on HID
	---help---
	Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box,
	Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro.

	Note that DDR (Dance Dance Revolution) mode is not supported, nor
	is pressure sensitive buttons on the pro models.

config SMARTJOYPLUS_FF
	bool "SmartJoy PLUS PS2/USB adapter force feedback support"
	depends on HID_SMARTJOYPLUS
	select INPUT_FF_MEMLESS
	---help---
	Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to
	enable force feedback support for it.

config HID_TIVO
	tristate "TiVo Slide Bluetooth remote control support"
	depends on HID
	---help---
	Say Y if you have a TiVo Slide Bluetooth remote control.

config HID_TOPSEED
	tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support"
	depends on HID
	---help---
	Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic
	CLLRCMCE remote control.

config HID_THINGM
	tristate "ThingM blink(1) USB RGB LED"
	depends on HID
	depends on LEDS_CLASS
	---help---
	Support for the ThingM blink(1) USB RGB LED. This driver registers a
	Linux LED class instance, plus additional sysfs attributes to control
	RGB colors, fade time and playing. The device is exposed through hidraw
	to access other functions.

config HID_THRUSTMASTER
	tristate "ThrustMaster devices support"
	depends on HID
	---help---
	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
	  a THRUSTMASTER Ferrari GT Rumble Wheel.

config THRUSTMASTER_FF
	bool "ThrustMaster devices force feedback support"
	depends on HID_THRUSTMASTER
	select INPUT_FF_MEMLESS
	---help---
	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
	  a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
	  Rumble Force or Force Feedback Wheel.

config HID_WACOM
	tristate "Wacom Intuos/Graphire tablet support (USB)"
	depends on HID
	select POWER_SUPPLY
	select NEW_LEDS
	select LEDS_CLASS
	help
	  Say Y here if you want to use the USB or BT version of the Wacom Intuos
	  or Graphire tablet.

	  To compile this driver as a module, choose M here: the
	  module will be called wacom.

config HID_WIIMOTE
	tristate "Nintendo Wii / Wii U peripherals"
	depends on HID
	depends on LEDS_CLASS
	select POWER_SUPPLY
	select INPUT_FF_MEMLESS
	---help---
	Support for Nintendo Wii and Wii U Bluetooth peripherals. Supported
	devices are the Wii Remote and its extension devices, but also devices
	based on the Wii Remote like the Wii U Pro Controller or the
	Wii Balance Board.

	Support for all official Nintendo extensions is available, however, 3rd
	party extensions might not be supported. Please report these devices to:
	  http://github.com/dvdhrm/xwiimote/issues

	Other Nintendo Wii U peripherals that are IEEE 802.11 based (including
	the Wii U Gamepad) might be supported in the future. But currently
	support is limited to Bluetooth based devices.

	If unsure, say N.

	To compile this driver as a module, choose M here: the
	module will be called hid-wiimote.

config HID_XINMO
	tristate "Xin-Mo non-fully compliant devices"
	depends on HID
	---help---
	Support for Xin-Mo devices that are not fully compliant with the HID
	standard. Currently only supports the Xin-Mo Dual Arcade. Say Y here
	if you have a Xin-Mo Dual Arcade controller.

config HID_ZEROPLUS
	tristate "Zeroplus based game controller support"
	depends on HID
	---help---
	  Say Y here if you have a Zeroplus based game controller.

config ZEROPLUS_FF
	bool "Zeroplus based game controller force feedback support"
	depends on HID_ZEROPLUS
	select INPUT_FF_MEMLESS
	---help---
	  Say Y here if you have a Zeroplus based game controller and want
	  to have force feedback support for it.

config HID_ZYDACRON
	tristate "Zydacron remote control support"
	depends on HID
	---help---
	Support for Zydacron remote control.

config HID_SENSOR_HUB
	tristate "HID Sensors framework support"
	depends on HID && HAS_IOMEM
	select MFD_CORE
	default n
	---help---
	  Support for HID Sensor framework. This creates a MFD instance
	  for a sensor hub and identifies all the sensors connected to it.
	  Each sensor is registered as a MFD cell, so that sensor specific
	  processing can be done in a separate driver. Each sensor
	  drivers can use the service provided by this driver to register
	  for events and handle data streams. Each sensor driver can format
	  data and present to user mode using input or IIO interface.

config HID_SENSOR_CUSTOM_SENSOR
	tristate "HID Sensors hub custom sensor support"
	depends on HID_SENSOR_HUB
	default n
	---help---
	  HID Sensor hub specification allows definition of some custom and
	  generic sensors. Unlike other HID sensors, they can't be exported
	  via Linux IIO because of custom fields. This is up to the manufacturer
	  to decide how to interpret these special sensor ids and process in
	  the user space. Currently some manufacturers are using these ids for
	  sensor calibration and debugging other sensors. Manufacturers
	  should't use these special custom sensor ids to export any of the
	  standard sensors.
	  Select this config option for custom/generic sensor support.

endmenu

endif # HID

source "drivers/hid/usbhid/Kconfig"

source "drivers/hid/i2c-hid/Kconfig"

endmenu