diff options
author | Jessica Gonzalez <jgaona@codeaurora.org> | 2011-01-04 18:12:43 -0800 |
---|---|---|
committer | Sunil Joseph <sunilj@codeaurora.org> | 2011-01-12 14:00:26 +0530 |
commit | e787300cf30174cab4f458124c79e93261c81af1 (patch) | |
tree | 73f46e251e31b6d947b9e77b7d3eb242c9225f96 | |
parent | 6c5c6849ec677d7683d5f34d80e94256ce47e12c (diff) | |
download | bionic-Q8650DTBCANLYA206035.zip bionic-Q8650DTBCANLYA206035.tar.gz bionic-Q8650DTBCANLYA206035.tar.bz2 |
Add i2c-dev.h and spidev.h kernel headersQ8650DTBCANLYA206035Q8650DTBCANLYA206025
Change-Id: I53c5b5751b77baf2a57a422672c710a1c584e947
-rw-r--r-- | libc/kernel/common/linux/i2c-dev.h | 47 | ||||
-rw-r--r-- | libc/kernel/common/linux/spi/spidev.h | 64 |
2 files changed, 111 insertions, 0 deletions
diff --git a/libc/kernel/common/linux/i2c-dev.h b/libc/kernel/common/linux/i2c-dev.h new file mode 100644 index 0000000..50b7573 --- /dev/null +++ b/libc/kernel/common/linux/i2c-dev.h @@ -0,0 +1,47 @@ +/**************************************************************************** + **************************************************************************** + *** + *** This header was automatically generated from a Linux kernel header + *** of the same name, to make information necessary for userspace to + *** call into the kernel available to libc. It contains only constants, + *** structures, and macros generated from the original header, and thus, + *** contains no copyrightable information. + *** + **************************************************************************** + ****************************************************************************/ +#ifndef _LINUX_I2C_DEV_H +#define _LINUX_I2C_DEV_H + +#include <linux/types.h> +#include <linux/compiler.h> + +#define I2C_RETRIES 0x0701 +#define I2C_TIMEOUT 0x0702 + +#define I2C_SLAVE 0x0703 +#define I2C_SLAVE_FORCE 0x0706 +#define I2C_TENBIT 0x0704 + +#define I2C_FUNCS 0x0705 + +#define I2C_RDWR 0x0707 + +#define I2C_PEC 0x0708 +#define I2C_SMBUS 0x0720 + +struct i2c_smbus_ioctl_data { + __u8 read_write; + __u8 command; + __u32 size; + union i2c_smbus_data __user *data; +}; + +struct i2c_rdwr_ioctl_data { + struct i2c_msg __user *msgs; + __u32 nmsgs; +}; + +#define I2C_RDRW_IOCTL_MAX_MSGS 42 + +#endif + diff --git a/libc/kernel/common/linux/spi/spidev.h b/libc/kernel/common/linux/spi/spidev.h new file mode 100644 index 0000000..b71cb22 --- /dev/null +++ b/libc/kernel/common/linux/spi/spidev.h @@ -0,0 +1,64 @@ +/**************************************************************************** + **************************************************************************** + *** + *** This header was automatically generated from a Linux kernel header + *** of the same name, to make information necessary for userspace to + *** call into the kernel available to libc. It contains only constants, + *** structures, and macros generated from the original header, and thus, + *** contains no copyrightable information. + *** + **************************************************************************** + ****************************************************************************/ +#ifndef SPIDEV_H +#define SPIDEV_H + +#include <linux/types.h> + +#define SPI_CPHA 0x01 +#define SPI_CPOL 0x02 + +#define SPI_MODE_0 (0|0) +#define SPI_MODE_1 (0|SPI_CPHA) +#define SPI_MODE_2 (SPI_CPOL|0) +#define SPI_MODE_3 (SPI_CPOL|SPI_CPHA) + +#define SPI_CS_HIGH 0x04 +#define SPI_LSB_FIRST 0x08 +#define SPI_3WIRE 0x10 +#define SPI_LOOP 0x20 +#define SPI_NO_CS 0x40 +#define SPI_READY 0x80 + +#define SPI_IOC_MAGIC 'k' + +struct spi_ioc_transfer { + __u64 tx_buf; + __u64 rx_buf; + + __u32 len; + __u32 speed_hz; + + __u16 delay_usecs; + __u8 bits_per_word; + __u8 cs_change; + __u32 pad; + +}; + +#define SPI_MSGSIZE(N) ((((N)*(sizeof (struct spi_ioc_transfer))) < (1 << _IOC_SIZEBITS)) ? ((N)*(sizeof (struct spi_ioc_transfer))) : 0) +#define SPI_IOC_MESSAGE(N) _IOW(SPI_IOC_MAGIC, 0, char[SPI_MSGSIZE(N)]) + +#define SPI_IOC_RD_MODE _IOR(SPI_IOC_MAGIC, 1, __u8) +#define SPI_IOC_WR_MODE _IOW(SPI_IOC_MAGIC, 1, __u8) + +#define SPI_IOC_RD_LSB_FIRST _IOR(SPI_IOC_MAGIC, 2, __u8) +#define SPI_IOC_WR_LSB_FIRST _IOW(SPI_IOC_MAGIC, 2, __u8) + +#define SPI_IOC_RD_BITS_PER_WORD _IOR(SPI_IOC_MAGIC, 3, __u8) +#define SPI_IOC_WR_BITS_PER_WORD _IOW(SPI_IOC_MAGIC, 3, __u8) + +#define SPI_IOC_RD_MAX_SPEED_HZ _IOR(SPI_IOC_MAGIC, 4, __u32) +#define SPI_IOC_WR_MAX_SPEED_HZ _IOW(SPI_IOC_MAGIC, 4, __u32) + +#endif + |