Commit Graph

2791 Commits

Author SHA1 Message Date
Huang Rui d83e92b3af hwmon: (fam15h_power) Rename fam15h_power_is_internal_node0 function
We rename fam15h_power_is_internal_node0() function to
should_load_on_this_node(), because it may not be node0 from KV and
on, and they are single-node processors.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-27 07:34:25 -07:00
Huang Rui 5dc087254a hwmon: (fam15h_power) Add support for AMD Carrizo
AMD Carrizo(Fam15h, M60h) processors can report power1_crit
(ProcessorPwrWatts) and power1_input (CurrPwrWatts) values.
And this patch adds support for CZ.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-27 07:33:29 -07:00
Guenter Roeck ccf2dc51bc hwmon: (ltc2978) Add support for LTM4675
LTM2975 is a dual 9A or single 18A μModule regulator.
It is register compatible with LTM4676.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-19 09:08:55 -07:00
Michael Jones e04d1ce9bb hwmon: (ltc2978) Add polling for chips requiring it
Some of the LTC chips supported by this driver have to be polled
to ensure that they are ready to accept commands.

Signed-off-by: Michael Jones <mike@proclivis.com>
[Guenter Roeck: simplifications and formatting changes]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-19 09:08:41 -07:00
Guenter Roeck d830e27dac hwmon: (pmbus) Enable PEC if the controller supports it
PMBus controllers optionally support PEC. Configure the driver
to use it if available to improve operational security.

Suggested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-19 09:08:29 -07:00
Guenter Roeck 2c052d4280 hwmon: (pmbus) Use BIT macro
Using the BIT macro makes the code a little easier to read.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-19 09:08:17 -07:00
Guenter Roeck 228b687d9e hwmon: (ltc2978) Add support for LTC3886
LTC3886 is a is a dual PolyPhase DC/DC synchronous step-down switching
regulator controller. It is mostly command compatible to LTC3883,
but supports two phases instead of one.

Suggested-by: Michael Jones <mike@proclivis.com>
Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 16:36:00 -07:00
Guenter Roeck 52aae6af71 hwmon: (ltc2978) Add support for LTC2980 and LTM2987
LTC2980 and LTM2987 are command compatible to LTC2977. They consist of
two LTC2977 on a single die, and are instantiated as two separate chips,
each supporting eight channels.

Suggested-by: Michael Jones <mike@proclivis.com>
Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 16:35:59 -07:00
Guenter Roeck acb092cdf9 hwmon: (ltc2978) Add missing chip IDs for LTC2978 and LTC3882
Add additional chip ID for an older revision of LTC2978, as well
as two chip IDs for LTC3882. Turns out the LTC3882 does support the
LTC2978_MFR_SPECIAL_ID register, and reading it returns its chip ID,
but the register is undocumented.

Suggested-by: Michael Jones <mike@proclivis.com>
Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 16:35:13 -07:00
Guenter Roeck 00c8337191 hwmon: (ltc2978) Use correct ID mask to detect all chips
Per information from Linear Technologies, the ID mask is 12 bit
for all chips of this series. Use this mask to detect chips to ensure
that all chip revisions are detected.

Suggested-by: Michael Jones <mike@proclivis.com>
Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 16:34:02 -07:00
Guenter Roeck ee847a2526 hwmon: (ltc2978) Introduce helper functions for min and max values
The code used to determine historic low and high peaks is repeated
several times. Introduce helper functions to simplify it.

Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 11:55:56 -07:00
Guenter Roeck 8582bcc8eb hwmon: (ltc2978) Introduce feature flags
It is becoming cumbersom to track per-chip feature support.
Introduce feature flag to simplify the code.

Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 11:55:55 -07:00
Guenter Roeck 2238835c5c hwmon: (pmbus) Convert command register definitions to enum
This will simplify adding new virtual commands.

Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 11:55:55 -07:00
Guenter Roeck 649ca820da hwmon: (ltc2978) Add support for LTC2975
LTC2975 is mostly compatible to LTC2974, but supports input current
and power measurement.

