linux_dsm_epyc7002/drivers/platform/x86
Pali Rohár 02b2aaaa57 platform: x86: dell-laptop: Add support for keyboard backlight
This patch adds support for configuring keyboard backlight settings on supported
Dell laptops. It exports kernel leds interface and uses Dell SMBIOS tokens or
keyboard class interface.

With this patch it is possible to set:
* keyboard backlight level
* timeout after which will be backlight automatically turned off
* input activity triggers (keyboard, touchpad, mouse) which enable backlight
* ambient light settings

Settings are exported via sysfs:
/sys/class/leds/dell::kbd_backlight/

Code is based on newly released documentation by Dell in libsmbios project.

Thanks to Dan Carpenter who reported bug about unpredictable results in
quirks->kbd_timeouts for loop. His fix adds needs_kbd_timeouts flag to
quirk structure to indicate if kbd_timeouts array is empty or not.

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
Signed-off-by: Gabriele Mazzotta <gabriele.mzt@gmail.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Minor English corrections to comments.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
2014-12-03 10:10:18 -08:00
..
acer-wmi.c acer-wmi: Add acpi_backlight=video quirk for the Acer KAV80 2014-10-27 21:45:13 -07:00
acerhdf.c Drivers: platform: x86: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
alienware-wmi.c alienware-wmi: make hdmi_mux enabled on case-by-case basis 2014-08-16 01:23:55 -07:00
amilo-rfkill.c amilo-rfkill: Enable using amilo-rfkill with the FSC Amilo L1310. 2013-09-05 08:52:12 -04:00
apple-gmux.c More ACPI and power management updates for 3.13-rc1 2013-11-20 13:25:04 -08:00
asus-laptop.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
asus-nb-wmi.c asus-nb-wmi: Add another wapf=4 quirk 2014-12-03 10:10:13 -08:00
asus-wmi.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
asus-wmi.h asus-wmi: always report brightness key events 2013-02-27 08:30:37 -05:00
classmate-laptop.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
compal-laptop.c compal-laptop: correct invalid hwmon name 2014-08-16 01:23:55 -07:00
dell-laptop.c platform: x86: dell-laptop: Add support for keyboard backlight 2014-12-03 10:10:18 -08:00
dell-smo8800.c platform: x86: dell-smo8800: Dell Latitude freefall driver (ACPI SMO8800/SMO8810) 2014-06-10 19:11:10 -04:00
dell-wmi-aio.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
dell-wmi.c dell-wmi: Don't report keypresses on keybord illumination change 2014-12-03 10:10:16 -08:00
eeepc-laptop.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
eeepc-wmi.c eeepc-wmi: Constify asus_quirks[] DMI table 2014-08-16 01:23:52 -07:00
fujitsu-laptop.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
fujitsu-tablet.c fujitsu-tablet: Mark DMI callbacks as __init code 2014-08-16 01:23:52 -07:00
hdaps.c platform / x86 / PM: Fix unused function warnings for CONFIG_PM_SLEEP 2012-08-10 14:29:43 +02:00
hp_accel.c hp_accel: Add support for HP ZBook 15 2014-12-03 10:10:12 -08:00
hp-wireless.c hp_wireless: Inform the user if hp_wireless_input_setup()/add() fails 2014-12-03 10:10:15 -08:00
hp-wmi.c hp-wmi: Add missing __init annotations to initialization code 2014-08-16 01:23:53 -07:00
ibm_rtl.c efi: Make 'efi_enabled' a function to query EFI facilities 2013-01-30 11:51:59 -08:00
ideapad-laptop.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
intel_ips.c intel_ips: fix a comment typo 2014-11-19 09:07:08 -08:00
intel_ips.h drm/i915, intel_ips: When i915 loads after IPS, make IPS relink to i915. 2010-12-23 09:51:36 +00:00
intel_menlow.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
intel_mid_powerbtn.c platform:x86: Remove OOM message after input_allocate_device 2013-11-20 18:51:03 -05:00
intel_mid_thermal.c ix86/mid/thermal: Introduce the use of the managed version of kzalloc 2014-06-10 19:11:07 -04:00
intel_oaktrail.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
intel_pmic_gpio.c driver:gpio remove all usage of gpio_remove retval in driver 2014-09-18 11:03:10 -07:00
intel_scu_ipc.c PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
intel_scu_ipcutil.c intel_scu_ipc: Remove Moorestown support 2012-03-20 12:02:02 -04:00
intel-rst.c intel-rst: Clean up ACPI add function 2014-09-17 13:55:54 -07:00
intel-smartconnect.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
Kconfig platform: hp_accel: Add SERIO_I8042 as a dependency since it now includes i8042.h/serio.h 2014-11-10 21:16:15 -08:00
Makefile platform/x86: Enable build support for toshiba_haps 2014-08-16 01:23:56 -07:00
msi-laptop.c drivers: platform: change 0x20 to I8042_STR_AUXDATA in i8042 filters 2014-11-19 09:07:07 -08:00
msi-wmi.c platform: x86: Deletion of checks before backlight_device_unregister() 2014-12-03 10:10:14 -08:00
mxm-wmi.c Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 2014-01-29 18:54:05 -08:00
panasonic-laptop.c Fix sleep / suspend keys for Toughbook CF-51 2014-04-06 12:58:11 -04:00
pvpanic.c pvpanic: Set high notifier priority 2014-06-09 17:45:36 -04:00
samsung-laptop.c samsung-laptop: Add broken-acpi-video quirk for NC210/NC110 2014-10-27 21:45:12 -07:00
samsung-q10.c backlight: Remove trivial get_brightness implementations 2014-06-23 13:24:22 +01:00
sony-laptop.c Sony-laptop: Deletion of an unnecessary check before the function call "pci_dev_put" 2014-12-03 10:10:14 -08:00
tc1100-wmi.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
thinkpad_acpi.c thinkpad_acpi: replace strnicmp with strncasecmp 2014-10-14 02:18:25 +02:00
topstar-laptop.c platform:x86: Remove OOM message after input_allocate_device 2013-11-20 18:51:03 -05:00
toshiba_acpi.c toshiba_acpi: Add keyboard backlight mode change event 2014-12-03 10:10:18 -08:00
toshiba_bluetooth.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
toshiba_haps.c platform/x86: Toshiba HDD Active Protection Sensor 2014-08-16 01:23:56 -07:00
wmi.c WMI: Remove unnecessary null test 2014-08-16 01:23:51 -07:00
xo1-rfkill.c Drivers: platform: x86: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
xo15-ebook.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00