Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
sbs-battery.c File Reference
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/err.h>
#include <linux/power_supply.h>
#include <linux/i2c.h>
#include <linux/slab.h>
#include <linux/interrupt.h>
#include <linux/gpio.h>
#include <linux/power/sbs-battery.h>

Go to the source code of this file.

Data Structures

struct  chip_data
 
struct  sbs_info
 

Macros

#define BATTERY_MODE_OFFSET   0x03
 
#define BATTERY_MODE_MASK   0x8000
 
#define MANUFACTURER_ACCESS_STATUS   0x0006
 
#define MANUFACTURER_ACCESS_SLEEP   0x0011
 
#define BATTERY_DISCHARGING   0x40
 
#define BATTERY_FULL_CHARGED   0x20
 
#define BATTERY_FULL_DISCHARGED   0x10
 
#define SBS_DATA(_psp, _addr, _min_value, _max_value)
 
#define BASE_UNIT_CONVERSION   1000
 
#define BATTERY_MODE_CAP_MULT_WATT   (10 * BASE_UNIT_CONVERSION)
 
#define TIME_UNIT_CONVERSION   60
 
#define TEMP_KELVIN_TO_CELSIUS   2731
 
#define sbs_dt_ids   NULL
 
#define sbs_suspend   NULL
 
#define sbs_resume   NULL
 

Enumerations

enum  {
  REG_MANUFACTURER_DATA, REG_TEMPERATURE, REG_VOLTAGE, REG_CURRENT,
  REG_CAPACITY, REG_TIME_TO_EMPTY, REG_TIME_TO_FULL, REG_STATUS,
  REG_CYCLE_COUNT, REG_SERIAL_NUMBER, REG_REMAINING_CAPACITY, REG_REMAINING_CAPACITY_CHARGE,
  REG_FULL_CHARGE_CAPACITY, REG_FULL_CHARGE_CAPACITY_CHARGE, REG_DESIGN_CAPACITY, REG_DESIGN_CAPACITY_CHARGE,
  REG_DESIGN_VOLTAGE
}
 
enum  sbs_battery_mode { BATTERY_MODE_AMPS, BATTERY_MODE_WATTS }
 

Functions

 MODULE_DEVICE_TABLE (i2c, sbs_id)
 
 module_i2c_driver (sbs_battery_driver)
 
 MODULE_DESCRIPTION ("SBS battery monitor driver")
 
 MODULE_LICENSE ("GPL")
 

Macro Definition Documentation

#define BASE_UNIT_CONVERSION   1000
#define BATTERY_DISCHARGING   0x40

Definition at line 66 of file sbs-battery.c.

#define BATTERY_FULL_CHARGED   0x20

Definition at line 67 of file sbs-battery.c.

#define BATTERY_FULL_DISCHARGED   0x10

Definition at line 68 of file sbs-battery.c.

#define BATTERY_MODE_CAP_MULT_WATT   (10 * BASE_UNIT_CONVERSION)
#define BATTERY_MODE_MASK   0x8000

Definition at line 55 of file sbs-battery.c.

#define BATTERY_MODE_OFFSET   0x03

Definition at line 54 of file sbs-battery.c.

#define MANUFACTURER_ACCESS_SLEEP   0x0011

Definition at line 63 of file sbs-battery.c.

#define MANUFACTURER_ACCESS_STATUS   0x0006

Definition at line 62 of file sbs-battery.c.

#define SBS_DATA (   _psp,
  _addr,
  _min_value,
  _max_value 
)
Value:
{ \
.psp = _psp, \
.addr = _addr, \
.min_value = _min_value, \
.max_value = _max_value, \
}

Definition at line 70 of file sbs-battery.c.

#define sbs_dt_ids   NULL

Definition at line 670 of file sbs-battery.c.

#define sbs_resume   NULL

Definition at line 845 of file sbs-battery.c.

#define sbs_suspend   NULL

Definition at line 842 of file sbs-battery.c.

#define TEMP_KELVIN_TO_CELSIUS   2731
#define TIME_UNIT_CONVERSION   60

Enumeration Type Documentation

anonymous enum
Enumerator:
REG_MANUFACTURER_DATA 
REG_TEMPERATURE 
REG_VOLTAGE 
REG_CURRENT 
REG_CAPACITY 
REG_TIME_TO_EMPTY 
REG_TIME_TO_FULL 
REG_STATUS 
REG_CYCLE_COUNT 
REG_SERIAL_NUMBER 
REG_REMAINING_CAPACITY 
REG_REMAINING_CAPACITY_CHARGE 
REG_FULL_CHARGE_CAPACITY 
REG_FULL_CHARGE_CAPACITY_CHARGE 
REG_DESIGN_CAPACITY 
REG_DESIGN_CAPACITY_CHARGE 
REG_DESIGN_VOLTAGE 

Definition at line 33 of file sbs-battery.c.

Enumerator:
BATTERY_MODE_AMPS 
BATTERY_MODE_WATTS 

Definition at line 56 of file sbs-battery.c.

Function Documentation

MODULE_DESCRIPTION ( "SBS battery monitor driver )
MODULE_DEVICE_TABLE ( i2c  ,
sbs_id   
)
module_i2c_driver ( sbs_battery_driver  )
MODULE_LICENSE ( "GPL"  )