linux/drivers/platform/x86
Stanislav Fomichev 6b99e3569b platform/x86: thinkpad_acpi: Fix warning about deprecated hwmon_device_register
Use hwmon_device_register_with_groups instead of deprecated
hwmon_device_register and fix a dmesg warning.

This patch however changes the userspace API.
hwmon_device_register_with_groups takes `hwmon' name as an argument and
creates a name file in the `hwmon' device, not in the `platform_device'.
This allows us to remove custom `name' device attribute, but in order to
make lm-sensors happy we also have to move fans and thermal attributes
to the `hwmon' device.

Even though this patch changes userspace API, it's still compatible with
the lm-sensors. Starting with lm-sensors 3.0 (circa 2007), it looks at
both hwmon and the backing device for the name and other attributes.

before:
$ cat /sys/devices/platform/thinkpad_hwmon/{name,fan1_input}
thinkpad
2007
$ cat /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon1/{name,fan1_input}
cat: /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon1/name: No such file or directory
cat: /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon1/fan1_input: No such file or directory
$ cat /sys/class/hwmon/hwmon1/{name,fan1_input}
cat: /sys/class/hwmon/hwmon1/name: No such file or directory
cat: /sys/class/hwmon/hwmon1/fan1_input: No such file or directory
$ sensors
thinkpad-isa-0000
Adapter: ISA adapter
fan1:        3533 RPM

after:
$ cat /sys/devices/platform/thinkpad_hwmon/{name,fan1_input}
cat: /sys/devices/platform/thinkpad_hwmon/name: No such file or directory
cat: /sys/devices/platform/thinkpad_hwmon/fan1_input: No such file or directory
$ cat /sys/devices/platform/thinkpad_hwmon/hwmon/hwmon1/{name,fan1_input}
thinkpad
3478
$ cat /sys/class/hwmon/hwmon1/{name,fan1_input}
thinkpad
3478
$ sensors
thinkpad-isa-0000
Adapter: ISA adapter
fan1:        3489 RPM

$ sensors -v
sensors version 3.4.0 with libsensors version 3.4.0

