[GIT PULL] platform-drivers-x86 for 4.12-1

From: Darren Hart
Date: Wed May 03 2017 - 16:48:09 EST


Hi Linus,

The following changes since commit 97da3854c526d3a6ee05c849c96e48d21527606c:

Linux 4.11-rc3 (2017-03-19 19:09:39 -0700)

are available in the git repository at:

git://git.infradead.org/linux-platform-drivers-x86.git tags/platform-drivers-x86-v4.12-1

for you to fetch changes up to 6df97f85611cafc3ba9c093931a5fa3bc7dea897:

platform/x86: Make SILEAD_DMI depend on TOUCHSCREEN_SILEAD (2017-04-28 15:46:25 -0700)

Thanks,

Darren Hart
VMware Open Source Technology Center

----------------------------------------------------------------
platform-drivers-x86 for v4.12-1

This pull requests represents a significantly larger and more complex set of
changes than those of prior merge windows. In particular, we had several changes
with dependencies on other subsystems which we felt were best managed through
merges of immutable branches, including one each from input, i2c, and leds. Two
patches for the watchdog subsystem are included after discussion with Wim and
Guenter following a collision in linux-next (this should be resolved and you
should only see these two appear in this pull request). These are called out in
the "External" section below.

Summary of changes:
- significant further cleanup of fujitsu-laptop and hp-wmi
- new model support for ideapad, asus, silead, and xiaomi
- new hotkeys for thinkpad and models using intel-vbtn
- dell keyboard backlight improvements
- build and dependency improvements
- intel * ipc fixes, cleanups, and api updates
- single isolated fixes noted below

External:
- watchdog: iTCO_wdt: Add PMC specific noreboot update api
- watchdog: iTCO_wdt: cleanup set/unset no_reboot_bit functions
- Merge branch 'ib/4.10-sparse-keymap-managed'
- Merge branch 'i2c/for-INT33FE'
- Merge branch 'linux-leds/dell-laptop-changes-for-4.12'

platform/x86:
- Add Intel Cherry Trail ACPI INT33FE device driver
- remove sparse_keymap_free() calls
- Make SILEAD_DMI depend on TOUCHSCREEN_SILEAD

asus-wmi:
- try to set als by default
- fix cpufv sysfs file permission

acer-wmi:
- setup accelerometer when ACPI device was found

ideapad-laptop:
- Add IdeaPad V310-15ISK to no_hw_rfkill
- Add IdeaPad 310-15IKB to no_hw_rfkill

intel_pmc_ipc:
- use gcr mem base for S0ix counter read
- Fix iTCO_wdt GCS memory mapping failure
- Add pmc gcr read/write/update api's
- fix gcr offset

dell-laptop:
- Add keyboard backlight timeout AC settings
- Handle return error form dell_get_intensity.
- Protect kbd_state against races
- Refactor kbd_led_triggers_store()

hp-wireless:
- reuse module_acpi_driver
- add Xiaomi's hardware id to the supported list

intel-vbtn:
- add volume up and down

INT33FE:
- add i2c dependency

hp-wmi:
- Cleanup exit paths
- Do not shadow errors in sysfs show functions
- Use DEVICE_ATTR_(RO|RW) helper macros
- Refactor dock and tablet state fetchers
- Cleanup wireless get_(hw|sw)state functions
- Refactor redundant HPWMI_READ functions
- Standardize enum usage for constants
- Cleanup local variable declarations
- Do not shadow error values
- Fix detection for dock and tablet mode
- Fix error value for hp_wmi_tablet_state

fujitsu-laptop:
- simplify error handling in acpi_fujitsu_laptop_add()
- do not log LED registration failures
- switch to managed LED class devices
- reorganize LED-related code
- refactor LED registration
- select LEDS_CLASS
- remove redundant fields from struct fujitsu_bl
- account for backlight power when determining brightness
- do not log set_lcd_level() failures in bl_update_status()
- ignore errors when setting backlight power
- make disable_brightness_adjust a boolean
- clean up use_alt_lcd_levels handling
- sync brightness in set_lcd_level()
- simplify set_lcd_level()
- merge set_lcd_level_alt() into set_lcd_level()
- switch to a managed backlight device
- only handle backlight when appropriate
- update debug message logged by call_fext_func()
- rename call_fext_func() arguments
- simplify call_fext_func()
- clean up local variables in call_fext_func()
- remove keycode fields from struct fujitsu_bl
- model-dependent sparse keymap overrides
- use a sparse keymap for hotkey event generation
- switch to a managed hotkey input device
- refactor hotkey input device setup
- use a sparse keymap for brightness key events
- switch to a managed backlight input device
- refactor backlight input device setup
- remove pf_device field from struct fujitsu_bl
- only register platform device if FUJ02E3 is present
- add and remove platform device in separate functions
- simplify platform device attribute definitions
- remove backlight-related attributes from the platform device
- cleanup error labels in fujitsu_init()
- only register backlight device if FUJ02B1 is present
- sync backlight power status in acpi_fujitsu_laptop_add()
- register backlight device in a separate function
- simplify brightness key event generation logic
- decrease indentation in acpi_fujitsu_bl_notify()

