summaryrefslogtreecommitdiffstats
path: root/drivers/hwmon
AgeCommit message (Collapse)AuthorFilesLines
2014-06-03Merge tag 'hwmon-for-linus' of ↵Linus Torvalds29-1408/+2633
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging into next Pull hwmon updates from Guenter Roeck: "New driver for NCT6683D New chip support to existing drivers: - add support for STTS2004 and AT30TSE004 to jc42 driver - add support for EMC1402/EMC1412/EMC1422 to emc1403 driver Other notable changes: - document hwmon kernel API - convert jc42, lm70, lm75, lm77, lm83, lm92, max1619, tmp421, and tmp102 drivers to use new hwmon API functions - replace function macros in lm80, lm92, and jc42 drivers with real code - convert emc1403 driver to use regmap, add support for additional attributes, and add device IDs for EMC1412, EMC1413, and EMC1414 - various additional cleanup and minor bug fixes in several drivers" * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (60 commits) hwmon: (nct6775) Fix probe unwind paths to properly unregister platform devices hwmon: (nct6683) Fix probe unwind paths to properly unregister platform devices hwmon: (ultra45_env) Introduce managed version of kzalloc hwmon: Driver for NCT6683D hwmon: (lm80) Rearrange code to avoid forward declarations hwmon: (lm80) Convert fan display function macros into functions hwmon: (lm80) Convert voltage display function macros into functions hwmon: (lm80) Convert temperature display function macros into functions hwmon: (lm80) Normalize all temperature values to 16 bit hwmon: (lm80) Simplify TEMP_FROM_REG hwmon: (lm83) Convert to use devm_hwmon_device_register_with_groups hwmon: (lm83) Rearange code to avoid forward declarations hwmon: (lm83) Drop FSF address hwmon: (max1619) Convert to use devm_hwmon_device_register_with_groups hwmon: (max1619) Drop function macros hwmon: (max1619) Rearrange code to avoid forward declarations hwmon: (max1619) Drop FSF address hwmon: (max1619) Fix critical alarm display hwmon: (jc42) Add support for STTS2004 and AT30TSE004 hwmon: (jc42) Convert function macros into functions ...
2014-06-02Merge tag 'cleanup-for-3.16' of ↵Linus Torvalds1-10/+7
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc into next Pull ARM SoC cleanups from Olof Johansson: "Cleanups for 3.16. Among these are: - a bunch of misc cleanups for Broadcom platforms, mostly housekeeping - enabling Common Clock Framework on the older s3c24xx Samsung chipsets - cleanup of the Versatile Express system controller code, moving it to syscon - power management cleanups for OMAP platforms plus a handful of other cleanups across the place" * tag 'cleanup-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (87 commits) ARM: kconfig: allow PCI support to be selected with ARCH_MULTIPLATFORM clk: samsung: fix build error ARM: vexpress: refine dependencies for new code clk: samsung: clk-s3c2410-dlck: do not use PNAME macro as it declares __initdata cpufreq: exynos: Fix the compile error ARM: S3C24XX: move debug-macro.S into the common space ARM: S3C24XX: use generic DEBUG_UART_PHY/_VIRT in debug macro ARM: S3C24XX: trim down debug uart handling ARM: compressed/head.S: remove s3c24xx special case ARM: EXYNOS: Remove unnecessary inclusion of cpu.h ARM: EXYNOS: Migrate Exynos specific macros from plat to mach ARM: EXYNOS: Remove exynos_subsys registration ARM: EXYNOS: Remove duplicate lines in Makefile ARM: EXYNOS: use v7_exit_coherency_flush macro for cache disabling ARM: OMAP4: PRCM: remove references to cm-regbits-44xx.h from PRCM core files ARM: OMAP3/4: PRM: add support of late_init call to prm_ll_ops ARM: OMAP3/OMAP4: PRM: add prm_features flags and add IO wakeup under it ARM: OMAP3/4: PRM: provide io chain reconfig function through irq setup ARM: OMAP2+: PRM: remove unnecessary cpu_is_XXX calls from prm_init / exit ARM: OMAP2+: PRCM: cleanup some header includes ...
2014-05-25hwmon: (ntc_thermistor) Fix OF device ID mappingJean Delvare1-5/+6
The mapping from OF device IDs to platform device IDs is wrong. TYPE_NCPXXWB473 is 0, TYPE_NCPXXWL333 is 1, so ntc_thermistor_id[TYPE_NCPXXWB473] is { "ncp15wb473", TYPE_NCPXXWB473 } while ntc_thermistor_id[TYPE_NCPXXWL333] is { "ncp18wb473", TYPE_NCPXXWB473 }. So the name is wrong for all but the "ntc,ncp15wb473" entry, and the type is wrong for the "ntc,ncp15wl333" entry. So map the entries by index, it is neither elegant nor robust but at least it is correct. Signed-off-by: Jean Delvare <jdelvare@suse.de> Fixes: 9e8269de hwmon: (ntc_thermistor) Add DT with IIO support to NTC thermistor driver Reviewed-by: Guenter Roeck <linux@roeck-us.net> Cc: Naveen Krishna Chatradhi <ch.naveen@samsung.com> Cc: Doug Anderson <dianders@chromium.org>
2014-05-25hwmon: (ntc_thermistor) Fix dependenciesJean Delvare2-2/+4
In commit 9e8269de, support was added for ntc_thermistor devices being declared in the device tree and implemented on top of IIO. With that change, a dependency was added to the ntc_thermistor driver: depends on (!OF && !IIO) || (OF && IIO) This construct has the drawback that the driver can no longer be selected when OF is set and IIO isn't, nor when IIO is set and OF is not. This is a regression for the original users of the driver. As the new code depends on IIO and is useless without OF, include it only if both are enabled, and set the dependencies accordingly. This is clearer, more simple and more correct. Signed-off-by: Jean Delvare <jdelvare@suse.de> Fixes: 9e8269de hwmon: (ntc_thermistor) Add DT with IIO support to NTC thermistor driver Reviewed-by: Guenter Roeck <linux@roeck-us.net> Cc: Naveen Krishna Chatradhi <ch.naveen@samsung.com> Cc: Doug Anderson <dianders@chromium.org>
2014-05-24hwmon: (nct6775) Fix probe unwind paths to properly unregister platform devicesAxel Lin1-3/+5
Call platform_device_unregister() rather than platform_device_put() to unregister successfully registered platform devices. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-24hwmon: (nct6683) Fix probe unwind paths to properly unregister platform devicesAxel Lin1-3/+5
Call platform_device_unregister() rather than platform_device_put() to unregister successfully registered platform devices. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (ultra45_env) Introduce managed version of kzallocHimangi Saraogi1-5/+2
This patch moves data allocated using kzalloc to managed data allocated using devm_kzalloc and cleans now unnecessary kfrees in probe and remove functions. Also, the unnecessary label out_free is removed. The following Coccinelle semantic patch was used for making the change: @platform@ identifier p, probefn, removefn; @@ struct platform_driver p = { .probe = probefn, .remove = removefn, }; @prb@ identifier platform.probefn, pdev; expression e, e1, e2; @@ probefn(struct platform_device *pdev, ...) { <+... - e = kzalloc(e1, e2) + e = devm_kzalloc(&pdev->dev, e1, e2) ... ?-kfree(e); ...+> } @rem depends on prb@ identifier platform.removefn; expression e; @@ removefn(...) { <... - kfree(e); ...> } Signed-off-by: Himangi Saraogi <himangi774@gmail.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: Driver for NCT6683DGuenter Roeck3-0/+1466
Nuvoton NCT6683D is an eSIO with hardware monitoring capabilities. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm80) Rearrange code to avoid forward declarationsGuenter Roeck1-151/+139
Avoid need for forward declarations by rearranging code. No functional change. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm80) Convert fan display function macros into functionsGuenter Roeck1-34/+41
Convert fan display function macros into functions to reduce code size and improve code readability. Code size reduction is about 200 bytes on x86_64. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm80) Convert voltage display function macros into functionsGuenter Roeck1-72/+76
Convert voltage display function macros into functions to reduce code size and improve code readability. Code size reduction is about 600 bytes on x86_64. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm80) Convert temperature display function macros into functionsGuenter Roeck1-75/+59
Convert temperature display function macros into functions to reduce code size and improve code readability. Code size reduction is about 2k on x86_64. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm80) Normalize all temperature values to 16 bitGuenter Roeck1-18/+14
Normalize all stored temperature values to 16 bit to simplify temperature calculations. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm80) Simplify TEMP_FROM_REGGuenter Roeck1-14/+3
TEMP_FROM_REG gets 12 bits of temperature data in the upper 12 bit of a signed 16 bit parameter, with the integer part (including sign) in the upper 8 bit and the remainder in bit 4..7. The lower 4 bit of the 16 bit data is always 0. We can use that information to convert the temperature directly into display data (1/1000th of degree C). Note that the stored temperature data is not shifted right as the comment claimed, so remove that misleading comment. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm83) Convert to use devm_hwmon_device_register_with_groupsGuenter Roeck1-43/+16
Use devm_hwmon_device_register_with_groups API to attach attributes to hwmon device, simplify code, and reduce code size. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm83) Rearange code to avoid forward declarationsGuenter Roeck1-61/+50
Avoid forward declarations by rearranging code. No functional change. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm83) Drop FSF addressGuenter Roeck1-4/+0
The FSF address changes over time, so drop it. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max1619) Convert to use devm_hwmon_device_register_with_groupsGuenter Roeck1-39/+14
Use devm_hwmon_device_register_with_groups API to attach attributes to hwmon device, simplify code, and reduce code size. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max1619) Drop function macrosGuenter Roeck1-68/+73
Function macros make the code larger and difficult ro read. Drop them and reduce code size (on x86_64) by ~1800 bytes. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max1619) Rearrange code to avoid forward declarationsGuenter Roeck1-89/+69
Forward declarations are unnecessary and easy to avoid, so rearrange code and drop them. No functional change. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max1619) Drop FSF addressGuenter Roeck1-5/+0
The FSF address may chance over time, so drop it. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max1619) Fix critical alarm displayGuenter Roeck1-0/+5
The overtemperature status bit, which is used to display critical alarm status, matches the output of the OVERT signal 1:1. If that signal is active-low, the bit will read 1 if there is no alarm. It is therefore necessary to reverse the bit in this case. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (jc42) Add support for STTS2004 and AT30TSE004Guenter Roeck1-0/+9
Also fix links to datasheets for other supported sensors from ST Microelectronics, and add links to several Atmel datasheets. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (jc42) Convert function macros into functionsGuenter Roeck1-110/+72
Convert function macros into functions to make the code easier to read and reduce code size. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (jc42) Rearrange code to avoid forward declarationsGuenter Roeck1-97/+89
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Add device IDs for EMC1412, EMC1413, and EMC1414Guenter Roeck1-0/+3
EMC1412, EMC1413, and EMC1414 are fully compatible to EMC1402, EMC1403, and EMC1404, and even report the same chip ID. Add to device ID table to enable instantiation with correct chip names. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Add support for min_hyst attributesGuenter Roeck1-3/+24
The hysteresis value applies to all limits, so add support for tempX_min_hyst. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Add support for max_hyst attributesGuenter Roeck1-0/+8
The hysteresis value applies to all limits, so add support for tempX_max_hyst. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Relax hysteresis limit write checksGuenter Roeck1-6/+1
Writing the hysteresis limit returned -ERANGE if the written hysteresis was too high or too low. Relax error check and adjust the hysteresis value to its valid range. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Make all hyst attributes except for temp1_crit_hyst read-onlyGuenter Roeck1-6/+3
All chips in this chip series only support a single hysteresis value. Having multiple writable hysteresis attributes is therefore confusing, since a single write affects all hysteresis temperatures. Make all but one (temp1_crit_hyst) read-only. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Add support for alarm and diode fault status on EMC14x2Guenter Roeck1-0/+36
Alarm and fault status register on EMC1402, EMC1412, and EMC1422 is reported in a different register than with other chips. Add support for it. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Report external diode fault statusGuenter Roeck1-0/+6
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Convert to use regmapGuenter Roeck1-54/+63
Convert to regmap to be able to use its register caching mechanism. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (emc1403) Add support for emc14x2Josef Gajdusek1-15/+43
Add support for emc1402/emc1412/emc1422 temperature monitoring chips. This line of sensors only has 2 temperature channels (internal and external) in comparison to the emc14x3 (3 channels) and emc14x4 (4 channels). Signed-off-by: Josef Gajdusek <atx@atx.name> [Guenter Roeck: ordered i2c address list, updated description/headline] Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (adm1029) Update Corentin Labbe's emailLABBE Corentin1-2/+2
Signed-off-by: LABBE Corentin <clabbe.montjoie@gmail.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (iio_hwmon) Make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (gpio-fan) Make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (g762) Make of_device_id array constJingoo Han1-1/+1
Make of_device_id array const, because all OF functions handle it as const. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (ltc2945) Fix 1st comment lineGuenter Roeck1-1/+1
Somehow a couple of spaces got added to the first line. Remove them. No code change. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (vt1211) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (s3c-hwmon) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (pc87427) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max197) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (max1111) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm93) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (ibmpex) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Acked-by: Darrick J. Wong <darrick.wong@oracle.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (f71805f) remove unnecessary OOM messagesJingoo Han1-3/+1
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm92) Convert to use devm_hwmon_device_register_with_groupsGuenter Roeck1-41/+15
Use devm_hwmon_device_register_with_groups API to attach attributes to hwmon device, simplify code, and reduce code size. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm92) Drop function macrosGuenter Roeck1-83/+84
Function macros obfuscate code and increase code size, so drop them. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2014-05-21hwmon: (lm92) Drop FSF mailing addressGuenter Roeck1-4/+0
The FSF mailing address may change, so drop it. Reviewed-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>