forked from luck/tmp_suning_uos_patched
01e88f2598
Older ThinkPad models do not export some of the hot keys over the event-based ACPI hot key interface. For these models, one has to poll the CMOS NVRAM to check the key state at a rate faster than the expected rate at which the user might repeatedly press the same hot key. This patch implements this functionality for many of the hotkeys in a transparent way: hot keys will now Just Work, and the driver knows the best approach (events or NVRAM polling) to employ, based on the HKEY.MHKA ACPI method. Also, the driver can turn off the polling when there are no users for the hot keys that need such polling. The NVRAM-based hot keys of the A3x series that have never been implemented by later models are not supported, to avoid changes in the keymap of the input devices that could cause headaches in the future. There is a Kconfig option to avoid compiling the NVRAM polling code, as it is not very small, and unlikely to be useful on any ThinkPad newer than a T40, X31 or R52. This feature is based on a previous effort by Richard Hughes. Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br> Cc: Richard Hughes <hughsient@gmail.com> Signed-off-by: Len Brown <len.brown@intel.com>
255 lines
8.4 KiB
Plaintext
255 lines
8.4 KiB
Plaintext
#
|
|
# Misc strange devices
|
|
#
|
|
|
|
menuconfig MISC_DEVICES
|
|
bool "Misc devices"
|
|
default y
|
|
---help---
|
|
Say Y here to get to see options for device drivers from various
|
|
different categories. This option alone does not add any kernel code.
|
|
|
|
If you say N, all options in this submenu will be skipped and disabled.
|
|
|
|
if MISC_DEVICES
|
|
|
|
config IBM_ASM
|
|
tristate "Device driver for IBM RSA service processor"
|
|
depends on X86 && PCI && INPUT && EXPERIMENTAL
|
|
---help---
|
|
This option enables device driver support for in-band access to the
|
|
IBM RSA (Condor) service processor in eServer xSeries systems.
|
|
The ibmasm device driver allows user space application to access
|
|
ASM (Advanced Systems Management) functions on the service
|
|
processor. The driver is meant to be used in conjunction with
|
|
a user space API.
|
|
The ibmasm driver also enables the OS to use the UART on the
|
|
service processor board as a regular serial port. To make use of
|
|
this feature serial driver support (CONFIG_SERIAL_8250) must be
|
|
enabled.
|
|
|
|
WARNING: This software may not be supported or function
|
|
correctly on your IBM server. Please consult the IBM ServerProven
|
|
website <http://www.pc.ibm.com/ww/eserver/xseries/serverproven> for
|
|
information on the specific driver level and support statement
|
|
for your IBM server.
|
|
|
|
config PHANTOM
|
|
tristate "Sensable PHANToM"
|
|
depends on PCI
|
|
help
|
|
Say Y here if you want to build a driver for Sensable PHANToM device.
|
|
|
|
If you choose to build module, its name will be phantom. If unsure,
|
|
say N here.
|
|
|
|
config EEPROM_93CX6
|
|
tristate "EEPROM 93CX6 support"
|
|
---help---
|
|
This is a driver for the EEPROM chipsets 93c46 and 93c66.
|
|
The driver supports both read as well as write commands.
|
|
|
|
If unsure, say N.
|
|
|
|
config SGI_IOC4
|
|
tristate "SGI IOC4 Base IO support"
|
|
depends on PCI
|
|
---help---
|
|
This option enables basic support for the IOC4 chip on certain
|
|
SGI IO controller cards (IO9, IO10, and PCI-RT). This option
|
|
does not enable any specific functions on such a card, but provides
|
|
necessary infrastructure for other drivers to utilize.
|
|
|
|
If you have an SGI Altix with an IOC4-based card say Y.
|
|
Otherwise say N.
|
|
|
|
config TIFM_CORE
|
|
tristate "TI Flash Media interface support (EXPERIMENTAL)"
|
|
depends on EXPERIMENTAL && PCI
|
|
help
|
|
If you want support for Texas Instruments(R) Flash Media adapters
|
|
you should select this option and then also choose an appropriate
|
|
host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter
|
|
support', if you have a TI PCI74xx compatible card reader, for
|
|
example.
|
|
You will also have to select some flash card format drivers. MMC/SD
|
|
cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD
|
|
Interface support (MMC_TIFM_SD)'.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called tifm_core.
|
|
|
|
config TIFM_7XX1
|
|
tristate "TI Flash Media PCI74xx/PCI76xx host adapter support (EXPERIMENTAL)"
|
|
depends on PCI && TIFM_CORE && EXPERIMENTAL
|
|
default TIFM_CORE
|
|
help
|
|
This option enables support for Texas Instruments(R) PCI74xx and
|
|
PCI76xx families of Flash Media adapters, found in many laptops.
|
|
To make actual use of the device, you will have to select some
|
|
flash card format drivers, as outlined in the TIFM_CORE Help.
|
|
|
|
To compile this driver as a module, choose M here: the module will
|
|
be called tifm_7xx1.
|
|
|
|
config ASUS_LAPTOP
|
|
tristate "Asus Laptop Extras (EXPERIMENTAL)"
|
|
depends on X86
|
|
depends on ACPI
|
|
depends on EXPERIMENTAL && !ACPI_ASUS
|
|
depends on LEDS_CLASS
|
|
depends on BACKLIGHT_CLASS_DEVICE
|
|
---help---
|
|
This is the new Linux driver for Asus laptops. It may also support some
|
|
MEDION, JVC or VICTOR laptops. It makes all the extra buttons generate
|
|
standard ACPI events that go through /proc/acpi/events. It also adds
|
|
support for video output switching, LCD backlight control, Bluetooth and
|
|
Wlan control, and most importantly, allows you to blink those fancy LEDs.
|
|
|
|
For more information and a userspace daemon for handling the extra
|
|
buttons see <http://acpi4asus.sf.net/>.
|
|
|
|
If you have an ACPI-compatible ASUS laptop, say Y or M here.
|
|
|
|
config FUJITSU_LAPTOP
|
|
tristate "Fujitsu Laptop Extras"
|
|
depends on X86
|
|
depends on ACPI
|
|
depends on BACKLIGHT_CLASS_DEVICE
|
|
---help---
|
|
This is a driver for laptops built by Fujitsu:
|
|
|
|
* P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
|
|
* Possibly other Fujitsu laptop models
|
|
|
|
It adds support for LCD brightness control.
|
|
|
|
If you have a Fujitsu laptop, say Y or M here.
|
|
|
|
config MSI_LAPTOP
|
|
tristate "MSI Laptop Extras"
|
|
depends on X86
|
|
depends on ACPI_EC
|
|
depends on BACKLIGHT_CLASS_DEVICE
|
|
---help---
|
|
This is a driver for laptops built by MSI (MICRO-STAR
|
|
INTERNATIONAL):
|
|
|
|
MSI MegaBook S270 (MS-1013)
|
|
Cytron/TCM/Medion/Tchibo MD96100/SAM2000
|
|
|
|
It adds support for Bluetooth, WLAN and LCD brightness control.
|
|
|
|
More information about this driver is available at
|
|
<http://0pointer.de/lennart/tchibo.html>.
|
|
|
|
If you have an MSI S270 laptop, say Y or M here.
|
|
|
|
config SONY_LAPTOP
|
|
tristate "Sony Laptop Extras"
|
|
depends on X86 && ACPI
|
|
select BACKLIGHT_CLASS_DEVICE
|
|
depends on INPUT
|
|
---help---
|
|
This mini-driver drives the SNC and SPIC devices present in the ACPI
|
|
BIOS of the Sony Vaio laptops.
|
|
|
|
It gives access to some extra laptop functionalities like Bluetooth,
|
|
screen brightness control, Fn keys and allows powering on/off some
|
|
devices.
|
|
|
|
Read <file:Documentation/sony-laptop.txt> for more information.
|
|
|
|
config SONYPI_COMPAT
|
|
bool "Sonypi compatibility"
|
|
depends on SONY_LAPTOP
|
|
---help---
|
|
Build the sonypi driver compatibility code into the sony-laptop driver.
|
|
|
|
config THINKPAD_ACPI
|
|
tristate "ThinkPad ACPI Laptop Extras"
|
|
depends on X86 && ACPI
|
|
select BACKLIGHT_CLASS_DEVICE
|
|
select HWMON
|
|
select NVRAM
|
|
depends on INPUT
|
|
---help---
|
|
This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
|
|
support for Fn-Fx key combinations, Bluetooth control, video
|
|
output switching, ThinkLight control, UltraBay eject and more.
|
|
For more information about this driver see
|
|
<file:Documentation/thinkpad-acpi.txt> and <http://ibm-acpi.sf.net/> .
|
|
|
|
This driver was formerly known as ibm-acpi.
|
|
|
|
If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
|
|
|
|
config THINKPAD_ACPI_DEBUG
|
|
bool "Verbose debug mode"
|
|
depends on THINKPAD_ACPI
|
|
default n
|
|
---help---
|
|
Enables extra debugging information, at the expense of a slightly
|
|
increase in driver size.
|
|
|
|
If you are not sure, say N here.
|
|
|
|
config THINKPAD_ACPI_DOCK
|
|
bool "Legacy Docking Station Support"
|
|
depends on THINKPAD_ACPI
|
|
depends on ACPI_DOCK=n
|
|
default n
|
|
---help---
|
|
Allows the thinkpad_acpi driver to handle docking station events.
|
|
This support was made obsolete by the generic ACPI docking station
|
|
support (CONFIG_ACPI_DOCK). It will allow locking and removing the
|
|
laptop from the docking station, but will not properly connect PCI
|
|
devices.
|
|
|
|
If you are not sure, say N here.
|
|
|
|
config THINKPAD_ACPI_BAY
|
|
bool "Legacy Removable Bay Support"
|
|
depends on THINKPAD_ACPI
|
|
default y
|
|
---help---
|
|
Allows the thinkpad_acpi driver to handle removable bays. It will
|
|
electrically disable the device in the bay, and also generate
|
|
notifications when the bay lever is ejected or inserted.
|
|
|
|
If you are not sure, say Y here.
|
|
|
|
config THINKPAD_ACPI_HOTKEY_POLL
|
|
bool "Suport NVRAM polling for hot keys"
|
|
depends on THINKPAD_ACPI
|
|
default y
|
|
---help---
|
|
Some thinkpad models benefit from NVRAM polling to detect a few of
|
|
the hot key press events. If you know your ThinkPad model does not
|
|
need to do NVRAM polling to support any of the hot keys you use,
|
|
unselecting this option will save about 1kB of memory.
|
|
|
|
ThinkPads T40 and newer, R52 and newer, and X31 and newer are
|
|
unlikely to need NVRAM polling in their latest BIOS versions.
|
|
|
|
NVRAM polling can detect at most the following keys: ThinkPad/Access
|
|
IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
|
|
Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
|
|
|
|
If you are not sure, say Y here. The driver enables polling only if
|
|
it is strictly necessary to do so.
|
|
|
|
config ATMEL_SSC
|
|
tristate "Device driver for Atmel SSC peripheral"
|
|
depends on AVR32 || ARCH_AT91
|
|
---help---
|
|
This option enables device driver support for Atmel Syncronized
|
|
Serial Communication peripheral (SSC).
|
|
|
|
The SSC peripheral supports a wide variety of serial frame based
|
|
communications, i.e. I2S, SPI, etc.
|
|
|
|
If unsure, say N.
|
|
|
|
endif # MISC_DEVICES
|