Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
abituguru3.c File Reference
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/jiffies.h>
#include <linux/mutex.h>
#include <linux/err.h>
#include <linux/delay.h>
#include <linux/platform_device.h>
#include <linux/hwmon.h>
#include <linux/hwmon-sysfs.h>
#include <linux/dmi.h>
#include <linux/io.h>

Go to the source code of this file.

Data Structures

struct  abituguru3_sensor_info
 
struct  abituguru3_motherboard_info
 
struct  abituguru3_data
 

Macros

#define pr_fmt(fmt)   KBUILD_MODNAME ": " fmt
 
#define ABIT_UGURU3_SETTINGS_BANK   0x01
 
#define ABIT_UGURU3_SENSORS_BANK   0x08
 
#define ABIT_UGURU3_MISC_BANK   0x09
 
#define ABIT_UGURU3_ALARMS_START   0x1E
 
#define ABIT_UGURU3_SETTINGS_START   0x24
 
#define ABIT_UGURU3_VALUES_START   0x80
 
#define ABIT_UGURU3_BOARD_ID   0x0A
 
#define ABIT_UGURU3_TEMP_HIGH_ALARM_ENABLE   0x01 /* temp over warn */
 
#define ABIT_UGURU3_VOLT_HIGH_ALARM_ENABLE   0x02 /* volt over max */
 
#define ABIT_UGURU3_VOLT_LOW_ALARM_ENABLE   0x04 /* volt under min */
 
#define ABIT_UGURU3_TEMP_HIGH_ALARM_FLAG   0x10 /* temp is over warn */
 
#define ABIT_UGURU3_VOLT_HIGH_ALARM_FLAG   0x20 /* volt is over max */
 
#define ABIT_UGURU3_VOLT_LOW_ALARM_FLAG   0x40 /* volt is under min */
 
#define ABIT_UGURU3_FAN_LOW_ALARM_ENABLE   0x01 /* fan under min */
 
#define ABIT_UGURU3_BEEP_ENABLE   0x08 /* beep if alarm */
 
#define ABIT_UGURU3_SHUTDOWN_ENABLE   0x80 /* shutdown if alarm */
 
#define ABIT_UGURU3_IN_SENSOR   0
 
#define ABIT_UGURU3_TEMP_SENSOR   1
 
#define ABIT_UGURU3_FAN_SENSOR   2
 
#define ABIT_UGURU3_WAIT_TIMEOUT   250
 
#define ABIT_UGURU3_SYNCHRONIZE_TIMEOUT   5
 
#define ABIT_UGURU3_NAME   "abituguru3"
 
#define ABIT_UGURU3_DEBUG(format, arg...)
 
#define ABIT_UGURU3_MAX_NO_SENSORS   26
 
#define ABIT_UGURU3_IN_NAMES_LENGTH   (11 + 2 * 9 + 2 * 15 + 2 * 22 + 10 + 14 + 11)
 
#define ABIT_UGURU3_TEMP_NAMES_LENGTH   (13 + 11 + 12 + 13 + 20 + 12 + 16 + 13)
 
#define ABIT_UGURU3_FAN_NAMES_LENGTH   (12 + 10 + 12 + 19 + 11 + 15 + 12)
 
#define ABIT_UGURU3_SYSFS_NAMES_LENGTH
 
#define ABIT_UGURU3_BASE   0x00E0
 
#define ABIT_UGURU3_CMD   0x00
 
#define ABIT_UGURU3_DATA   0x04
 
#define ABIT_UGURU3_REGION_LENGTH   5
 
#define ABIT_UGURU3_SUCCESS   -1
 
#define ABIT_UGURU3_STATUS_READY_FOR_READ   0x01
 
#define ABIT_UGURU3_STATUS_BUSY   0x02
 
#define ABIT_UGURU3_MAX_DMI_NAMES   2
 
#define ABIT_UGURU3_PM   NULL
 

Functions

 module_param (force, bool, 0)
 
 MODULE_PARM_DESC (force,"Set to one to force detection.")
 
 module_param (verbose, bool, 0644)
 
 MODULE_PARM_DESC (verbose,"Enable/disable verbose error reporting")
 
 MODULE_AUTHOR ("Hans de Goede <[email protected]>")
 
 MODULE_DESCRIPTION ("Abit uGuru3 Sensor device")
 
 MODULE_LICENSE ("GPL")
 
 module_init (abituguru3_init)
 
 module_exit (abituguru3_exit)
 

Macro Definition Documentation

#define ABIT_UGURU3_ALARMS_START   0x1E

Definition at line 46 of file abituguru3.c.

#define ABIT_UGURU3_BASE   0x00E0

Definition at line 116 of file abituguru3.c.

#define ABIT_UGURU3_BEEP_ENABLE   0x08 /* beep if alarm */

Definition at line 58 of file abituguru3.c.

#define ABIT_UGURU3_BOARD_ID   0x0A

Definition at line 49 of file abituguru3.c.

#define ABIT_UGURU3_CMD   0x00

Definition at line 117 of file abituguru3.c.

