Changes in v3: - rebase on eabe533904cbcb6c7df530fd807cf2a3c3567d35 ("platform/x86: ideapad-laptop: DYTC Platform profile support"), which is referred to as "DYTC patch" in this changelog - {02} *new patch* - {03} minor formatting changes - {05} *new patch* - {07} *new patch* - {08} *new patch* - {09} minor formatting change - {10} use while loop - {11} restore log message severity - {12} *new patch* - {13} reorder variable definitions, apply to DYTC patch - {14} mention ABI breakage - {15} mention ABI breakage, use `!!` to convert to `int` and "%d" in sysfs_emit(), convert 'camera_power' attribute to boolean-like - {17} reorder varible definitions, apply to DYTC patch - {18} minor formatting changes, add log messages - {19} minor formatting change - {20} move `&&` to end of line - {21} no longer return -ENODATA due to {02}, explicit alignment instead of tabs in output - {22} no longer return -ENODATA due to {02} - {24} reorder device attribute callbacks, remove some empty lines, apply to DYTC patch - {26} use `!!` to map to range [0, 1], add log messages - {27} move documentation change to this patch - {28} add "Fixes" tag - {29} add "Fixes" tag I hope I addressed all concerns adequately, if not, do not hesistate to remind me. History: - v2: https://lore.kernel.org/platform-driver-x86/20210113182016.166049-1-pobrn@xxxxxxxxxxxxxx/ - v1: https://lore.kernel.org/platform-driver-x86/20201216013857.360987-1-pobrn@xxxxxxxxxxxxxx/ Barnabás Pőcze (29): platform/x86: ideapad-laptop: remove unnecessary dev_set_drvdata() call platform/x86: ideapad-laptop: remove unnecessary NULL checks platform/x86: ideapad-laptop: use appropriately typed variable to store the return value of ACPI methods platform/x86: ideapad-laptop: sort includes lexicographically platform/x86: ideapad-laptop: add missing call to submodule destructor platform/x86: ideapad-laptop: use sysfs_emit() platform/x86: ideapad-laptop: use device_{add,remove}_group platform/x86: ideapad-laptop: use kobj_to_dev() platform/x86: ideapad-laptop: use for_each_set_bit() helper to simplify event processing platform/x86: ideapad-laptop: use msecs_to_jiffies() helper instead of hand-crafted formula platform/x86: ideapad-laptop: use dev_{err,warn} or appropriate variant to display log messages platform/x86: ideapad-laptop: check return value of debugfs_create_dir() for errors platform/x86: ideapad-laptop: convert ACPI helpers to return -EIO in case of failure platform/x86: ideapad-laptop: always propagate error codes from device attributes' show() callback platform/x86: ideapad-laptop: misc. device attribute changes platform/x86: ideapad-laptop: group and separate (un)related constants into enums platform/x86: ideapad-laptop: rework and create new ACPI helpers platform/x86: ideapad-laptop: rework is_visible() logic platform/x86: ideapad-laptop: check for Fn-lock support in HALS platform/x86: ideapad-laptop: check for touchpad support in _CFG platform/x86: ideapad-laptop: change 'status' debugfs file format platform/x86: ideapad-laptop: change 'cfg' debugfs file format Revert "platform/x86: ideapad-laptop: Switch touchpad attribute to be RO" platform/x86: ideapad-laptop: fix checkpatch warnings, more consistent style platform/x86: ideapad-laptop: send notification about touchpad state change to sysfs platform/x86: ideapad-laptop: add keyboard backlight control support platform/x86: ideapad-laptop: add "always on USB charging" control support Documentation/ABI: sysfs-platform-ideapad-laptop: update device attribute paths Documentation/ABI: sysfs-platform-ideapad-laptop: conservation_mode attribute .../ABI/testing/sysfs-platform-ideapad-laptop | 26 +- drivers/platform/x86/ideapad-laptop.c | 1284 ++++++++++------- 2 files changed, 810 insertions(+), 500 deletions(-) -- 2.30.0