aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon
Commit message (Collapse)AuthorAge
* hwmon: (lineage-pem): Fix in1 voltage alarm sysfs attributesGuenter Roeck2011-03-16
| | | | | | | | | | | | The alarm bit assumed to be a low voltage alarm bit is not set for low voltage alarms, and the alarm bit assumed to be a high voltage alarm turns out to be a general alarm bit which is set for both low and high voltage alarms. Remove the in1_min_alarm sysfs attribute and rename in1_max_alarm to in1_alarm to reflect the situation. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jean Delvare <khali@linux-fr.org>
* hwmon/f71882fg: Add support for f71808eHans de Goede2011-03-15
| | | | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Tested-by: Jonathan Michalon <johndescs@gmail.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Add support for f71869f and f71869eHans de Goede2011-03-15
| | | | | | | | | | | Note that these 2 are register compatible and report the same superio id, but they are 2 distinct chips / models! Signed-off-by: Hans de Goede <hdegoede@redhat.com> Tested-by: Thomas Faber <thfabba@gmx.de> Tested-by: Alexey Sychev <owl@umail.ru> Tested-by: Dieter Bloms <dieter@bloms.de> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Add support for f71889edHans de Goede2011-03-15
| | | | | | | | | | | | | | | | | | | | | | Note that this patch also makes 2 changes to the code paths for the f71889fg to keep the code unified between the 2 (for simplicities sake). Both of these are harmless for then f71889fg: 1) The first change is to always set the FAN_PROG_SEL bit to 0. This influences accesses to some banked fan / pwm registers. On the f71889fg no registers which we use are banked. On the f71889ed however some more fan registers have been banked including one which we use, by making the FAN_PROG_SEL bit 0, address 0x96 will point to the right register. 2) The second change is to see a FANx_TEMP_SEL value of 0 as pointing to a PECI / AMDSI value, and thus disable our pwm related sysfs attr. This is correct for the f71889ed and on the f71889fg 0 is a reserved value, so we should never see it and if we do, disabling the pwm related sysfs attr is a sane thing to do. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Tested-by: Thomas Greve <tg42@gmx.net> Tested-by: Sander Eikelenboom <linux@eikelenboom.it> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Break out test for auto pwm's controlled by digital readingsHans de Goede2011-03-15
| | | | | | | | | Putting this check in its own switch case rather then in the switch case for adding pwm auto point sysfs attr is cleaner. This is a preparation patch for adding support for more different models. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Separate temp beep sysfs attr from the other temp sysfs attrHans de Goede2011-03-15
| | | | | | | This is a preparation patch for adding support for more different models. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Remove bogus temp2_type for certain modelsHans de Goede2011-03-15
| | | | | | | | | Remove the temp2_type sysfs files for f8000 / f71858fg models, this got in accidentally and is wrong as these models don't have a Temperature Sensor Type Register at all. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Make number of temps configurableHans de Goede2011-03-15
| | | | | | | | | Make the temp sysattr array for the standard models a 2d array, which allows to use it for models with less temperatures too. This is a preparation patch for adding support for more different models. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Make creation of in sysfs attributes more genericHans de Goede2011-03-15
| | | | | | | | This is a preparation patch for adding support for more different models, some of which have a sparse list of used voltage pins. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Only allow negative auto point temps if fan_neg_temp is enabledHans de Goede2011-03-15
| | | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Fix temp1 sensor type reportingHans de Goede2011-03-15
| | | | | | | | | | | | The code for determining a sensort type for temp1 was based on me misreading the datasheet, the tested registers do not determine what kind of sensor is actually reported as temp1. Instead the enable / disable certain additional digital sensor readouts throug PECI / AMDSI, etc. Independent of these settings temp1 is still reading an external BJT or thermistor as configured by the Temperature Sensor Type Register (0x6b). Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (w83627ehf) Display correct temperature sensor labels for systems ↵Guenter Roeck2011-03-15
| | | | | | | | | with NCT6775F Systems with NCT6775F reported temperature sensor labels for systems with NCT6776F. This patch fixes the problem. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (w83627ehf) Add fan debounce support for NCT6775F and NCT6776FIan Dobson2011-03-15
| | | | | | | | | | | NCT6776F and NCT6775F support debouncing the fan RPM signal. This can help improve the stability of th RPM signal for some fans (Arctic cooling fans for example). This patch adds a module parameter fan_debounce, which when set to 1 enables debounce for all fans that the chip supports. Signed-off-by: Ian Dobson <i.dobson@planet-ian.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (w83627ehf) Update Kconfig for W83677HG-B, NCT6775F and NCT6776FGuenter Roeck2011-03-15
| | | | | Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Store rpm instead of raw fan speed dataGuenter Roeck2011-03-15
| | | | | | | | | | | | | Since the fan speed value can be above 0xff, we can no longer use that value to determine if the fan speed reading is valid. This makes it difficult to manipulate the stored fan speed register value. If we store rpm instead of the fan speed register value, we do not need to correct it if the fan divisor value is changed, and the above mentioned problem no longer exists. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Use 16 bit fan count registers if supportedGuenter Roeck2011-03-15
| | | | | | | | | | | | | | | Some of the chips supported by this driver have 13 bit or 16 bit fan count registers. This patch improves support for those registers, specifically for NCT6775F. With the changes in this patch, fan speed is reported correctly even if the fan divider is set to a low value, which results in a fan speed reading above 0xff. With this patch, the width of fan count registers is no longer used to determine if the chip has fan divider register(s) or not. A dedicated flag is used instead to determine if this is the case. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Add support for Nuvoton NCT6775F and NCT6776FGuenter Roeck2011-03-15
| | | | | | | | | This patch adds support for NCT6775F and NCT6776F to the w83627ehf driver. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Tested-by: Ian Dobson <i.dobson@planet-ian.com> (NCT6776F) Tested-by: Zachary Marzec <zmarzec@gmail.com> (ASUS P8P67 PRO/NCT6776F) Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Permit enabling SmartFan IV mode if configured at startupGuenter Roeck2011-03-15
| | | | | | | | If SmartFan IV mode was configured at startup, it should be possible to re-enable it later on. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Convert register arrays to 16 bit, and convert access to ↵Guenter Roeck2011-03-15
| | | | | | | | | | | | | pointers For newer chips, several registers are banked and thus need to be 16 bit. Also, register addresses change. To prepare for those chips, convert affected register arrays to 16 bit, and change access to those registers to array pointers in struct w83627ehf_data. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Improve support for W83667HG-BGuenter Roeck2011-03-15
| | | | | | | | Add support for 4th temperature sensor on W83677HG-B. Display temperature labels on W83677HG-B to report temperature sources. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Optimize multi-bank register accessGuenter Roeck2011-03-15
| | | | | | | | Assume that each register is banked, and set the bank for each access. Cache the bank number so it only needs to be set if it changes. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Fixed most checkpatch warnings and errorsGuenter Roeck2011-03-15
| | | | | | | | | This cleanup fixes most of the checkpatch warnings and errors in the w83627ehf driver. Remaining warnings and errors are left untouched on purpose to avoid making the code less readable. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: (w83627ehf) Unify temperature register access, and use strict string ↵Guenter Roeck2011-03-15
| | | | | | | | | | conversions This patch unifies temperature register access, and replaces simple_strtoXXX with strict_strtoXXX throughout the driver. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Ian Dobson <i.dobson@planet-ian.com>
* hwmon: Add support for LTC4151per.dalen@appeartv.com2011-03-15
| | | | | | | | LTC4151 is High Voltage I2C Current and Voltage Monitor from Linear Technology. Signed-off-by: Per Dalen <per.dalen@appeartv.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (pmbus) Fix LINEAR16 data formatGuenter Roeck2011-03-15
| | | | | | | | LINEAR16 data format is unsigned, not signed. Impact is that affected attributes report negative values in the upper half of the supported value range. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (pmbus) Continuously update temperature limit registersGuenter Roeck2011-03-15
| | | | | | | | | | | | PMBus only has one set of limit registers for up to three temperature sensors. Thus, changing a limit for one of the temperature sensors affects limits for other temperature sensors in the same page (and potentially multiple pages depending on the chip implementation). To handle this situation, re-read all temperature limit registers when updating sensor data. This way, all affected temperature limits are updated whenever the limit for a single sensor is changed. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (pmbus) Improve support for paged temperature sensorsGuenter Roeck2011-03-15
| | | | | | | | | | | | | Assumption so far was that PMBus devices would support TEMP2 and TEMP3 registers only on page 0, and that only the TEMP1 register would be used/supported on other pages. Turns out that is not correct. UCD92xx devices support TEMP1 and TEMP2 on page 0, and TEMP2 on other pages. So it is necessary to change the core code such that it does not make a page based assumptions about temperature register support. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (pmbus) Improve support for paged fansGuenter Roeck2011-03-15
| | | | | | | | | | | | | | So far, it seemed like fans would either all be in page 0, or that there would be one page per fan. Turns out this was a wrong assumption. There is at least one PMBus fan controller which supports three pages with four fans each. Update code to handle this situation. Reported-by: Greg Schnorr <gschnorr@cisco.com> Tested-by: Greg Schnorr <gschnorr@cisco.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Greg Schnorr <gschnorr@cisco.com>
* hwmon: (pmbus) More stringent checking of VOUT_MODE registerGuenter Roeck2011-03-15
| | | | | | | | | | | | | | | Some PMBus chips do not support the VOUT_MODE register. To make matters worse, such chips may not return an error when reading the register either, but instead return 0xff. Check if the register exists using pmbus_check_byte_register() before reading its value. In addition, validate the returned value and ignore it if it is 0xff (which is invalid). Reported-by: Greg Schnorr <gschnorr@cisco.com> Tested-by: Greg Schnorr <gschnorr@cisco.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Greg Schnorr <gschnorr@cisco.com>
* hwmon: (pmbus) Add support for Maxim MAX34440/MAX34441Guenter Roeck2011-03-15
| | | | | Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
* hwmon: (pmbus) Add support for Maxim MAX16064Guenter Roeck2011-03-15
| | | | | Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
* hwmon: (pmbus) Add support for Maxim MAX8688Guenter Roeck2011-03-15
| | | | | Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
* hwmon: PMBus device driverGuenter Roeck2011-03-15
| | | | | | | | This driver adds support for hardware monitoring features of various PMBus devices. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
* hwmon: (lm85) Add support for EMC6D103SGuenter Roeck2011-03-15
| | | | | | | | | EMC6D103S is similar to EMC6D103, only it does not support registers 62[5:7], 6D[0:7], and 6E[0:7]. Register respective sysfs attributes and update affected registers for all other chips only. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jean Delvare <khali@linux-fr.org>
* hwmon: (lm85) Do not update hysteresis and temp_auto_off if auto_temp_min is ↵Guenter Roeck2011-03-15
| | | | | | | | | | | | | | | changed So far, the driver updates temp_auto_hyst and temp_auto_off if temp_auto_min changes. This may cause problems if temp_auto_off was not configured before configuring temp_auto_min, because one of the variables used (off_desired) is not initialized in this case. To simplify the code, and for consistency with other drivers, no longer update the delta between "min" and "off" until the user sets the "off" value again. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jean Delvare <khali@linux-fr.org>
* hwmon: (lm85) Use function to remove sysfs attribute filesGuenter Roeck2011-03-15
| | | | | Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jean Delvare <khali@linux-fr.org>
* hwmon: (lm85) Use boolean to determine if VID5 is configuredGuenter Roeck2011-03-15
| | | | | | | | | ADT7463 and ADT7468 optionally support VID5 instead of the standard +12V measurement input. Use a boolean to identify the chip configuration instead of hardcoding it several times. Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jean Delvare <khali@linux-fr.org>
* hwmon: Add support for Lineage Compact Power Line PEM devicesGuenter Roeck2011-03-15
| | | | | | | | This patch adds support for hardware monitoring of Lineage Compact Power Line Power Entry Modules. Reviewed-by: Tom Grennan <tom.grennan@ericsson.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (lis3lv02d) Convert SPI to dev_pm_opsMark Brown2011-03-15
| | | | | | | | | | There is a move to deprecate bus-specific PM operations and move to using dev_pm_ops instead in order to reduce the amount of boilerplate code in buses and facilitiate updates to the PM core. Do this move for the lis3lv02d SPI driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (max6639) Set reasonable default PWM frequencystigge@antcom.de2011-03-15
| | | | | | | | This patch initializes register CONFIG3 to a reasonable default PWM frequency of 25kHz, to prevent audible sound in fan. Signed-off-by: Roland Stigge <stigge@antcom.de> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: Driver for Maxim MAX6639stigge@antcom.de2011-03-15
| | | | | | | 2-Channel Temperature Monitor with Dual PWM Fan-Speed Controller Signed-off-by: Roland Stigge <stigge@antcom.de> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Set platform drvdata to NULL laterHans de Goede2011-03-13
| | | | | | | | | This avoids a possible race leading to trying to dereference NULL. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Jean Delvare <khali@linux-fr.org> Cc: stable@kernel.org Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon/f71882fg: Fix a typo in a commentHans de Goede2011-03-13
| | | | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (adt7411) add MODULE_DEVICE_TABLEaxel lin2011-02-26
| | | | | | | | The device table is required to load modules based on modaliases. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (ad7414) add MODULE_DEVICE_TABLEaxel lin2011-02-26
| | | | | | | The device table is required to load modules based on modaliases. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (lm85) extend to support EMC6D103 chipsJan Beulich2011-02-18
| | | | | | | | | | | | | | | The interface is identical EMC6D102, so all that needs to be added are some definitions and their uses. Registers apparently missing in EMC6D103S/EMC6D103:A2 compared to EMC6D103:A0, EMC6D103:A1, and EMC6D102 (according to the data sheets), but used unconditionally in the driver: 62[5:7], 6D[0:7], and 6E[0:7]. For that reason, EMC6D103S chips don't get enabled for the time being. Signed-off-by: Jan Beulich <jbeulich@novell.com> (Guenter Roeck: Replaced EMC6D103_A2 with EMC6D103S per EMC6D103S datasheet) Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Cc: stable@kernel.org
* hwmon: (k10temp) add support for AMD Family 12h/14h CPUsClemens Ladisch2011-02-18
| | | | | | | | | | Add the PCI ID to support the internal temperature sensor of the AMD "Llano" and "Brazos" processor families. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Cc: stable@kernel.org # ca86828: x86, AMD, PCI: Add AMD northbridge PCI device Cc: stable@kernel.org Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (jc42) do not allow writing to locked registersClemens Ladisch2011-02-16
| | | | | | | | | | | | | On systems where the temperature sensor is actually used, the BIOS is likely to have locked the alarm registers. In that case, all writes through the corresponding sysfs files would be silently ignored. To prevent this, detect the locks and make the affected sysfs files read-only. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Cc: stable@kernel.org Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (jc42) more helpful documentationClemens Ladisch2011-02-16
| | | | | | | | | | | | | The documentation lists standard numbers and chip names in excruciating detail, but that's all it does. To help mere mortals in deciding whether to enable this driver, mention what this sensor is for and in which systems it might be found. Also add a link to the actual JC 42.4 specification. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Cc: stable@kernel.org Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
* hwmon: (jc42) fix type mismatchClemens Ladisch2011-02-16
| | | | | | | | | In set_temp_crit_hyst(), make the variable 'val' have the correct type for strict_strtoul(). Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Cc: stable@kernel.org Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>