Signed-off-by: Stanislav Fomichev <kernel@fomichev.me>
[dvhart: cleaned up commit log, bumped version to 4.14 in the doc change]
Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
2017-08-18 15:57:24 -07:00
..
acer-wmi.c platform/x86: acer-wmi: Using zero as first WMI instance number 2017-06-20 20:23:17 +03:00
acerhdf.c platform/x86: acerhdf: Add const to thermal_cooling_device_ops structure 2017-06-21 14:12:46 -07:00
alienware-wmi.c platform/x86: alienware-wmi: fix format string overflow warning 2017-07-25 20:54:03 +03:00
amilo-rfkill.c
apple-gmux.c apple-gmux: Don't switch external DP port on 2011+ MacBook Pros 2017-03-30 22:42:30 +02:00
asus-laptop.c platform/x86: asus-laptop: remove sparse_keymap_free() calls 2017-03-14 22:58:02 -07:00
asus-nb-wmi.c platform/x86: asus-wmi: try to set als by default 2017-04-28 21:52:24 +03:00
asus-wireless.c platform/x86: asus-wireless: Fix indentation 2017-02-24 23:48:48 -08:00
asus-wmi.c platform/x86: asus-wmi: Evaluate wmi method with instance number 0x0 2017-08-13 15:55:05 +03:00
asus-wmi.h platform/x86: asus-wmi: try to set als by default 2017-04-28 21:52:24 +03:00
classmate-laptop.c
compal-laptop.c platform/x86: compal-laptop: constify attribute_group structures. 2017-07-11 09:22:49 -07:00
dell-laptop.c platform/x86: dell-laptop: Fix bogus keyboard backlight sysfs interface 2017-06-20 20:24:56 +03:00
dell-rbtn.c platform/x86: dell-rbtn: constify rfkill_ops structures 2017-06-13 11:00:21 -07:00
dell-rbtn.h
dell-smbios.c platform/x86: dell-*: Add a generic dell-laptop notifier chain 2017-04-13 10:12:19 -07:00
dell-smbios.h platform/x86: dell-*: Add a generic dell-laptop notifier chain 2017-04-13 10:12:19 -07:00
dell-smo8800.c x86: separate extable.h, switch sections.h to it 2016-09-27 21:15:23 -04:00
dell-wmi-aio.c platform/x86: dell-wmi-aio: remove sparse_keymap_free() calls 2017-03-14 22:58:04 -07:00
dell-wmi-led.c platform/x86: dell-wmi-led: Adjust instance of wmi_evaluate_method calls to 0 2017-06-28 09:01:36 -07:00
dell-wmi.c platform/x86: dell-wmi: Fix driver interface version query 2017-08-01 13:53:49 -07:00
eeepc-laptop.c platform/x86: eeepc-laptop: constify platform_attribute_group 2017-06-30 20:13:01 -07:00
eeepc-wmi.c
fujitsu-laptop.c platform/x86: fujitsu-laptop: constify attribute_group structures. 2017-07-11 09:22:44 -07:00
fujitsu-tablet.c
hdaps.c
hp_accel.c platform/x86: hp_accel: Add support for HP ZBook 17 2017-02-03 14:04:53 +02:00
hp-wireless.c platform/x86: hp-wireless: reuse module_acpi_driver 2017-04-28 21:51:25 +03:00
hp-wmi.c platform/x86: hp-wmi: Remove unused macro helper 2017-08-13 15:26:54 +03:00
ibm_rtl.c platform/x86: ibm_rtl: remove unnecessary static in ibm_rtl_write() 2017-07-25 09:56:38 -07:00
ideapad-laptop.c platform/x86: ideapad-laptop: Expose conservation mode switch 2017-08-14 23:27:12 +03:00
intel_bxtwc_tmu.c platform/x86: intel_bxtwc_tmu: Remove first level IRQ unmask 2017-06-19 15:45:30 +01:00
intel_cht_int33fe.c platform/x86: intel_cht_int33fe: Set supplied-from property on max17047 dev 2017-05-31 13:21:00 +03:00
intel_int0002_vgpio.c platform/x86: Add driver for ACPI INT0002 Virtual GPIO device 2017-06-15 00:55:44 +02:00
intel_ips.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/loadavg.h> 2017-03-02 08:42:27 +01:00
intel_ips.h
intel_menlow.c platform/x86: intel_menlow: Add const to thermal_cooling_device_ops structure 2017-06-21 14:13:10 -07:00
intel_mid_powerbtn.c platform/x86: intel_mid_powerbtn: make mid_pb_ddata const 2017-08-13 15:27:10 +03:00
intel_mid_thermal.c platform/x86: intel_mid_thermal: Fix module autoload 2017-02-03 14:04:53 +02:00
intel_oaktrail.c
intel_pmc_core.c platform/x86: intel_pmc_core: Make the driver PCH family agnostic 2017-08-13 16:01:22 +03:00
intel_pmc_core.h platform/x86: intel_pmc_core: Make the driver PCH family agnostic 2017-08-13 16:01:22 +03:00
intel_pmc_ipc.c platform/x86: intel_pmc_ipc: Mark ipc_data_readb() as __maybe_unused 2017-05-26 12:52:21 +03:00
intel_punit_ipc.c platform:x86 decouple telemetry driver from the optional IPC resources 2016-04-19 13:51:41 -07:00
intel_scu_ipc.c platform/x86: intel_scu_ipc: make intel_scu_ipc_pdata_t const 2017-08-13 15:27:10 +03:00
intel_scu_ipcutil.c
intel_telemetry_core.c intel_telemetry: Constify telemetry_core_ops structures 2016-05-05 13:58:55 -07:00
intel_telemetry_debugfs.c platform/x86: intel_telemetry: Add GLK PSS Event Table 2017-07-25 20:54:03 +03:00
intel_telemetry_pltdrv.c platform/x86: intel_telemetry: remove redundant macro definition 2017-07-25 20:54:04 +03:00
intel_turbo_max_3.c platform/x86: intel_turbo_max_3: make it explicitly non-modular 2017-02-24 23:48:54 -08:00
intel-hid.c platform: x86: intel-hid: Wake up the system from suspend-to-idle 2017-06-23 02:09:49 +02:00
intel-rst.c
intel-smartconnect.c platform/x86: Use ACPI_FAILURE at appropriate places 2016-12-13 09:29:01 -08:00
intel-vbtn.c platform/x86: intel-vbtn: match power button on press rather than release 2017-08-05 13:59:47 -07:00
Kconfig platform/x86: peaq-wmi: select INPUT_POLLDEV 2017-07-20 16:57:51 -07:00
Makefile platform-drivers-x86 for v4.13-1 2017-07-06 15:33:27 -07:00
mlx-platform.c platform/x86: mlx-platform: mlxcpld-hotplug driver style fixes 2017-02-03 14:04:53 +02:00
mlxcpld-hotplug.c platform/x86: Introduce support for Mellanox hotplug driver 2016-10-23 07:52:57 -07:00
msi-laptop.c platform/x86: msi-laptop: constify msipf*_attribute_group 2017-06-30 20:13:01 -07:00
msi-wmi.c platform/x86: msi-wmi: remove unnecessary static in msi_wmi_notify() 2017-07-25 09:56:38 -07:00
mxm-wmi.c platform/x86: mxm-wmi: Evaluate wmi method with instance number 0x0 2017-08-13 15:55:05 +03:00
panasonic-laptop.c platform/x86: panasonic-laptop: constify attribute_group structures. 2017-07-11 09:22:53 -07:00
peaq-wmi.c platform/x86: peaq-wmi: Evaluate wmi method with instance number 0x0 2017-08-13 15:55:06 +03:00
pmc_atom.c platform/x86: Enable Atom PMC platform clocks 2017-01-26 16:21:59 -08:00
pvpanic.c
samsung-laptop.c platform/x86: samsung-laptop: constify attribute_group structures. 2017-07-11 09:22:51 -07:00
samsung-q10.c
silead_dmi.c platform/x86: silead_dmi: Add entry for Ployer Momo7w tablet touchscreen 2017-07-12 13:57:42 -07:00
sony-laptop.c platform/x86: sony-laptop: constify attribute_group and input index array 2017-06-30 20:26:54 -07:00
surface3_button.c platform/x86: surface3_button: Propagate error from gpiod_count() 2017-03-16 21:52:12 +01:00
surface3-wmi.c platform/x86: surface3-wmi: fix uninitialized symbol 2017-01-21 01:43:42 +02:00
surfacepro3_button.c surfacepro3_button: Add a warning when switching to tablet mode 2016-05-27 11:47:53 -07:00
tc1100-wmi.c
thinkpad_acpi.c platform/x86: thinkpad_acpi: Fix warning about deprecated hwmon_device_register 2017-08-18 15:57:24 -07:00
topstar-laptop.c platform/x86: topstar-laptop: Add new device id 2017-05-15 16:15:50 -07:00
toshiba_acpi.c platform/x86: toshiba_acpi: constify attribute_group structures. 2017-07-11 09:22:55 -07:00
toshiba_bluetooth.c platform/x86: toshiba_bluetooth: Decouple an error checking status code 2016-09-23 16:21:06 -07:00
toshiba_haps.c platform/x86: toshiba_haps: constify haps_attr_group 2017-06-28 09:01:37 -07:00
toshiba-wmi.c platform/x86: toshiba-wmi: remove sparse_keymap_free() calls 2017-03-14 22:58:11 -07:00
wmi-bmof.c platform/x86: wmi*: Add recent copyright statements 2017-06-13 11:00:18 -07:00
wmi.c platform/x86: wmi: Fix check for method instance number 2017-08-18 15:10:40 +03:00
xo1-rfkill.c
xo15-ebook.c