Tested-by: Michael Jones <mike@proclivis.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-17 11:55:55 -07:00
Guenter Roeck 15398566f0 hwmon: (ltc2978) Add support for LTC3887
LTC3887 is an enhanced version of LTC3880 and supports the same commands.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-12 12:29:36 -07:00
Guenter Roeck e8047a2686 hwmon: (ltc2978) Add additional chip IDs for LTM4676 and LTM4676A
Per datasheet, the chip ID for LTM4676 is 0x448x. This was observed
in real systems. In addition to that, chip ID 0x4401 was observed
as well. Research shows that the chip ID has been changed from 0x440x
to 0x448x in datasheet revision C. Add support for the additional chip ID.

Also add the chip ID for LTM4676A, which is functionally identical
to LTM4676.

Reported-by: Ananda Babu Nettam <anandab@juniper.net>
Cc: Ananda Babu Nettam <anandab@juniper.net>
Cc: Amit U Jain <amjain@juniper.net>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-12 12:29:22 -07:00
Guenter Roeck bf89386f16 hwmon: (ltc2978) Add support for LTC3882
LTC3882 is mostly compatible with LTC3880. Major differences are that it
does not measure the input current, and it no longer supports LTC's legacy
mechanism to identify the chip.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-12 12:29:22 -07:00
Guenter Roeck 836954dadc hwmon: (ltc2978) Move code to read chip ID into separate function
Verifying the chip type is getting more complicated with new chips,
since not all chips support the same mechanism to read the chip type.
Move the code into a separate function to simplify adding support for
those chips.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-12 12:29:12 -07:00
yalin wang 33836ee985 hwmon:change sht15_reverse()
This change sht15_reverse() to be generic bitrev8().

Signed-off-by: yalin wang <yalin.wang2010@gmail.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-10 23:00:10 -07:00
Guenter Roeck cfca3789e0 hwmon: (pmbus) Add device IDs for TPS544{B,C}2{0,5}
Add device IDs and references for Texas Instruments TPS544B20, TPS544B25,
TPS544C20, and TPS544C25 to the generic PMBus driver.

Reviewed-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-10 22:59:47 -07:00
Guenter Roeck 1f61cab8a7 hwmon: (pmbus) Add support for MAX20751
MAX20751 is a multiphase power controller with internal buck converter.
It uses VR12.0 to report the output voltage. This requires an explicit
driver, since the VR version can not be auto-detected.

The chip supports a manufacturer specific command to fine-tune the output
voltage.  This command is not currently supported.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-09 13:44:27 -07:00
Guenter Roeck 068c227056 hwmon: (pmbus) Add support for VR12
Newer chips such as MAX20751 support VR12. Add support for it.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-09 13:44:27 -07:00
Justin Maggard ead8080351 hwmon: (it87) Add support for IT8732F
Add support for the IT8732F.  This chip is pretty similar to IT8721F,
with the main difference being that the ADC LSB is 10.9 mV instead of
12 mV.

Signed-off-by: Justin Maggard <jmaggard@netgear.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-09 13:44:27 -07:00
Constantine Shulyupin 1c6e8f6ba8 hwmon: (nct7802) Add auto_point attributes
Introduced REG_PWM, pwm[1..3]_auto_point[1..5]_temp,
pwm[1..3]_auto_point[1..5]_pwm, nct7802_auto_point_attrs,
nct7802_auto_point_group, updated nct7802_regmap_is_volatile

Signed-off-by: Constantine Shulyupin <const@MakeLinux.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-09 13:44:27 -07:00
Rabin Vincent a1dc86ebd2 hwmon: (lm70) add device tree support
Allow the lm70 to be probed from a device tree.

Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2015-08-09 13:44:27 -07:00