intel-hid:
- Add missing ->thaw callback
- do not set parents of input devices explicitly
- remove redundant set_bit() call
- use devm_input_allocate_device() for HID events input device
- make intel_hid_set_enable() take a boolean argument
- simplify enabling/disabling HID events

silead_dmi:
- Add touchscreen info for Surftab Wintron 7.0
- Abort early if DMI does not match
- Do not treat all devices as i2c_clients
- Add entry for Insyde 7W tablets
- Constify properties arrays

intel_scu_ipc:
- Introduce intel_scu_ipc_raw_command()
- Introduce SCU_DEVICE() macro
- Remove redundant subarch check
- Rearrange init sequence
- Platform data is mandatory

asus-nb-wmi:
- Add wapf4 quirk for the X302UA

dell-*:
- Call new led hw_changed API on kbd brightness change
- Add a generic dell-laptop notifier chain

eeepc-laptop:
- Skip unknown key messages 0x50 0x51

thinkpad_acpi:
- add mapping for new hotkeys
- guard generic hotkey case

----------------------------------------------------------------
Alex Hung (1):
platform/x86: hp-wireless: add Xiaomi's hardware id to the supported list

Andy Shevchenko (7):
platform/x86: intel_scu_ipc: Platform data is mandatory
platform/x86: intel_scu_ipc: Rearrange init sequence
platform/x86: intel_scu_ipc: Remove redundant subarch check
platform/x86: intel_scu_ipc: Introduce SCU_DEVICE() macro
platform/x86: intel_scu_ipc: Introduce intel_scu_ipc_raw_command()
platform/x86: hp-wireless: reuse module_acpi_driver
platform/x86: ideapad-laptop: Add IdeaPad V310-15ISK to no_hw_rfkill

Arvind Yadav (1):
platform/x86: dell-laptop: Handle return error form dell_get_intensity.

Carlo Caione (3):
platform/x86: hp-wmi: Fix error value for hp_wmi_tablet_state
platform/x86: hp-wmi: Fix detection for dock and tablet mode
platform/x86: hp-wmi: Do not shadow error values

Christian Kellner (2):
platform/x86: thinkpad_acpi: guard generic hotkey case
platform/x86: thinkpad_acpi: add mapping for new hotkeys

Darren Hart (2):
Merge branch 'ib/4.10-sparse-keymap-managed' of git://git.kernel.org/.../dtor/input into testing
Merge branch 'linux-leds/dell-laptop-changes-for-4.12'

Darren Hart (VMware) (10):
Merge branch 'i2c/for-INT33FE'
platform/x86: hp-wmi: Cleanup local variable declarations
platform/x86: hp-wmi: Standardize enum usage for constants
platform/x86: hp-wmi: Refactor redundant HPWMI_READ functions
platform/x86: hp-wmi: Cleanup wireless get_(hw|sw)state functions
platform/x86: hp-wmi: Refactor dock and tablet state fetchers
platform/x86: hp-wmi: Use DEVICE_ATTR_(RO|RW) helper macros
platform/x86: hp-wmi: Do not shadow errors in sysfs show functions
platform/x86: hp-wmi: Cleanup exit paths
platform/x86: Make SILEAD_DMI depend on TOUCHSCREEN_SILEAD

Dmitry Torokhov (2):
platform/x86: silead_dmi - do not treat all devices as i2c_clients
platform/x86: silead_dmi - abort early if DMI does not match

Hans de Goede (11):
platform/x86: dell-*: Add a generic dell-laptop notifier chain
platform/x86: dell-laptop: Refactor kbd_led_triggers_store()
platform/x86: dell-laptop: Protect kbd_state against races
platform/x86: dell-*: Call new led hw_changed API on kbd brightness change
platform/x86: silead_dmi: Constify properties arrays
platform/x86: silead_dmi: Add entry for Insyde 7W tablets
platform/x86: silead_dmi: Add touchscreen info for Surftab Wintron 7.0
i2c: core: Allow getting ACPI info by index
i2c: core: Add new i2c_acpi_new_device helper function
i2c: core: Allow drivers to disable i2c-core irq mapping
platform/x86: Add Intel Cherry Trail ACPI INT33FE device driver

