|
Linux Kernel
3.7.1
|
#include <linux/module.h>#include <linux/init.h>#include <linux/slab.h>#include <linux/jiffies.h>#include <linux/platform_device.h>#include <linux/hwmon.h>#include <linux/hwmon-sysfs.h>#include <linux/err.h>#include <linux/mutex.h>#include <linux/io.h>#include <linux/acpi.h>Go to the source code of this file.
Data Structures | |
| struct | f71882fg_sio_data |
| struct | f71882fg_data |
Macros | |
| #define | pr_fmt(fmt) KBUILD_MODNAME ": " fmt |
| #define | DRVNAME "f71882fg" |
| #define | SIO_F71858FG_LD_HWM 0x02 /* Hardware monitor logical device */ |
| #define | SIO_F71882FG_LD_HWM 0x04 /* Hardware monitor logical device */ |
| #define | SIO_UNLOCK_KEY 0x87 /* Key to enable Super-I/O */ |
| #define | SIO_LOCK_KEY 0xAA /* Key to disable Super-I/O */ |
| #define | SIO_REG_LDSEL 0x07 /* Logical device select */ |
| #define | SIO_REG_DEVID 0x20 /* Device ID (2 bytes) */ |
| #define | SIO_REG_DEVREV 0x22 /* Device revision */ |
| #define | SIO_REG_MANID 0x23 /* Fintek ID (2 bytes) */ |
| #define | SIO_REG_ENABLE 0x30 /* Logical device enable */ |
| #define | SIO_REG_ADDR 0x60 /* Logical device address (2 bytes) */ |
| #define | SIO_FINTEK_ID 0x1934 /* Manufacturers ID */ |
| #define | SIO_F71808E_ID 0x0901 /* Chipset ID */ |
| #define | SIO_F71808A_ID 0x1001 /* Chipset ID */ |
| #define | SIO_F71858_ID 0x0507 /* Chipset ID */ |
| #define | SIO_F71862_ID 0x0601 /* Chipset ID */ |
| #define | SIO_F71869_ID 0x0814 /* Chipset ID */ |
| #define | SIO_F71869A_ID 0x1007 /* Chipset ID */ |
| #define | SIO_F71882_ID 0x0541 /* Chipset ID */ |
| #define | SIO_F71889_ID 0x0723 /* Chipset ID */ |
| #define | SIO_F71889E_ID 0x0909 /* Chipset ID */ |
| #define | SIO_F71889A_ID 0x1005 /* Chipset ID */ |
| #define | SIO_F8000_ID 0x0581 /* Chipset ID */ |
| #define | SIO_F81865_ID 0x0704 /* Chipset ID */ |
| #define | REGION_LENGTH 8 |
| #define | ADDR_REG_OFFSET 5 |
| #define | DATA_REG_OFFSET 6 |
| #define | F71882FG_REG_IN_STATUS 0x12 /* f7188x only */ |
| #define | F71882FG_REG_IN_BEEP 0x13 /* f7188x only */ |
| #define | F71882FG_REG_IN(nr) (0x20 + (nr)) |
| #define | F71882FG_REG_IN1_HIGH 0x32 /* f7188x only */ |
| #define | F71882FG_REG_FAN(nr) (0xA0 + (16 * (nr))) |
| #define | F71882FG_REG_FAN_TARGET(nr) (0xA2 + (16 * (nr))) |
| #define | F71882FG_REG_FAN_FULL_SPEED(nr) (0xA4 + (16 * (nr))) |
| #define | F71882FG_REG_FAN_STATUS 0x92 |
| #define | F71882FG_REG_FAN_BEEP 0x93 |
| #define | F71882FG_REG_TEMP(nr) (0x70 + 2 * (nr)) |
| #define | F71882FG_REG_TEMP_OVT(nr) (0x80 + 2 * (nr)) |
| #define | F71882FG_REG_TEMP_HIGH(nr) (0x81 + 2 * (nr)) |
| #define | F71882FG_REG_TEMP_STATUS 0x62 |
| #define | F71882FG_REG_TEMP_BEEP 0x63 |
| #define | F71882FG_REG_TEMP_CONFIG 0x69 |
| #define | F71882FG_REG_TEMP_HYST(nr) (0x6C + (nr)) |
| #define | F71882FG_REG_TEMP_TYPE 0x6B |
| #define | F71882FG_REG_TEMP_DIODE_OPEN 0x6F |
| #define | F71882FG_REG_PWM(nr) (0xA3 + (16 * (nr))) |
| #define | F71882FG_REG_PWM_TYPE 0x94 |
| #define | F71882FG_REG_PWM_ENABLE 0x96 |
| #define | F71882FG_REG_FAN_HYST(nr) (0x98 + (nr)) |
| #define | F71882FG_REG_FAN_FAULT_T 0x9F |
| #define | F71882FG_FAN_NEG_TEMP_EN 0x20 |
| #define | F71882FG_FAN_PROG_SEL 0x80 |
| #define | F71882FG_REG_POINT_PWM(pwm, point) (0xAA + (point) + (16 * (pwm))) |
| #define | F71882FG_REG_POINT_TEMP(pwm, point) (0xA6 + (point) + (16 * (pwm))) |
| #define | F71882FG_REG_POINT_MAPPING(nr) (0xAF + 16 * (nr)) |
| #define | F71882FG_REG_START 0x01 |
| #define | F71882FG_MAX_INS 9 |
| #define | FAN_MIN_DETECT 366 /* Lowest detectable fanspeed */ |
Functions | |
| module_param (force_id, ushort, 0) | |
| MODULE_PARM_DESC (force_id,"Override the detected device ID") | |
| MODULE_DESCRIPTION ("F71882FG Hardware Monitoring Driver") | |
| MODULE_AUTHOR ("Hans Edgington, Hans de Goede <[email protected]>") | |
| MODULE_LICENSE ("GPL") | |
| module_init (f71882fg_init) | |
| module_exit (f71882fg_exit) | |
| #define ADDR_REG_OFFSET 5 |
Definition at line 64 of file f71882fg.c.
| #define DATA_REG_OFFSET 6 |
Definition at line 65 of file f71882fg.c.
| #define DRVNAME "f71882fg" |
Definition at line 35 of file f71882fg.c.
| #define F71882FG_FAN_NEG_TEMP_EN 0x20 |
Definition at line 95 of file f71882fg.c.
| #define F71882FG_FAN_PROG_SEL 0x80 |
Definition at line 96 of file f71882fg.c.
| #define F71882FG_MAX_INS 9 |
Definition at line 104 of file f71882fg.c.
| #define F71882FG_REG_FAN | ( | nr | ) | (0xA0 + (16 * (nr))) |
Definition at line 72 of file f71882fg.c.
| #define F71882FG_REG_FAN_BEEP 0x93 |
Definition at line 76 of file f71882fg.c.
| #define F71882FG_REG_FAN_FAULT_T 0x9F |
Definition at line 94 of file f71882fg.c.
| #define F71882FG_REG_FAN_FULL_SPEED | ( | nr | ) | (0xA4 + (16 * (nr))) |
Definition at line 74 of file f71882fg.c.
| #define F71882FG_REG_FAN_HYST | ( | nr | ) | (0x98 + (nr)) |
Definition at line 92 of file f71882fg.c.
| #define F71882FG_REG_FAN_STATUS 0x92 |
Definition at line 75 of file f71882fg.c.
| #define F71882FG_REG_FAN_TARGET | ( | nr | ) | (0xA2 + (16 * (nr))) |
Definition at line 73 of file f71882fg.c.
| #define F71882FG_REG_IN | ( | nr | ) | (0x20 + (nr)) |
Definition at line 69 of file f71882fg.c.
| #define F71882FG_REG_IN1_HIGH 0x32 /* f7188x only */ |
Definition at line 70 of file f71882fg.c.
| #define F71882FG_REG_IN_BEEP 0x13 /* f7188x only */ |
Definition at line 68 of file f71882fg.c.
| #define F71882FG_REG_IN_STATUS 0x12 /* f7188x only */ |
Definition at line 67 of file f71882fg.c.
| #define F71882FG_REG_POINT_MAPPING | ( | nr | ) | (0xAF + 16 * (nr)) |
Definition at line 100 of file f71882fg.c.
Definition at line 98 of file f71882fg.c.
Definition at line 99 of file f71882fg.c.
| #define F71882FG_REG_PWM | ( | nr | ) | (0xA3 + (16 * (nr))) |
Definition at line 88 of file f71882fg.c.
| #define F71882FG_REG_PWM_ENABLE 0x96 |
Definition at line 90 of file f71882fg.c.
| #define F71882FG_REG_PWM_TYPE 0x94 |
Definition at line 89 of file f71882fg.c.
| #define F71882FG_REG_START 0x01 |
Definition at line 102 of file f71882fg.c.
| #define F71882FG_REG_TEMP | ( | nr | ) | (0x70 + 2 * (nr)) |
Definition at line 78 of file f71882fg.c.
| #define F71882FG_REG_TEMP_BEEP 0x63 |
Definition at line 82 of file f71882fg.c.
| #define F71882FG_REG_TEMP_CONFIG 0x69 |
Definition at line 83 of file f71882fg.c.
| #define F71882FG_REG_TEMP_DIODE_OPEN 0x6F |
Definition at line 86 of file f71882fg.c.
| #define F71882FG_REG_TEMP_HIGH | ( | nr | ) | (0x81 + 2 * (nr)) |
Definition at line 80 of file f71882fg.c.
| #define F71882FG_REG_TEMP_HYST | ( | nr | ) | (0x6C + (nr)) |
Definition at line 84 of file f71882fg.c.
| #define F71882FG_REG_TEMP_OVT | ( | nr | ) | (0x80 + 2 * (nr)) |
Definition at line 79 of file f71882fg.c.
| #define F71882FG_REG_TEMP_STATUS 0x62 |
Definition at line 81 of file f71882fg.c.
| #define F71882FG_REG_TEMP_TYPE 0x6B |
Definition at line 85 of file f71882fg.c.
| #define FAN_MIN_DETECT 366 /* Lowest detectable fanspeed */ |
Definition at line 106 of file f71882fg.c.
Definition at line 21 of file f71882fg.c.
| #define REGION_LENGTH 8 |
Definition at line 63 of file f71882fg.c.
| #define SIO_F71808A_ID 0x1001 /* Chipset ID */ |
Definition at line 51 of file f71882fg.c.
| #define SIO_F71808E_ID 0x0901 /* Chipset ID */ |
Definition at line 50 of file f71882fg.c.
| #define SIO_F71858_ID 0x0507 /* Chipset ID */ |
Definition at line 52 of file f71882fg.c.
| #define SIO_F71858FG_LD_HWM 0x02 /* Hardware monitor logical device */ |
Definition at line 37 of file f71882fg.c.
| #define SIO_F71862_ID 0x0601 /* Chipset ID */ |
Definition at line 53 of file f71882fg.c.
| #define SIO_F71869_ID 0x0814 /* Chipset ID */ |
Definition at line 54 of file f71882fg.c.
| #define SIO_F71869A_ID 0x1007 /* Chipset ID */ |
Definition at line 55 of file f71882fg.c.
| #define SIO_F71882_ID 0x0541 /* Chipset ID */ |
Definition at line 56 of file f71882fg.c.
| #define SIO_F71882FG_LD_HWM 0x04 /* Hardware monitor logical device */ |
Definition at line 38 of file f71882fg.c.
| #define SIO_F71889_ID 0x0723 /* Chipset ID */ |
Definition at line 57 of file f71882fg.c.
| #define SIO_F71889A_ID 0x1005 /* Chipset ID */ |
Definition at line 59 of file f71882fg.c.
| #define SIO_F71889E_ID 0x0909 /* Chipset ID */ |
Definition at line 58 of file f71882fg.c.
| #define SIO_F8000_ID 0x0581 /* Chipset ID */ |
Definition at line 60 of file f71882fg.c.
| #define SIO_F81865_ID 0x0704 /* Chipset ID */ |
Definition at line 61 of file f71882fg.c.
| #define SIO_FINTEK_ID 0x1934 /* Manufacturers ID */ |
Definition at line 49 of file f71882fg.c.
| #define SIO_LOCK_KEY 0xAA /* Key to disable Super-I/O */ |
Definition at line 40 of file f71882fg.c.
| #define SIO_REG_ADDR 0x60 /* Logical device address (2 bytes) */ |
Definition at line 47 of file f71882fg.c.
| #define SIO_REG_DEVID 0x20 /* Device ID (2 bytes) */ |
Definition at line 43 of file f71882fg.c.
| #define SIO_REG_DEVREV 0x22 /* Device revision */ |
Definition at line 44 of file f71882fg.c.
| #define SIO_REG_ENABLE 0x30 /* Logical device enable */ |
Definition at line 46 of file f71882fg.c.
| #define SIO_REG_LDSEL 0x07 /* Logical device select */ |
Definition at line 42 of file f71882fg.c.
| #define SIO_REG_MANID 0x23 /* Fintek ID (2 bytes) */ |
Definition at line 45 of file f71882fg.c.
| #define SIO_UNLOCK_KEY 0x87 /* Key to enable Super-I/O */ |
Definition at line 39 of file f71882fg.c.
| enum chips |
Definition at line 112 of file f71882fg.c.
| MODULE_AUTHOR | ( | "Hans | Edgington, |
| Hans de Goede< hdegoede @redhat.com >" | |||
| ) |
| MODULE_DESCRIPTION | ( | "F71882FG Hardware Monitoring Driver" | ) |
| module_exit | ( | f71882fg_exit | ) |
| module_init | ( | f71882fg_init | ) |
| MODULE_LICENSE | ( | "GPL" | ) |
| module_param | ( | force_id | , |
| ushort | , | ||
| 0 | |||
| ) |
1.8.2