#include <linux/slab.h>
#include <linux/device.h>
#include <linux/module.h>
#include <linux/i2c.h>
#include <linux/err.h>
#include <linux/interrupt.h>
#include <linux/completion.h>
#include <linux/platform_device.h>
#include <linux/jiffies.h>
#include <linux/io.h>
#include <linux/pinctrl/consumer.h>
#include <linux/stmp_device.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/of_i2c.h>
#include <linux/dma-mapping.h>
#include <linux/dmaengine.h>
#include <linux/fsl/mxs-dma.h>
Go to the source code of this file.
#define DRIVER_NAME "mxs-i2c" |
Value:
MXS_I2C_CTRL0_MASTER_MODE)
Definition at line 85 of file i2c-mxs.c.
#define MXS_CMD_I2C_SELECT |
Value:
MXS_I2C_CTRL0_PRE_SEND_START | \
MXS_I2C_CTRL0_MASTER_MODE | \
MXS_I2C_CTRL0_DIRECTION | \
MXS_I2C_CTRL0_XFER_COUNT(1))
Definition at line 75 of file i2c-mxs.c.
#define MXS_CMD_I2C_WRITE |
Value:
MXS_I2C_CTRL0_MASTER_MODE | \
MXS_I2C_CTRL0_DIRECTION)
Definition at line 81 of file i2c-mxs.c.
#define MXS_I2C_CTRL0 (0x00) |
#define MXS_I2C_CTRL0_DIRECTION 0x00010000 |
#define MXS_I2C_CTRL0_MASTER_MODE 0x00020000 |
#define MXS_I2C_CTRL0_POST_SEND_STOP 0x00100000 |
#define MXS_I2C_CTRL0_PRE_SEND_START 0x00080000 |
#define MXS_I2C_CTRL0_RETAIN_CLOCK 0x00200000 |
#define MXS_I2C_CTRL0_SEND_NAK_ON_LAST 0x02000000 |
#define MXS_I2C_CTRL0_SET (0x04) |
#define MXS_I2C_CTRL0_SFTRST 0x80000000 |
#define MXS_I2C_CTRL0_XFER_COUNT |
( |
|
v | ) |
((v) & 0x0000FFFF) |
#define MXS_I2C_CTRL1 (0x40) |
#define MXS_I2C_CTRL1_BUS_FREE_IRQ 0x80 |
#define MXS_I2C_CTRL1_CLR (0x48) |
#define MXS_I2C_CTRL1_DATA_ENGINE_CMPLT_IRQ 0x40 |
#define MXS_I2C_CTRL1_EARLY_TERM_IRQ 0x08 |
#define MXS_I2C_CTRL1_MASTER_LOSS_IRQ 0x04 |
#define MXS_I2C_CTRL1_NO_SLAVE_ACK_IRQ 0x20 |
#define MXS_I2C_CTRL1_OVERSIZE_XFER_TERM_IRQ 0x10 |
#define MXS_I2C_CTRL1_SET (0x44) |
#define MXS_I2C_CTRL1_SLAVE_IRQ 0x01 |
#define MXS_I2C_CTRL1_SLAVE_STOP_IRQ 0x02 |
Value:
MXS_I2C_CTRL1_NO_SLAVE_ACK_IRQ | \
MXS_I2C_CTRL1_EARLY_TERM_IRQ | \
MXS_I2C_CTRL1_MASTER_LOSS_IRQ | \
MXS_I2C_CTRL1_SLAVE_STOP_IRQ | \
MXS_I2C_CTRL1_SLAVE_IRQ)
Definition at line 67 of file i2c-mxs.c.
#define MXS_I2C_TIMING0 (0x10) |
#define MXS_I2C_TIMING1 (0x20) |
#define MXS_I2C_TIMING2 (0x30) |
MODULE_ALIAS |
( |
"platform:" |
DRIVER_NAME | ) |
|
MODULE_DESCRIPTION |
( |
"MXS I2C Bus Driver" |
| ) |
|
MODULE_DEVICE_TABLE |
( |
of |
, |
|
|
mxs_i2c_dt_ids |
|
|
) |
| |
module_exit |
( |
mxs_i2c_exit |
| ) |
|
subsys_initcall |
( |
mxs_i2c_init |
| ) |
|