JÃrÃmy Lefaure (1):
platform/x86: asus-wmi: fix cpufv sysfs file permission

Kuppuswamy Sathyanarayanan (6):
platform/x86: intel_pmc_ipc: fix gcr offset
platform/x86: intel_pmc_ipc: Add pmc gcr read/write/update api's
watchdog: iTCO_wdt: cleanup set/unset no_reboot_bit functions
watchdog: iTCO_wdt: Add PMC specific noreboot update api
platform/x86: intel_pmc_ipc: Fix iTCO_wdt GCS memory mapping failure
platform/x86: intel_pmc_ipc: use gcr mem base for S0ix counter read

Lee, Chun-Yi (1):
platform/x86: acer-wmi: setup accelerometer when ACPI device was found

Maarten Maathuis (1):
platform/x86: intel-vbtn: add volume up and down

MichaÅ KÄpieÅ (60):
Input: sparse-keymap - use a managed allocation for keymap copy
platform/x86: intel-hid: simplify enabling/disabling HID events
platform/x86: intel-hid: make intel_hid_set_enable() take a boolean argument
platform/x86: intel-hid: use devm_input_allocate_device() for HID events input device
platform/x86: intel-hid: remove redundant set_bit() call
platform/x86: fujitsu-laptop: decrease indentation in acpi_fujitsu_bl_notify()
platform/x86: fujitsu-laptop: simplify brightness key event generation logic
platform/x86: fujitsu-laptop: register backlight device in a separate function
platform/x86: fujitsu-laptop: sync backlight power status in acpi_fujitsu_laptop_add()
platform/x86: fujitsu-laptop: only register backlight device if FUJ02B1 is present
platform/x86: fujitsu-laptop: cleanup error labels in fujitsu_init()
platform/x86: acer-wmi: remove sparse_keymap_free() calls
platform/x86: asus-laptop: remove sparse_keymap_free() calls
platform/x86: asus-wmi: remove sparse_keymap_free() calls
platform/x86: dell-wmi-aio: remove sparse_keymap_free() calls
platform/x86: dell-wmi: remove sparse_keymap_free() calls
platform/x86: eeepc-laptop: remove sparse_keymap_free() calls
platform/x86: hp-wmi: remove sparse_keymap_free() calls
platform/x86: ideapad-laptop: remove sparse_keymap_free() calls
platform/x86: msi-laptop: remove sparse_keymap_free() calls
platform/x86: msi-wmi: remove sparse_keymap_free() calls
platform/x86: panasonic-laptop: remove sparse_keymap_free() calls
platform/x86: topstar-laptop: remove sparse_keymap_free() calls
platform/x86: toshiba-wmi: remove sparse_keymap_free() calls
platform/x86: toshiba_acpi: remove sparse_keymap_free() calls
platform/x86: intel-hid: do not set parents of input devices explicitly
platform/x86: fujitsu-laptop: remove backlight-related attributes from the platform device
platform/x86: fujitsu-laptop: simplify platform device attribute definitions
platform/x86: fujitsu-laptop: add and remove platform device in separate functions
platform/x86: fujitsu-laptop: only register platform device if FUJ02E3 is present
platform/x86: fujitsu-laptop: remove pf_device field from struct fujitsu_bl
platform/x86: fujitsu-laptop: refactor backlight input device setup
platform/x86: fujitsu-laptop: switch to a managed backlight input device
platform/x86: fujitsu-laptop: use a sparse keymap for brightness key events
platform/x86: fujitsu-laptop: refactor hotkey input device setup
platform/x86: fujitsu-laptop: switch to a managed hotkey input device
platform/x86: fujitsu-laptop: use a sparse keymap for hotkey event generation
platform/x86: fujitsu-laptop: model-dependent sparse keymap overrides
platform/x86: fujitsu-laptop: remove keycode fields from struct fujitsu_bl
platform/x86: fujitsu-laptop: clean up local variables in call_fext_func()
platform/x86: fujitsu-laptop: simplify call_fext_func()
platform/x86: fujitsu-laptop: rename call_fext_func() arguments
platform/x86: fujitsu-laptop: update debug message logged by call_fext_func()
platform/x86: fujitsu-laptop: only handle backlight when appropriate
platform/x86: fujitsu-laptop: switch to a managed backlight device
platform/x86: fujitsu-laptop: merge set_lcd_level_alt() into set_lcd_level()
platform/x86: fujitsu-laptop: simplify set_lcd_level()
platform/x86: fujitsu-laptop: sync brightness in set_lcd_level()
platform/x86: fujitsu-laptop: clean up use_alt_lcd_levels handling
platform/x86: fujitsu-laptop: make disable_brightness_adjust a boolean
platform/x86: fujitsu-laptop: ignore errors when setting backlight power
platform/x86: fujitsu-laptop: do not log set_lcd_level() failures in bl_update_status()
platform/x86: fujitsu-laptop: account for backlight power when determining brightness
platform/x86: fujitsu-laptop: remove redundant fields from struct fujitsu_bl
platform/x86: fujitsu-laptop: select LEDS_CLASS
platform/x86: fujitsu-laptop: refactor LED registration
platform/x86: fujitsu-laptop: reorganize LED-related code
platform/x86: fujitsu-laptop: switch to managed LED class devices
platform/x86: fujitsu-laptop: do not log LED registration failures
platform/x86: fujitsu-laptop: simplify error handling in acpi_fujitsu_laptop_add()

