diff options
| author | Ajay Dudani <adudani@codeaurora.org> | 2010-12-17 23:02:21 -0800 |
|---|---|---|
| committer | David Ng <dave@codeaurora.org> | 2010-12-20 16:02:35 -0800 |
| commit | 23b2ac69c2404222c9fd2797d0fce50a55122a54 (patch) | |
| tree | 0fd286dbe44ef1fd828eb78660394230636e344c /libc/kernel/common/linux/spi/spidev.h | |
| parent | 9ec3dfdf8f051df532e65227c8a063a2828f5bb4 (diff) | |
| download | bionic-M76XXTSNCJNLYA7076.zip bionic-M76XXTSNCJNLYA7076.tar.gz bionic-M76XXTSNCJNLYA7076.tar.bz2 | |
Add i2c-dev.h and spidev.h kernel headersM76XXTSNCJNLYA707905M76XXTSNCJNLYA707903M76XXTSNCJNLYA707810M76XXTSNCJNLYA7078M76XXTSNCJNLYA7077M76XXTSNCJNLYA7076M76XXTSNCJNLYA7075M76XXTSNCJNLYA7073M76XXTSNCJNLYA7071M76XXTSNCJNLYA7070M76XXTSNCJNLYA706903M76XXTSNCJNLYA7069M76XXTSNCJNLYA7067M76XXTSNCJNLYA7064M76XXTSNCJNLYA7060M76XXTSNCJNLYA7050
Change-Id: I67e7e5eba91bc4ec8313b7a4ee8bdaef6c1fb292
Diffstat (limited to 'libc/kernel/common/linux/spi/spidev.h')
| -rw-r--r-- | libc/kernel/common/linux/spi/spidev.h | 64 |
1 files changed, 64 insertions, 0 deletions
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 + |
