diff options
-rw-r--r-- | include/linux/i2c-dev.h | 31 | ||||
-rw-r--r-- | include/linux/i2c.h | 30 |
2 files changed, 29 insertions, 32 deletions
diff --git a/include/linux/i2c-dev.h b/include/linux/i2c-dev.h index 81c229a0fbca..311315b56b61 100644 --- a/include/linux/i2c-dev.h +++ b/include/linux/i2c-dev.h | |||
@@ -25,8 +25,31 @@ | |||
25 | #include <linux/types.h> | 25 | #include <linux/types.h> |
26 | #include <linux/compiler.h> | 26 | #include <linux/compiler.h> |
27 | 27 | ||
28 | /* Some IOCTL commands are defined in <linux/i2c.h> */ | 28 | /* /dev/i2c-X ioctl commands. The ioctl's parameter is always an |
29 | /* Note: 10-bit addresses are NOT supported! */ | 29 | * unsigned long, except for: |
30 | * - I2C_FUNCS, takes pointer to an unsigned long | ||
31 | * - I2C_RDWR, takes pointer to struct i2c_rdwr_ioctl_data | ||
32 | * - I2C_SMBUS, takes pointer to struct i2c_smbus_ioctl_data | ||
33 | */ | ||
34 | #define I2C_RETRIES 0x0701 /* number of times a device address should | ||
35 | be polled when not acknowledging */ | ||
36 | #define I2C_TIMEOUT 0x0702 /* set timeout in jiffies - call with int */ | ||
37 | |||
38 | /* NOTE: Slave address is 7 or 10 bits, but 10-bit addresses | ||
39 | * are NOT supported! (due to code brokenness) | ||
40 | */ | ||
41 | #define I2C_SLAVE 0x0703 /* Use this slave address */ | ||
42 | #define I2C_SLAVE_FORCE 0x0706 /* Use this slave address, even if it | ||
43 | is already in use by a driver! */ | ||
44 | #define I2C_TENBIT 0x0704 /* 0 for 7 bit addrs, != 0 for 10 bit */ | ||
45 | |||
46 | #define I2C_FUNCS 0x0705 /* Get the adapter functionality mask */ | ||
47 | |||
48 | #define I2C_RDWR 0x0707 /* Combined R/W transfer (one STOP only) */ | ||
49 | |||
50 | #define I2C_PEC 0x0708 /* != 0 to use PEC with SMBus */ | ||
51 | #define I2C_SMBUS 0x0720 /* SMBus transfer */ | ||
52 | |||
30 | 53 | ||
31 | /* This is the structure as used in the I2C_SMBUS ioctl call */ | 54 | /* This is the structure as used in the I2C_SMBUS ioctl call */ |
32 | struct i2c_smbus_ioctl_data { | 55 | struct i2c_smbus_ioctl_data { |
@@ -44,4 +67,8 @@ struct i2c_rdwr_ioctl_data { | |||
44 | 67 | ||
45 | #define I2C_RDRW_IOCTL_MAX_MSGS 42 | 68 | #define I2C_RDRW_IOCTL_MAX_MSGS 42 |
46 | 69 | ||
70 | #ifdef __KERNEL__ | ||
71 | #define I2C_MAJOR 89 /* Device major number */ | ||
72 | #endif | ||
73 | |||
47 | #endif /* _LINUX_I2C_DEV_H */ | 74 | #endif /* _LINUX_I2C_DEV_H */ |
diff --git a/include/linux/i2c.h b/include/linux/i2c.h index ae477b3106a2..e43d99d7551f 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h | |||
@@ -557,38 +557,8 @@ union i2c_smbus_data { | |||
557 | #define I2C_SMBUS_I2C_BLOCK_DATA 8 | 557 | #define I2C_SMBUS_I2C_BLOCK_DATA 8 |
558 | 558 | ||
559 | 559 | ||
560 | /* ----- commands for the ioctl like i2c_command call: | ||
561 | * note that additional calls are defined in the algorithm and hw | ||
562 | * dependent layers - these can be listed here, or see the | ||
563 | * corresponding header files. | ||
564 | */ | ||
565 | /* -> bit-adapter specific ioctls */ | ||
566 | #define I2C_RETRIES 0x0701 /* number of times a device address */ | ||
567 | /* should be polled when not */ | ||
568 | /* acknowledging */ | ||
569 | #define I2C_TIMEOUT 0x0702 /* set timeout - call with int */ | ||
570 | |||
571 | |||
572 | /* this is for i2c-dev.c */ | ||
573 | #define I2C_SLAVE 0x0703 /* Change slave address */ | ||
574 | /* Attn.: Slave address is 7 or 10 bits */ | ||
575 | #define I2C_SLAVE_FORCE 0x0706 /* Change slave address */ | ||
576 | /* Attn.: Slave address is 7 or 10 bits */ | ||
577 | /* This changes the address, even if it */ | ||
578 | /* is already taken! */ | ||
579 | #define I2C_TENBIT 0x0704 /* 0 for 7 bit addrs, != 0 for 10 bit */ | ||
580 | |||
581 | #define I2C_FUNCS 0x0705 /* Get the adapter functionality */ | ||
582 | #define I2C_RDWR 0x0707 /* Combined R/W transfer (one stop only)*/ | ||
583 | #define I2C_PEC 0x0708 /* != 0 for SMBus PEC */ | ||
584 | |||
585 | #define I2C_SMBUS 0x0720 /* SMBus-level access */ | ||
586 | |||
587 | /* ----- I2C-DEV: char device interface stuff ------------------------- */ | ||
588 | #ifdef __KERNEL__ | 560 | #ifdef __KERNEL__ |
589 | 561 | ||
590 | #define I2C_MAJOR 89 /* Device major number */ | ||
591 | |||
592 | /* These defines are used for probing i2c client addresses */ | 562 | /* These defines are used for probing i2c client addresses */ |
593 | /* The length of the option lists */ | 563 | /* The length of the option lists */ |
594 | #define I2C_CLIENT_MAX_OPTS 48 | 564 | #define I2C_CLIENT_MAX_OPTS 48 |