Oleksij Rempel (1):
platform/x86: asus-wmi: try to set als by default

Pali RohÃr (1):
platform/x86: dell-laptop: Add keyboard backlight timeout AC settings

Pau Espin Pedrol (1):
platform/x86: eeepc-laptop: Skip unknown key messages 0x50 0x51

Rafael J. Wysocki (1):
platform/x86: intel-hid: Add missing ->thaw callback

Santeri Toivonen (1):
platform/x86: asus-nb-wmi: Add wapf4 quirk for the X302UA

Sven Rebhan (1):
platform/x86: ideapad-laptop: Add IdeaPad 310-15IKB to no_hw_rfkill

Tobias Regnery (1):
platform/x86: INT33FE: add i2c dependency

arch/x86/include/asm/intel_pmc_ipc.h | 23 +
arch/x86/include/asm/intel_scu_ipc.h | 8 +-
drivers/i2c/i2c-core.c | 62 +-
drivers/input/sparse-keymap.c | 39 +-
drivers/leds/Kconfig | 9 -
drivers/leds/Makefile | 1 -
drivers/leds/trigger/ledtrig-cpu.c | 33 +-
drivers/platform/x86/Kconfig | 26 +-
drivers/platform/x86/Makefile | 2 +
drivers/platform/x86/acer-wmi.c | 14 +-
drivers/platform/x86/asus-laptop.c | 8 +-
drivers/platform/x86/asus-nb-wmi.c | 22 +
drivers/platform/x86/asus-wmi.c | 24 +-
drivers/platform/x86/asus-wmi.h | 1 +
drivers/platform/x86/dell-laptop.c | 282 +++--
drivers/platform/x86/dell-smbios.c | 20 +
drivers/platform/x86/dell-smbios.h | 11 +
drivers/platform/x86/dell-wmi-aio.c | 6 +-
.../dell-led.c => platform/x86/dell-wmi-led.c} | 141 +--
drivers/platform/x86/dell-wmi.c | 20 +-
drivers/platform/x86/eeepc-laptop.c | 10 +-
drivers/platform/x86/fujitsu-laptop.c | 1220 ++++++++------------
drivers/platform/x86/hp-wireless.c | 27 +-
drivers/platform/x86/hp-wmi.c | 414 ++++---
drivers/platform/x86/ideapad-laptop.c | 19 +-
drivers/platform/x86/intel-hid.c | 51 +-
drivers/platform/x86/intel-vbtn.c | 4 +
drivers/platform/x86/intel_cht_int33fe.c | 143 +++
drivers/platform/x86/intel_pmc_ipc.c | 156 ++-
drivers/platform/x86/intel_scu_ipc.c | 106 +-
drivers/platform/x86/msi-laptop.c | 14 +-
drivers/platform/x86/msi-wmi.c | 9 +-
drivers/platform/x86/panasonic-laptop.c | 18 +-
drivers/platform/x86/silead_dmi.c | 80 +-
drivers/platform/x86/thinkpad_acpi.c | 99 +-
drivers/platform/x86/topstar-laptop.c | 5 +-
drivers/platform/x86/toshiba-wmi.c | 5 +-
drivers/platform/x86/toshiba_acpi.c | 8 +-
drivers/watchdog/iTCO_wdt.c | 94 +-
include/linux/dell-led.h | 6 +-
include/linux/i2c.h | 10 +
include/linux/platform_data/itco_wdt.h | 4 +
sound/pci/hda/dell_wmi_helper.c | 30 +-
43 files changed, 1815 insertions(+), 1469 deletions(-)
rename drivers/{leds/dell-led.c => platform/x86/dell-wmi-led.c} (56%)
create mode 100644 drivers/platform/x86/intel_cht_int33fe.c

--
Darren Hart
VMware Open Source Technology Center