#define ABIT_UGURU3_DATA   0x04

Definition at line 118 of file abituguru3.c.

#define ABIT_UGURU3_DEBUG (   format,
  arg... 
)
Value:
if (verbose) \

Definition at line 79 of file abituguru3.c.

#define ABIT_UGURU3_FAN_LOW_ALARM_ENABLE   0x01 /* fan under min */

Definition at line 57 of file abituguru3.c.

#define ABIT_UGURU3_FAN_NAMES_LENGTH   (12 + 10 + 12 + 19 + 11 + 15 + 12)

Definition at line 101 of file abituguru3.c.

#define ABIT_UGURU3_FAN_SENSOR   2

Definition at line 63 of file abituguru3.c.

#define ABIT_UGURU3_IN_NAMES_LENGTH   (11 + 2 * 9 + 2 * 15 + 2 * 22 + 10 + 14 + 11)

Definition at line 89 of file abituguru3.c.

#define ABIT_UGURU3_IN_SENSOR   0

Definition at line 61 of file abituguru3.c.

#define ABIT_UGURU3_MAX_DMI_NAMES   2

Definition at line 141 of file abituguru3.c.

#define ABIT_UGURU3_MAX_NO_SENSORS   26

Definition at line 84 of file abituguru3.c.

#define ABIT_UGURU3_MISC_BANK   0x09

Definition at line 45 of file abituguru3.c.

#define ABIT_UGURU3_NAME   "abituguru3"

Definition at line 78 of file abituguru3.c.

#define ABIT_UGURU3_PM   NULL

Definition at line 1164 of file abituguru3.c.

#define ABIT_UGURU3_REGION_LENGTH   5

Definition at line 119 of file abituguru3.c.

#define ABIT_UGURU3_SENSORS_BANK   0x08

Definition at line 44 of file abituguru3.c.

#define ABIT_UGURU3_SETTINGS_BANK   0x01

Definition at line 43 of file abituguru3.c.

#define ABIT_UGURU3_SETTINGS_START   0x24

Definition at line 47 of file abituguru3.c.

#define ABIT_UGURU3_SHUTDOWN_ENABLE   0x80 /* shutdown if alarm */

Definition at line 59 of file abituguru3.c.

#define ABIT_UGURU3_STATUS_BUSY   0x02

Definition at line 127 of file abituguru3.c.

#define ABIT_UGURU3_STATUS_READY_FOR_READ   0x01

Definition at line 126 of file abituguru3.c.

#define ABIT_UGURU3_SUCCESS   -1

Definition at line 124 of file abituguru3.c.

#define ABIT_UGURU3_SYNCHRONIZE_TIMEOUT   5

Definition at line 76 of file abituguru3.c.

#define ABIT_UGURU3_SYSFS_NAMES_LENGTH
#define ABIT_UGURU3_TEMP_HIGH_ALARM_ENABLE   0x01 /* temp over warn */

Definition at line 51 of file abituguru3.c.

#define ABIT_UGURU3_TEMP_HIGH_ALARM_FLAG   0x10 /* temp is over warn */

Definition at line 54 of file abituguru3.c.

#define ABIT_UGURU3_TEMP_NAMES_LENGTH   (13 + 11 + 12 + 13 + 20 + 12 + 16 + 13)

Definition at line 96 of file abituguru3.c.

#define ABIT_UGURU3_TEMP_SENSOR   1

Definition at line 62 of file abituguru3.c.

#define ABIT_UGURU3_VALUES_START   0x80

Definition at line 48 of file abituguru3.c.

#define ABIT_UGURU3_VOLT_HIGH_ALARM_ENABLE   0x02 /* volt over max */

Definition at line 52 of file abituguru3.c.

#define ABIT_UGURU3_VOLT_HIGH_ALARM_FLAG   0x20 /* volt is over max */

Definition at line 55 of file abituguru3.c.

#define ABIT_UGURU3_VOLT_LOW_ALARM_ENABLE   0x04 /* volt under min */

Definition at line 53 of file abituguru3.c.

#define ABIT_UGURU3_VOLT_LOW_ALARM_FLAG   0x40 /* volt is under min */

Definition at line 56 of file abituguru3.c.

#define ABIT_UGURU3_WAIT_TIMEOUT   250

Definition at line 71 of file abituguru3.c.

#define pr_fmt (   fmt)    KBUILD_MODNAME ": " fmt

Definition at line 27 of file abituguru3.c.

Function Documentation

MODULE_AUTHOR ( "Hans de Goede <[email protected]>"  )
MODULE_DESCRIPTION ( "Abit uGuru3 Sensor device )
module_exit ( abituguru3_exit  )
module_init ( abituguru3_init  )
MODULE_LICENSE ( "GPL"  )
module_param ( force  ,
bool  ,
 
)
module_param ( verbose  ,
bool  ,
0644   
)
MODULE_PARM_DESC ( force  ,
"Set to one to force detection."   
)
MODULE_PARM_DESC ( verbose  ,
"Enable/disable verbose error reporting"   
)