Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/i2c-2.6
This commit is contained in:
commit
0feb9bfcfa
124 changed files with 1549 additions and 746 deletions
|
@ -23,14 +23,14 @@
|
|||
#ifndef _LINUX_HWMON_VID_H
|
||||
#define _LINUX_HWMON_VID_H
|
||||
|
||||
int vid_from_reg(int val, int vrm);
|
||||
int vid_which_vrm(void);
|
||||
int vid_from_reg(int val, u8 vrm);
|
||||
u8 vid_which_vrm(void);
|
||||
|
||||
/* vrm is the VRM/VRD document version multiplied by 10.
|
||||
val is in mV to avoid floating point in the kernel.
|
||||
Returned value is the 4-, 5- or 6-bit VID code.
|
||||
Note that only VRM 9.x is supported for now. */
|
||||
static inline int vid_to_reg(int val, int vrm)
|
||||
static inline int vid_to_reg(int val, u8 vrm)
|
||||
{
|
||||
switch (vrm) {
|
||||
case 91: /* VRM 9.1 */
|
||||
|
|
|
@ -25,12 +25,6 @@
|
|||
|
||||
/*
|
||||
* ---- Driver types -----------------------------------------------------
|
||||
* device id name + number function description, i2c address(es)
|
||||
*
|
||||
* Range 1000-1999 range is defined in sensors/sensors.h
|
||||
* Range 0x100 - 0x1ff is for V4L2 Common Components
|
||||
* Range 0xf000 - 0xffff is reserved for local experimentation, and should
|
||||
* never be used in official drivers
|
||||
*/
|
||||
|
||||
#define I2C_DRIVERID_MSP3400 1
|
||||
|
@ -110,13 +104,7 @@
|
|||
#define I2C_DRIVERID_AKITAIOEXP 74 /* IO Expander on Sharp SL-C1000 */
|
||||
#define I2C_DRIVERID_INFRARED 75 /* I2C InfraRed on Video boards */
|
||||
|
||||
#define I2C_DRIVERID_EXP0 0xF0 /* experimental use id's */
|
||||
#define I2C_DRIVERID_EXP1 0xF1
|
||||
#define I2C_DRIVERID_EXP2 0xF2
|
||||
#define I2C_DRIVERID_EXP3 0xF3
|
||||
|
||||
#define I2C_DRIVERID_I2CDEV 900
|
||||
#define I2C_DRIVERID_I2CPROC 901
|
||||
#define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */
|
||||
#define I2C_DRIVERID_ALERT 903 /* SMBus Alert Responder Client */
|
||||
|
||||
|
@ -131,15 +119,12 @@
|
|||
#define I2C_DRIVERID_ADM1021 1008
|
||||
#define I2C_DRIVERID_ADM9240 1009
|
||||
#define I2C_DRIVERID_LTC1710 1010
|
||||
#define I2C_DRIVERID_SIS5595 1011
|
||||
#define I2C_DRIVERID_ICSPLL 1012
|
||||
#define I2C_DRIVERID_BT869 1013
|
||||
#define I2C_DRIVERID_MAXILIFE 1014
|
||||
#define I2C_DRIVERID_MATORB 1015
|
||||
#define I2C_DRIVERID_GL520 1016
|
||||
#define I2C_DRIVERID_THMC50 1017
|
||||
#define I2C_DRIVERID_DDCMON 1018
|
||||
#define I2C_DRIVERID_VIA686A 1019
|
||||
#define I2C_DRIVERID_ADM1025 1020
|
||||
#define I2C_DRIVERID_LM87 1021
|
||||
#define I2C_DRIVERID_PCF8574 1022
|
||||
|
@ -151,21 +136,16 @@
|
|||
#define I2C_DRIVERID_FSCPOS 1028
|
||||
#define I2C_DRIVERID_FSCSCY 1029
|
||||
#define I2C_DRIVERID_PCF8591 1030
|
||||
#define I2C_DRIVERID_SMSC47M1 1031
|
||||
#define I2C_DRIVERID_VT1211 1032
|
||||
#define I2C_DRIVERID_LM92 1033
|
||||
#define I2C_DRIVERID_VT8231 1034
|
||||
#define I2C_DRIVERID_SMARTBATT 1035
|
||||
#define I2C_DRIVERID_BMCSENSORS 1036
|
||||
#define I2C_DRIVERID_FS451 1037
|
||||
#define I2C_DRIVERID_W83627HF 1038
|
||||
#define I2C_DRIVERID_LM85 1039
|
||||
#define I2C_DRIVERID_LM83 1040
|
||||
#define I2C_DRIVERID_LM90 1042
|
||||
#define I2C_DRIVERID_ASB100 1043
|
||||
#define I2C_DRIVERID_FSCHER 1046
|
||||
#define I2C_DRIVERID_W83L785TS 1047
|
||||
#define I2C_DRIVERID_SMSC47B397 1050
|
||||
|
||||
/*
|
||||
* ---- Adapter types ----------------------------------------------------
|
||||
|
|
|
@ -105,14 +105,14 @@ extern s32 i2c_smbus_read_i2c_block_data(struct i2c_client * client,
|
|||
* A driver is capable of handling one or more physical devices present on
|
||||
* I2C adapters. This information is used to inform the driver of adapter
|
||||
* events.
|
||||
*
|
||||
* The driver.owner field should be set to the module owner of this driver.
|
||||
* The driver.name field should be set to the name of this driver.
|
||||
*/
|
||||
|
||||
struct i2c_driver {
|
||||
struct module *owner;
|
||||
char name[32];
|
||||
int id;
|
||||
unsigned int class;
|
||||
unsigned int flags; /* div., see below */
|
||||
|
||||
/* Notifies the driver that a new bus has appeared. This routine
|
||||
* can be used by the driver to test if the bus meets its conditions
|
||||
|
@ -250,18 +250,7 @@ static inline void i2c_set_adapdata (struct i2c_adapter *dev, void *data)
|
|||
dev_set_drvdata (&dev->dev, data);
|
||||
}
|
||||
|
||||
/*flags for the driver struct: */
|
||||
#define I2C_DF_NOTIFY 0x01 /* notify on bus (de/a)ttaches */
|
||||
#if 0
|
||||
/* this flag is gone -- there is a (optional) driver->detach_adapter
|
||||
* callback now which can be used instead */
|
||||
# define I2C_DF_DUMMY 0x02
|
||||
#endif
|
||||
|
||||
/*flags for the client struct: */
|
||||
#define I2C_CLIENT_ALLOW_USE 0x01 /* Client allows access */
|
||||
#define I2C_CLIENT_ALLOW_MULTIPLE_USE 0x02 /* Allow multiple access-locks */
|
||||
/* on an i2c_client */
|
||||
#define I2C_CLIENT_PEC 0x04 /* Use Packet Error Checking */
|
||||
#define I2C_CLIENT_TEN 0x10 /* we have a ten bit chip address */
|
||||
/* Must equal I2C_M_TEN below */
|
||||
|
@ -302,26 +291,20 @@ struct i2c_client_address_data {
|
|||
extern int i2c_add_adapter(struct i2c_adapter *);
|
||||
extern int i2c_del_adapter(struct i2c_adapter *);
|
||||
|
||||
extern int i2c_add_driver(struct i2c_driver *);
|
||||
extern int i2c_register_driver(struct module *, struct i2c_driver *);
|
||||
extern int i2c_del_driver(struct i2c_driver *);
|
||||
|
||||
static inline int i2c_add_driver(struct i2c_driver *driver)
|
||||
{
|
||||
return i2c_register_driver(THIS_MODULE, driver);
|
||||
}
|
||||
|
||||
extern int i2c_attach_client(struct i2c_client *);
|
||||
extern int i2c_detach_client(struct i2c_client *);
|
||||
|
||||
/* New function: This is to get an i2c_client-struct for controlling the
|
||||
client either by using i2c_control-function or having the
|
||||
client-module export functions that can be used with the i2c_client
|
||||
-struct. */
|
||||
extern struct i2c_client *i2c_get_client(int driver_id, int adapter_id,
|
||||
struct i2c_client *prev);
|
||||
|
||||
/* Should be used with new function
|
||||
extern struct i2c_client *i2c_get_client(int,int,struct i2c_client *);
|
||||
to make sure that client-struct is valid and that it is okay to access
|
||||
the i2c-client.
|
||||
returns -EACCES if client doesn't allow use (default)
|
||||
returns -EBUSY if client doesn't allow multiple use (default) and
|
||||
usage_count >0 */
|
||||
/* Should be used to make sure that client-struct is valid and that it
|
||||
is okay to access the i2c-client.
|
||||
returns -ENODEV if client has gone in the meantime */
|
||||
extern int i2c_use_client(struct i2c_client *);
|
||||
extern int i2c_release_client(struct i2c_client *);
|
||||
|
||||
|
|
|
@ -986,6 +986,7 @@
|
|||
#define PCI_DEVICE_ID_NVIDIA_TNT_UNKNOWN 0x002a
|
||||
#define PCI_DEVICE_ID_NVIDIA_VTNT2 0x002C
|
||||
#define PCI_DEVICE_ID_NVIDIA_UVTNT2 0x002D
|
||||
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SMBUS 0x0034
|
||||
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_IDE 0x0035
|
||||
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SATA 0x0036
|
||||
#define PCI_DEVICE_ID_NVIDIA_NVENET_10 0x0037
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue