mirror of
https://github.com/apache/nuttx.git
synced 2026-06-06 08:36:24 +08:00
Remove I2C slave methods from I2C master interface; rename i2c_dev_s to i2c_master_s.
This commit is contained in:
@@ -292,16 +292,16 @@ static inline void efm32_i2c_putreg(FAR struct efm32_i2c_priv_s *priv,
|
||||
static inline void efm32_i2c_modifyreg(FAR struct efm32_i2c_priv_s *priv,
|
||||
uint8_t offset, uint32_t clearbits,
|
||||
uint32_t setbits);
|
||||
static inline void efm32_i2c_sem_wait(FAR struct i2c_dev_s *dev);
|
||||
static inline void efm32_i2c_sem_wait(FAR struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_EFM32_I2C_DYNTIMEOUT
|
||||
static useconds_t efm32_i2c_tousecs(int msgc, FAR struct i2c_msg_s *msgs);
|
||||
#endif /* CONFIG_EFM32_I2C_DYNTIMEOUT */
|
||||
|
||||
static inline int efm32_i2c_sem_waitdone(FAR struct efm32_i2c_priv_s *priv);
|
||||
static inline void efm32_i2c_sem_post(FAR struct i2c_dev_s *dev);
|
||||
static inline void efm32_i2c_sem_init(FAR struct i2c_dev_s *dev);
|
||||
static inline void efm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev);
|
||||
static inline void efm32_i2c_sem_post(FAR struct i2c_master_s *dev);
|
||||
static inline void efm32_i2c_sem_init(FAR struct i2c_master_s *dev);
|
||||
static inline void efm32_i2c_sem_destroy(FAR struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_I2C_TRACE
|
||||
static void efm32_i2c_tracereset(FAR struct efm32_i2c_priv_s *priv);
|
||||
@@ -326,18 +326,18 @@ static int efm32_i2c1_isr(int irq, void *context);
|
||||
static void efm32_i2c_reset(FAR struct efm32_i2c_priv_s *priv);
|
||||
static int efm32_i2c_init(FAR struct efm32_i2c_priv_s *priv, int frequency);
|
||||
static int efm32_i2c_deinit(FAR struct efm32_i2c_priv_s *priv);
|
||||
static uint32_t efm32_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t efm32_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int efm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int efm32_i2c_process(FAR struct i2c_dev_s *dev,
|
||||
static int efm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int efm32_i2c_process(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count);
|
||||
static int efm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t * buffer,
|
||||
static int efm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t * buffer,
|
||||
int buflen);
|
||||
static int efm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t * buffer,
|
||||
static int efm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t * buffer,
|
||||
int buflen);
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int efm32_i2c_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int efm32_i2c_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count);
|
||||
#endif /* CONFIG_I2C_TRANSFER */
|
||||
|
||||
@@ -418,10 +418,6 @@ static const struct i2c_ops_s efm32_i2c_ops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
, .transfer = efm32_i2c_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
, .setownaddress = efm32_i2c_setownaddress,
|
||||
.registercallback = efm32_i2c_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
@@ -520,7 +516,7 @@ static const char *efm32_i2c_state_str(int i2c_state)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static inline void efm32_i2c_sem_wait(FAR struct i2c_dev_s *dev)
|
||||
static inline void efm32_i2c_sem_wait(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
while (sem_wait(&((struct efm32_i2c_inst_s *)dev)->priv->sem_excl) != OK)
|
||||
{
|
||||
@@ -700,7 +696,7 @@ static inline int efm32_i2c_sem_waitdone(FAR struct efm32_i2c_priv_s *priv)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static inline void efm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
static inline void efm32_i2c_sem_post(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_post(&((struct efm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
}
|
||||
@@ -713,7 +709,7 @@ static inline void efm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static inline void efm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
static inline void efm32_i2c_sem_init(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_init(&((struct efm32_i2c_inst_s *)dev)->priv->sem_excl, 0, 1);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -729,7 +725,7 @@ static inline void efm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static inline void efm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev)
|
||||
static inline void efm32_i2c_sem_destroy(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_destroy(&((struct efm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -1469,7 +1465,7 @@ static int efm32_i2c_deinit(FAR struct efm32_i2c_priv_s *priv)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t efm32_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t efm32_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency)
|
||||
{
|
||||
efm32_i2c_sem_wait(dev);
|
||||
@@ -1488,7 +1484,7 @@ static uint32_t efm32_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int efm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int efm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
efm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -1507,7 +1503,7 @@ static int efm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int efm32_i2c_process(FAR struct i2c_dev_s *dev,
|
||||
static int efm32_i2c_process(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct efm32_i2c_inst_s *inst = (struct efm32_i2c_inst_s *)dev;
|
||||
@@ -1659,7 +1655,7 @@ static int efm32_i2c_process(FAR struct i2c_dev_s *dev,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int efm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t * buffer,
|
||||
static int efm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t * buffer,
|
||||
int buflen)
|
||||
{
|
||||
struct i2c_msg_s msgv =
|
||||
@@ -1681,7 +1677,7 @@ static int efm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t * buffer,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int efm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t * buffer, int buflen)
|
||||
int efm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t * buffer, int buflen)
|
||||
{
|
||||
struct i2c_msg_s msgv =
|
||||
{
|
||||
@@ -1703,7 +1699,7 @@ int efm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t * buffer, int buflen)
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int efm32_i2c_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int efm32_i2c_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
return efm32_i2c_process(dev, msgs, count);
|
||||
@@ -1722,7 +1718,7 @@ static int efm32_i2c_transfer(FAR struct i2c_dev_s *dev,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
FAR struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct efm32_i2c_priv_s *priv = NULL; /* Private data of device with multiple
|
||||
* instances */
|
||||
@@ -1772,12 +1768,12 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
|
||||
if ((volatile int)priv->refs++ == 0)
|
||||
{
|
||||
efm32_i2c_sem_init((struct i2c_dev_s *)inst);
|
||||
efm32_i2c_sem_init((struct i2c_master_s *)inst);
|
||||
efm32_i2c_init(priv, inst->frequency);
|
||||
}
|
||||
|
||||
irqrestore(irqs);
|
||||
return (struct i2c_dev_s *)inst;
|
||||
return (struct i2c_master_s *)inst;
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
@@ -1788,7 +1784,7 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
irqstate_t irqs;
|
||||
|
||||
@@ -1818,7 +1814,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
|
||||
/* Release unused resources */
|
||||
|
||||
efm32_i2c_sem_destroy((struct i2c_dev_s *)dev);
|
||||
efm32_i2c_sem_destroy((struct i2c_master_s *)dev);
|
||||
|
||||
kmm_free(dev);
|
||||
return OK;
|
||||
@@ -1833,7 +1829,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s *dev)
|
||||
int up_i2creset(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
struct efm32_i2c_priv_s *priv;
|
||||
unsigned int clock_count;
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
struct lpc11_i2cdev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
struct i2c_msg_s msg; /* a single message for legacy read/write */
|
||||
unsigned int base; /* Base address of registers */
|
||||
uint16_t irqid; /* IRQ for this device */
|
||||
@@ -126,11 +126,11 @@ static void i2c_timeout(int argc, uint32_t arg, ...);
|
||||
|
||||
/* I2C device operations */
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
@@ -157,7 +157,7 @@ struct i2c_ops_s lpc11_i2c_ops =
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct lpc11_i2cdev_s *priv = (struct lpc11_i2cdev_s *) dev;
|
||||
|
||||
@@ -193,7 +193,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct lpc11_i2cdev_s *priv = (struct lpc11_i2cdev_s *) dev;
|
||||
|
||||
@@ -215,7 +215,7 @@ static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen)
|
||||
{
|
||||
struct lpc11_i2cdev_s *priv = (struct lpc11_i2cdev_s *) dev;
|
||||
@@ -243,7 +243,7 @@ static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc11_i2cdev_s *priv = (struct lpc11_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -451,7 +451,7 @@ static int i2c_interrupt(int irq, FAR void *context)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct lpc11_i2cdev_s *priv;
|
||||
irqstate_t flags;
|
||||
@@ -577,7 +577,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct lpc11_i2cdev_s *priv = (struct lpc11_i2cdev_s *) dev;
|
||||
|
||||
|
||||
@@ -105,7 +105,7 @@
|
||||
|
||||
struct lpc17_i2cdev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
struct i2c_msg_s msg; /* a single message for legacy read/write */
|
||||
unsigned int base; /* Base address of registers */
|
||||
uint16_t irqid; /* IRQ for this device */
|
||||
@@ -134,11 +134,11 @@ static void i2c_timeout(int argc, uint32_t arg, ...);
|
||||
* I2C device operations
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
|
||||
struct i2c_ops_s lpc17_i2c_ops =
|
||||
{
|
||||
@@ -159,7 +159,7 @@ struct i2c_ops_s lpc17_i2c_ops =
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct lpc17_i2cdev_s *priv = (struct lpc17_i2cdev_s *) dev;
|
||||
|
||||
@@ -191,7 +191,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct lpc17_i2cdev_s *priv = (struct lpc17_i2cdev_s *) dev;
|
||||
|
||||
@@ -213,7 +213,7 @@ static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc17_i2cdev_s *priv = (struct lpc17_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -240,7 +240,7 @@ static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int bufle
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc17_i2cdev_s *priv = (struct lpc17_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -448,7 +448,7 @@ static int i2c_interrupt(int irq, FAR void *context)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct lpc17_i2cdev_s *priv;
|
||||
irqstate_t flags;
|
||||
@@ -574,7 +574,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct lpc17_i2cdev_s *priv = (struct lpc17_i2cdev_s *) dev;
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
|
||||
struct lpc23xx_i2cdev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
struct i2c_msg_s msg; /* a single message for legacy read/write */
|
||||
unsigned int base; /* Base address of registers */
|
||||
uint16_t irqid; /* IRQ for this device */
|
||||
@@ -136,11 +136,11 @@ static void i2c_timeout (int argc, uint32_t arg, ...);
|
||||
* I2C device operations
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
|
||||
struct i2c_ops_s lpc23xx_i2c_ops =
|
||||
{
|
||||
@@ -161,7 +161,7 @@ struct i2c_ops_s lpc23xx_i2c_ops =
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct lpc23xx_i2cdev_s *priv = (struct lpc23xx_i2cdev_s *) dev;
|
||||
|
||||
@@ -197,7 +197,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct lpc23xx_i2cdev_s *priv = (struct lpc23xx_i2cdev_s *) dev;
|
||||
|
||||
@@ -219,7 +219,7 @@ static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc23xx_i2cdev_s *priv = (struct lpc23xx_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -246,7 +246,7 @@ static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int bufle
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc23xx_i2cdev_s *priv = (struct lpc23xx_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -455,7 +455,7 @@ static int i2c_interrupt (int irq, FAR void *context)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct lpc23xx_i2cdev_s *priv;
|
||||
irqstate_t flags;
|
||||
@@ -594,7 +594,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct lpc23xx_i2cdev_s *priv = (struct lpc23xx_i2cdev_s *)dev;
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
****************************************************************************/
|
||||
struct lpc31_i2cdev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
struct i2c_msg_s msg; /* a single message for legacy read/write */
|
||||
unsigned int base; /* Base address of registers */
|
||||
uint16_t clkid; /* Clock for this device */
|
||||
@@ -125,11 +125,11 @@ static void i2c_reset(struct lpc31_i2cdev_s *priv);
|
||||
* I2C device operations
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
static int i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs, int count);
|
||||
|
||||
struct i2c_ops_s lpc31_i2c_ops =
|
||||
{
|
||||
@@ -150,7 +150,7 @@ struct i2c_ops_s lpc31_i2c_ops =
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct lpc31_i2cdev_s *priv = &i2cdevices[port];
|
||||
|
||||
@@ -226,7 +226,7 @@ void up_i2cuninitalize(struct lpc31_i2cdev_s *priv)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct lpc31_i2cdev_s *priv = (struct lpc31_i2cdev_s *) dev;
|
||||
|
||||
@@ -260,7 +260,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct lpc31_i2cdev_s *priv = (struct lpc31_i2cdev_s *) dev;
|
||||
|
||||
@@ -282,7 +282,7 @@ static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc31_i2cdev_s *priv = (struct lpc31_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -307,7 +307,7 @@ static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int bufle
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct lpc31_i2cdev_s *priv = (struct lpc31_i2cdev_s *) dev;
|
||||
int ret;
|
||||
@@ -331,7 +331,7 @@ static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs, int count)
|
||||
static int i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct lpc31_i2cdev_s *priv = (struct lpc31_i2cdev_s *) dev;
|
||||
irqstate_t flags;
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
|
||||
struct lpc43_i2cdev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
struct i2c_msg_s msg; /* a single message for legacy read/write */
|
||||
unsigned int base; /* Base address of registers */
|
||||
uint16_t irqid; /* IRQ for this device */
|
||||
@@ -136,16 +136,16 @@ static void lpc43_i2c_timeout(int argc, uint32_t arg, ...);
|
||||
* I2C device operations
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t lpc43_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t lpc43_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int lpc43_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr,
|
||||
static int lpc43_i2c_setaddress(FAR struct i2c_master_s *dev, int addr,
|
||||
int nbits);
|
||||
static int lpc43_i2c_write(FAR struct i2c_dev_s *dev,
|
||||
static int lpc43_i2c_write(FAR struct i2c_master_s *dev,
|
||||
const uint8_t *buffer, int buflen);
|
||||
static int lpc43_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer,
|
||||
static int lpc43_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer,
|
||||
int buflen);
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int lpc43_i2c_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int lpc43_i2c_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count);
|
||||
#endif
|
||||
|
||||
@@ -168,7 +168,7 @@ struct i2c_ops_s lpc43_i2c_ops =
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t lpc43_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t lpc43_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv = (struct lpc43_i2cdev_s *) dev;
|
||||
@@ -205,7 +205,7 @@ static uint32_t lpc43_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int lpc43_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr,
|
||||
static int lpc43_i2c_setaddress(FAR struct i2c_master_s *dev, int addr,
|
||||
int nbits)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv = (struct lpc43_i2cdev_s *)dev;
|
||||
@@ -227,7 +227,7 @@ static int lpc43_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int lpc43_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int lpc43_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv = (struct lpc43_i2cdev_s *)dev;
|
||||
@@ -261,7 +261,7 @@ static int lpc43_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int lpc43_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer,
|
||||
static int lpc43_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer,
|
||||
int buflen)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv = (struct lpc43_i2cdev_s *)dev;
|
||||
@@ -361,7 +361,7 @@ static void lpc43_i2c_timeout(int argc, uint32_t arg, ...)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int lpc43_i2c_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int lpc43_i2c_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv = (struct lpc43_i2cdev_s *)dev;
|
||||
@@ -520,7 +520,7 @@ static int lpc43_i2c_interrupt(int irq, FAR void *context)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv;
|
||||
|
||||
@@ -562,7 +562,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
regval |= CCU_CLK_CFG_RUN;
|
||||
putreg32(regval, LPC43_CCU1_APB1_I2C0_CFG);
|
||||
|
||||
lpc43_i2c_setfrequency((struct i2c_dev_s *)priv,
|
||||
lpc43_i2c_setfrequency((struct i2c_master_s *)priv,
|
||||
I2C0_DEFAULT_FREQUENCY);
|
||||
|
||||
/* No pin configuration needed */
|
||||
@@ -632,7 +632,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct lpc43_i2cdev_s *priv = (struct lpc43_i2cdev_s *) dev;
|
||||
|
||||
@@ -651,7 +651,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s * dev)
|
||||
int up_i2creset(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
return OK;
|
||||
}
|
||||
|
||||
@@ -116,7 +116,7 @@
|
||||
|
||||
struct twi_dev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
struct i2c_msg_s *msg; /* Message list */
|
||||
uintptr_t base; /* Base address of registers */
|
||||
uint32_t frequency; /* TWI input clock frequency */
|
||||
@@ -189,21 +189,16 @@ static void twi_startmessage(struct twi_dev_s *priv, struct i2c_msg_s *msg);
|
||||
|
||||
/* I2C device operations */
|
||||
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int twi_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int twi_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int twi_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int twi_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int twi_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count);
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_setownaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int twi_registercallback(FAR struct i2c_dev_s *dev,
|
||||
int (*callback)(void));
|
||||
#endif
|
||||
|
||||
/* Initialization */
|
||||
|
||||
@@ -233,10 +228,6 @@ struct i2c_ops_s g_twiops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
.transfer = twi_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
.setownaddress = twi_setownaddress
|
||||
.registercallback = twi_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
@@ -719,7 +710,7 @@ static void twi_startmessage(struct twi_dev_s *priv, struct i2c_msg_s *msg)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
uint32_t actual;
|
||||
@@ -745,7 +736,7 @@ static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int twi_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
|
||||
@@ -774,7 +765,7 @@ static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *wbuffer, int wbuflen)
|
||||
static int twi_write(FAR struct i2c_master_s *dev, const uint8_t *wbuffer, int wbuflen)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
irqstate_t flags;
|
||||
@@ -840,7 +831,7 @@ static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *wbuffer, int wbuf
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
static int twi_read(FAR struct i2c_master_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
irqstate_t flags;
|
||||
@@ -897,37 +888,6 @@ static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
return ret;
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_setownaddress
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_setownaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
{
|
||||
#error Not implemented
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_registercallback
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_registercallback(FAR struct i2c_dev_s *dev,
|
||||
int (*callback)(void))
|
||||
{
|
||||
#error Not implemented
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_transfer
|
||||
*
|
||||
@@ -938,7 +898,7 @@ static int twi_registercallback(FAR struct i2c_dev_s *dev,
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int twi_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int twi_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
@@ -1131,7 +1091,7 @@ static void twi_hw_initialize(struct twi_dev_s *priv, unsigned int pid,
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int bus)
|
||||
struct i2c_master_s *up_i2cinitialize(int bus)
|
||||
{
|
||||
struct twi_dev_s *priv;
|
||||
xcpt_t handler;
|
||||
@@ -1241,7 +1201,7 @@ struct i2c_dev_s *up_i2cinitialize(int bus)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
|
||||
|
||||
@@ -158,7 +158,7 @@ struct twi_attr_s
|
||||
|
||||
struct twi_dev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
const struct twi_attr_s *attr; /* Invariant attributes of TWI device */
|
||||
struct i2c_msg_s *msg; /* Message list */
|
||||
uint32_t twiclk; /* TWI input clock frequency */
|
||||
@@ -236,21 +236,16 @@ static void twi_startmessage(struct twi_dev_s *priv, struct i2c_msg_s *msg);
|
||||
|
||||
/* I2C device operations */
|
||||
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int twi_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int twi_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int twi_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int twi_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int twi_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count);
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_setownaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int twi_registercallback(FAR struct i2c_dev_s *dev,
|
||||
int (*callback)(FAR void *arg), FAR void *arg);
|
||||
#endif
|
||||
|
||||
/* Initialization */
|
||||
|
||||
@@ -331,10 +326,6 @@ struct i2c_ops_s g_twiops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
.transfer = twi_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
.setownaddress = twi_setownaddress
|
||||
.registercallback = twi_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
@@ -849,7 +840,7 @@ static void twi_startmessage(struct twi_dev_s *priv, struct i2c_msg_s *msg)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
uint32_t actual;
|
||||
@@ -875,7 +866,7 @@ static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int twi_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
|
||||
@@ -904,7 +895,7 @@ static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *wbuffer, int wbuflen)
|
||||
static int twi_write(FAR struct i2c_master_s *dev, const uint8_t *wbuffer, int wbuflen)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
irqstate_t flags;
|
||||
@@ -962,7 +953,7 @@ static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *wbuffer, int wbuf
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
static int twi_read(FAR struct i2c_master_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
irqstate_t flags;
|
||||
@@ -1011,37 +1002,6 @@ static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
return ret;
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_setownaddress
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_setownaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
{
|
||||
#error Not implemented
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_registercallback
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_registercallback((FAR struct i2c_dev_s *dev,
|
||||
int (*callback)(FAR void *arg), FAR void *arg)
|
||||
{
|
||||
#error Not implemented
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_transfer
|
||||
*
|
||||
@@ -1055,7 +1015,7 @@ static int twi_registercallback((FAR struct i2c_dev_s *dev,
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int twi_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int twi_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
@@ -1312,7 +1272,7 @@ static void twi_hw_initialize(struct twi_dev_s *priv, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int bus)
|
||||
struct i2c_master_s *up_i2cinitialize(int bus)
|
||||
{
|
||||
struct twi_dev_s *priv;
|
||||
uint32_t frequency;
|
||||
@@ -1436,7 +1396,7 @@ errout_with_irq:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
|
||||
@@ -1471,7 +1431,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s *dev)
|
||||
int up_i2creset(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
unsigned int clockcnt;
|
||||
|
||||
@@ -155,7 +155,7 @@ struct twi_attr_s
|
||||
|
||||
struct twi_dev_s
|
||||
{
|
||||
struct i2c_dev_s dev; /* Generic I2C device */
|
||||
struct i2c_master_s dev; /* Generic I2C device */
|
||||
const struct twi_attr_s *attr; /* Invariant attributes of TWIHS device */
|
||||
struct i2c_msg_s *msg; /* Message list */
|
||||
uint32_t twiclk; /* TWIHS input clock frequency */
|
||||
@@ -231,21 +231,16 @@ static void twi_startmessage(struct twi_dev_s *priv, struct i2c_msg_s *msg);
|
||||
|
||||
/* I2C device operations */
|
||||
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int twi_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int twi_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int twi_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int twi_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int twi_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count);
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_setownaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int twi_registercallback((FAR struct i2c_dev_s *dev,
|
||||
int (*callback)(FAR void *arg), FAR void *arg);
|
||||
#endif
|
||||
|
||||
/* Initialization */
|
||||
|
||||
@@ -311,10 +306,6 @@ struct i2c_ops_s g_twiops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
.transfer = twi_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
.setownaddress = twi_setownaddress
|
||||
.registercallback = twi_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/****************************************************************************
|
||||
@@ -876,7 +867,7 @@ static void twi_startmessage(struct twi_dev_s *priv, struct i2c_msg_s *msg)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t twi_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
uint32_t actual;
|
||||
@@ -902,7 +893,7 @@ static uint32_t twi_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int twi_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
|
||||
@@ -931,7 +922,7 @@ static int twi_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *wbuffer, int wbuflen)
|
||||
static int twi_write(FAR struct i2c_master_s *dev, const uint8_t *wbuffer, int wbuflen)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
irqstate_t flags;
|
||||
@@ -989,7 +980,7 @@ static int twi_write(FAR struct i2c_dev_s *dev, const uint8_t *wbuffer, int wbuf
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
static int twi_read(FAR struct i2c_master_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
irqstate_t flags;
|
||||
@@ -1038,37 +1029,6 @@ static int twi_read(FAR struct i2c_dev_s *dev, uint8_t *rbuffer, int rbuflen)
|
||||
return ret;
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_setownaddress
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_setownaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
{
|
||||
#error Not implemented
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_registercallback
|
||||
*
|
||||
* Description:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
static int twi_registercallback((FAR struct i2c_dev_s *dev,
|
||||
int (*callback)(FAR void *arg), FAR void *arg)
|
||||
{
|
||||
#error Not implemented
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: twi_transfer
|
||||
*
|
||||
@@ -1082,7 +1042,7 @@ static int twi_registercallback((FAR struct i2c_dev_s *dev,
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int twi_transfer(FAR struct i2c_dev_s *dev,
|
||||
static int twi_transfer(FAR struct i2c_master_s *dev,
|
||||
FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
@@ -1339,7 +1299,7 @@ static void twi_hw_initialize(struct twi_dev_s *priv, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int bus)
|
||||
struct i2c_master_s *up_i2cinitialize(int bus)
|
||||
{
|
||||
struct twi_dev_s *priv;
|
||||
uint32_t frequency;
|
||||
@@ -1459,7 +1419,7 @@ errout_with_irq:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *) dev;
|
||||
irqstate_t flags;
|
||||
@@ -1499,7 +1459,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s *dev)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s *dev)
|
||||
int up_i2creset(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
struct twi_dev_s *priv = (struct twi_dev_s *)dev;
|
||||
unsigned int clockcnt;
|
||||
|
||||
@@ -300,7 +300,7 @@ static inline void stm32_i2c_putreg(FAR struct stm32_i2c_priv_s *priv, uint8_t o
|
||||
static inline void stm32_i2c_modifyreg(FAR struct stm32_i2c_priv_s *priv,
|
||||
uint8_t offset, uint16_t clearbits,
|
||||
uint16_t setbits);
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_STM32_I2C_DYNTIMEO
|
||||
static useconds_t stm32_i2c_tousecs(int msgc, FAR struct i2c_msg_s *msgs);
|
||||
@@ -308,9 +308,9 @@ static useconds_t stm32_i2c_tousecs(int msgc, FAR struct i2c_msg_s *msgs);
|
||||
|
||||
static inline int stm32_i2c_sem_waitdone(FAR struct stm32_i2c_priv_s *priv);
|
||||
static inline void stm32_i2c_sem_waitstop(FAR struct stm32_i2c_priv_s *priv);
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_master_s *dev);
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_master_s *dev);
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_I2C_TRACE
|
||||
static void stm32_i2c_tracereset(FAR struct stm32_i2c_priv_s *priv);
|
||||
@@ -348,17 +348,17 @@ static int stm32_i2c3_isr(int irq, void *context);
|
||||
|
||||
static int stm32_i2c_init(FAR struct stm32_i2c_priv_s *priv);
|
||||
static int stm32_i2c_deinit(FAR struct stm32_i2c_priv_s *priv);
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int stm32_i2c_process(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count);
|
||||
static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int stm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int stm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count);
|
||||
#endif /* CONFIG_I2C_TRANSFER */
|
||||
|
||||
@@ -485,10 +485,6 @@ static const struct i2c_ops_s stm32_i2c_ops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
, .transfer = stm32_i2c_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
, .setownaddress = stm32_i2c_setownaddress,
|
||||
.registercallback = stm32_i2c_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/************************************************************************************
|
||||
@@ -546,7 +542,7 @@ static inline void stm32_i2c_modifyreg(FAR struct stm32_i2c_priv_s *priv,
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
while (sem_wait(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl) != 0)
|
||||
{
|
||||
@@ -800,7 +796,7 @@ static inline void stm32_i2c_sem_waitstop(FAR struct stm32_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_post(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
}
|
||||
@@ -813,7 +809,7 @@ static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_init(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl, 0, 1);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -829,7 +825,7 @@ static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_destroy(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -1624,7 +1620,7 @@ static int stm32_i2c_deinit(FAR struct stm32_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -1646,7 +1642,7 @@ static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequ
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -1665,7 +1661,7 @@ static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_process(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count)
|
||||
{
|
||||
struct stm32_i2c_inst_s *inst = (struct stm32_i2c_inst_s *)dev;
|
||||
@@ -1866,7 +1862,7 @@ static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *ms
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int stm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
|
||||
@@ -1889,7 +1885,7 @@ static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
int stm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
|
||||
@@ -1913,7 +1909,7 @@ int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* Ensure that address or flags don't change meanwhile */
|
||||
@@ -1933,7 +1929,7 @@ static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *m
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
FAR struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct stm32_i2c_priv_s * priv = NULL; /* Private data of device with multiple instances */
|
||||
struct stm32_i2c_inst_s * inst = NULL; /* Device, single instance */
|
||||
@@ -1994,12 +1990,12 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
|
||||
if ((volatile int)priv->refs++ == 0)
|
||||
{
|
||||
stm32_i2c_sem_init((struct i2c_dev_s *)inst);
|
||||
stm32_i2c_sem_init((struct i2c_master_s *)inst);
|
||||
stm32_i2c_init(priv);
|
||||
}
|
||||
|
||||
irqrestore(irqs);
|
||||
return (struct i2c_dev_s *)inst;
|
||||
return (struct i2c_master_s *)inst;
|
||||
}
|
||||
|
||||
/************************************************************************************
|
||||
@@ -2010,7 +2006,7 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
int irqs;
|
||||
|
||||
@@ -2040,7 +2036,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
|
||||
/* Release unused resources */
|
||||
|
||||
stm32_i2c_sem_destroy((struct i2c_dev_s *)dev);
|
||||
stm32_i2c_sem_destroy((struct i2c_master_s *)dev);
|
||||
|
||||
kmm_free(dev);
|
||||
return OK;
|
||||
@@ -2055,7 +2051,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s * dev)
|
||||
int up_i2creset(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct stm32_i2c_priv_s * priv;
|
||||
unsigned int clock_count;
|
||||
|
||||
@@ -36,6 +36,21 @@
|
||||
#ifndef __ARCH_ARM_SRC_STM32_STM32_I2C_H
|
||||
#define __ARCH_ARM_SRC_STM32_STM32_I2C_H
|
||||
|
||||
/************************************************************************************
|
||||
* Pre-processor Definitions
|
||||
************************************************************************************/
|
||||
|
||||
/* If a dynamic timeout is selected, then a non-negative, non-zero micro-
|
||||
* seconds per byte value must be provided as well.
|
||||
*/
|
||||
|
||||
#ifdef CONFIG_STM32_I2C_DYNTIMEO
|
||||
# if CONFIG_STM32_I2C_DYNTIMEO_USECPERBYTE < 1
|
||||
# warning "Ignoring CONFIG_STM32_I2C_DYNTIMEO because of CONFIG_STM32_I2C_DYNTIMEO_USECPERBYTE"
|
||||
# undef CONFIG_STM32_I2C_DYNTIMEO
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
************************************************************************************/
|
||||
|
||||
@@ -329,7 +329,7 @@ static inline void stm32_i2c_putreg(FAR struct stm32_i2c_priv_s *priv, uint8_t o
|
||||
static inline void stm32_i2c_modifyreg(FAR struct stm32_i2c_priv_s *priv,
|
||||
uint8_t offset, uint16_t clearbits,
|
||||
uint16_t setbits);
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_STM32_I2C_DYNTIMEO
|
||||
static useconds_t stm32_i2c_tousecs(int msgc, FAR struct i2c_msg_s *msgs);
|
||||
@@ -337,9 +337,9 @@ static useconds_t stm32_i2c_tousecs(int msgc, FAR struct i2c_msg_s *msgs);
|
||||
|
||||
static inline int stm32_i2c_sem_waitdone(FAR struct stm32_i2c_priv_s *priv);
|
||||
static inline void stm32_i2c_sem_waitstop(FAR struct stm32_i2c_priv_s *priv);
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_master_s *dev);
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_master_s *dev);
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_I2C_TRACE
|
||||
static void stm32_i2c_tracereset(FAR struct stm32_i2c_priv_s *priv);
|
||||
@@ -377,17 +377,17 @@ static int stm32_i2c3_isr(int irq, void *context);
|
||||
|
||||
static int stm32_i2c_init(FAR struct stm32_i2c_priv_s *priv);
|
||||
static int stm32_i2c_deinit(FAR struct stm32_i2c_priv_s *priv);
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int stm32_i2c_process(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count);
|
||||
static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int stm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int stm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count);
|
||||
#endif /* CONFIG_I2C_TRANSFER */
|
||||
|
||||
@@ -493,10 +493,6 @@ static const struct i2c_ops_s stm32_i2c_ops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
, .transfer = stm32_i2c_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
, .setownaddress = stm32_i2c_setownaddress,
|
||||
.registercallback = stm32_i2c_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/************************************************************************************
|
||||
@@ -554,7 +550,7 @@ static inline void stm32_i2c_modifyreg(FAR struct stm32_i2c_priv_s *priv,
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
while (sem_wait(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl) != 0)
|
||||
{
|
||||
@@ -808,7 +804,7 @@ static inline void stm32_i2c_sem_waitstop(FAR struct stm32_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_post(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
}
|
||||
@@ -821,7 +817,7 @@ static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_init(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl, 0, 1);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -837,7 +833,7 @@ static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_destroy(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -2055,7 +2051,7 @@ static int stm32_i2c_deinit(FAR struct stm32_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -2077,7 +2073,7 @@ static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequ
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -2096,7 +2092,7 @@ static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_process(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count)
|
||||
{
|
||||
struct stm32_i2c_inst_s *inst = (struct stm32_i2c_inst_s *)dev;
|
||||
@@ -2310,7 +2306,7 @@ static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *ms
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int stm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
|
||||
@@ -2333,7 +2329,7 @@ static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
int stm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
|
||||
@@ -2357,7 +2353,7 @@ int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* Ensure that address or flags don't change meanwhile */
|
||||
@@ -2377,7 +2373,7 @@ static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *m
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
FAR struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct stm32_i2c_priv_s * priv = NULL; /* Private data of device with multiple instances */
|
||||
struct stm32_i2c_inst_s * inst = NULL; /* Device, single instance */
|
||||
@@ -2438,12 +2434,12 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
|
||||
if ((volatile int)priv->refs++ == 0)
|
||||
{
|
||||
stm32_i2c_sem_init((struct i2c_dev_s *)inst);
|
||||
stm32_i2c_sem_init((struct i2c_master_s *)inst);
|
||||
stm32_i2c_init(priv);
|
||||
}
|
||||
|
||||
irqrestore(irqs);
|
||||
return (struct i2c_dev_s *)inst;
|
||||
return (struct i2c_master_s *)inst;
|
||||
}
|
||||
|
||||
/************************************************************************************
|
||||
@@ -2454,7 +2450,7 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
int irqs;
|
||||
|
||||
@@ -2484,7 +2480,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
|
||||
/* Release unused resources */
|
||||
|
||||
stm32_i2c_sem_destroy((struct i2c_dev_s *)dev);
|
||||
stm32_i2c_sem_destroy((struct i2c_master_s *)dev);
|
||||
|
||||
kmm_free(dev);
|
||||
return OK;
|
||||
@@ -2499,7 +2495,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s * dev)
|
||||
int up_i2creset(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct stm32_i2c_priv_s * priv;
|
||||
unsigned int clock_count;
|
||||
|
||||
@@ -298,15 +298,15 @@ static inline void stm32_i2c_modifyreg(FAR struct stm32_i2c_priv_s *priv,
|
||||
static inline void stm32_i2c_modifyreg32(FAR struct stm32_i2c_priv_s *priv,
|
||||
uint8_t offset, uint32_t clearbits,
|
||||
uint32_t setbits);
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_master_s *dev);
|
||||
#ifdef CONFIG_STM32_I2C_DYNTIMEO
|
||||
static useconds_t stm32_i2c_tousecs(int msgc, FAR struct i2c_msg_s *msgs);
|
||||
#endif /* CONFIG_STM32_I2C_DYNTIMEO */
|
||||
static inline int stm32_i2c_sem_waitdone(FAR struct stm32_i2c_priv_s *priv);
|
||||
static inline void stm32_i2c_sem_waitstop(FAR struct stm32_i2c_priv_s *priv);
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev);
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_master_s *dev);
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_master_s *dev);
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_master_s *dev);
|
||||
#ifdef CONFIG_I2C_TRACE
|
||||
static void stm32_i2c_tracereset(FAR struct stm32_i2c_priv_s *priv);
|
||||
static void stm32_i2c_tracenew(FAR struct stm32_i2c_priv_s *priv, uint32_t status);
|
||||
@@ -334,16 +334,16 @@ static int stm32_i2c3_isr(int irq, void *context);
|
||||
#endif
|
||||
static int stm32_i2c_init(FAR struct stm32_i2c_priv_s *priv);
|
||||
static int stm32_i2c_deinit(FAR struct stm32_i2c_priv_s *priv);
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev,
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int stm32_i2c_process(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count);
|
||||
static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int stm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int stm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count);
|
||||
#endif
|
||||
|
||||
@@ -449,10 +449,6 @@ struct i2c_ops_s stm32_i2c_ops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
, .transfer = stm32_i2c_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
, .setownaddress = stm32_i2c_setownaddress,
|
||||
.registercallback = stm32_i2c_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/************************************************************************************
|
||||
@@ -553,7 +549,7 @@ static inline void stm32_i2c_modifyreg32(FAR struct stm32_i2c_priv_s *priv,
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_wait(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
while (sem_wait(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl) != 0)
|
||||
{
|
||||
@@ -914,7 +910,7 @@ static inline void stm32_i2c_sem_waitstop(FAR struct stm32_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_post(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_post(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
}
|
||||
@@ -927,7 +923,7 @@ static inline void stm32_i2c_sem_post(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_init(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_init(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl, 0, 1);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -943,7 +939,7 @@ static inline void stm32_i2c_sem_init(FAR struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_dev_s *dev)
|
||||
static inline void stm32_i2c_sem_destroy(FAR struct i2c_master_s *dev)
|
||||
{
|
||||
sem_destroy(&((struct stm32_i2c_inst_s *)dev)->priv->sem_excl);
|
||||
#ifndef CONFIG_I2C_POLLED
|
||||
@@ -1650,7 +1646,7 @@ static int stm32_i2c_deinit(FAR struct stm32_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t stm32_i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -1672,7 +1668,7 @@ static uint32_t stm32_i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequ
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int stm32_i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev);
|
||||
|
||||
@@ -1691,7 +1687,7 @@ static int stm32_i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs, int count)
|
||||
static int stm32_i2c_process(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs, int count)
|
||||
{
|
||||
struct stm32_i2c_inst_s *inst = (struct stm32_i2c_inst_s *)dev;
|
||||
FAR struct stm32_i2c_priv_s *priv = inst->priv;
|
||||
@@ -1866,7 +1862,7 @@ static int stm32_i2c_process(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *ms
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int stm32_i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
|
||||
@@ -1889,7 +1885,7 @@ static int stm32_i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
int stm32_i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
|
||||
@@ -1913,7 +1909,7 @@ int stm32_i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
static int stm32_i2c_transfer(FAR struct i2c_master_s *dev, FAR struct i2c_msg_s *msgs,
|
||||
int count)
|
||||
{
|
||||
stm32_i2c_sem_wait(dev); /* ensure that address or flags don't change meanwhile */
|
||||
@@ -1933,7 +1929,7 @@ static int stm32_i2c_transfer(FAR struct i2c_dev_s *dev, FAR struct i2c_msg_s *m
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
FAR struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct stm32_i2c_priv_s * priv = NULL; /* private data of device with multiple instances */
|
||||
struct stm32_i2c_inst_s * inst = NULL; /* device, single instance */
|
||||
@@ -1994,12 +1990,12 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
|
||||
if ((volatile int)priv->refs++ == 0)
|
||||
{
|
||||
stm32_i2c_sem_init((struct i2c_dev_s *)inst);
|
||||
stm32_i2c_sem_init((struct i2c_master_s *)inst);
|
||||
stm32_i2c_init(priv);
|
||||
}
|
||||
|
||||
irqrestore(irqs);
|
||||
return (struct i2c_dev_s *)inst;
|
||||
return (struct i2c_master_s *)inst;
|
||||
}
|
||||
|
||||
/************************************************************************************
|
||||
@@ -2010,7 +2006,7 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
int up_i2cuninitialize(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
int irqs;
|
||||
|
||||
@@ -2040,7 +2036,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
|
||||
/* Release unused resources */
|
||||
|
||||
stm32_i2c_sem_destroy((struct i2c_dev_s *)dev);
|
||||
stm32_i2c_sem_destroy((struct i2c_master_s *)dev);
|
||||
|
||||
kmm_free(dev);
|
||||
return OK;
|
||||
@@ -2055,7 +2051,7 @@ int up_i2cuninitialize(FAR struct i2c_dev_s * dev)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(FAR struct i2c_dev_s * dev)
|
||||
int up_i2creset(FAR struct i2c_master_s * dev)
|
||||
{
|
||||
struct stm32_i2c_priv_s * priv;
|
||||
unsigned int clock_count;
|
||||
|
||||
@@ -280,16 +280,16 @@ static inline uint32_t tiva_i2c_getreg(struct tiva_i2c_priv_s *priv,
|
||||
static inline void tiva_i2c_putreg(struct tiva_i2c_priv_s *priv,
|
||||
unsigned int offset, uint32_t value);
|
||||
#endif
|
||||
static inline void tiva_i2c_sem_wait(struct i2c_dev_s *dev);
|
||||
static inline void tiva_i2c_sem_wait(struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_TIVA_I2C_DYNTIMEO
|
||||
static useconds_t tiva_i2c_tousecs(int msgc, struct i2c_msg_s *msgv);
|
||||
#endif /* CONFIG_TIVA_I2C_DYNTIMEO */
|
||||
|
||||
static inline int tiva_i2c_sem_waitdone(struct tiva_i2c_priv_s *priv);
|
||||
static inline void tiva_i2c_sem_post(struct i2c_dev_s *dev);
|
||||
static inline void tiva_i2c_sem_init(struct i2c_dev_s *dev);
|
||||
static inline void tiva_i2c_sem_destroy(struct i2c_dev_s *dev);
|
||||
static inline void tiva_i2c_sem_post(struct i2c_master_s *dev);
|
||||
static inline void tiva_i2c_sem_init(struct i2c_master_s *dev);
|
||||
static inline void tiva_i2c_sem_destroy(struct i2c_master_s *dev);
|
||||
|
||||
#ifdef CONFIG_I2C_TRACE
|
||||
static void tiva_i2c_tracereset(struct tiva_i2c_priv_s *priv);
|
||||
@@ -340,17 +340,17 @@ static int tiva_i2c_initialize(struct tiva_i2c_priv_s *priv, uint32_t frequency)
|
||||
static int tiva_i2c_uninitialize(struct tiva_i2c_priv_s *priv);
|
||||
static uint32_t tiva_i2c_setclock(struct tiva_i2c_priv_s *priv,
|
||||
uint32_t frequency);
|
||||
static uint32_t tiva_i2c_setfrequency(struct i2c_dev_s *dev,
|
||||
static uint32_t tiva_i2c_setfrequency(struct i2c_master_s *dev,
|
||||
uint32_t frequency);
|
||||
static int tiva_i2c_setaddress(struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int tiva_i2c_process(struct i2c_dev_s *dev, struct i2c_msg_s *msgv,
|
||||
static int tiva_i2c_setaddress(struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int tiva_i2c_process(struct i2c_master_s *dev, struct i2c_msg_s *msgv,
|
||||
int msgc);
|
||||
static int tiva_i2c_write(struct i2c_dev_s *dev, const uint8_t *buffer,
|
||||
static int tiva_i2c_write(struct i2c_master_s *dev, const uint8_t *buffer,
|
||||
int buflen);
|
||||
static int tiva_i2c_read(struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static int tiva_i2c_read(struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int tiva_i2c_transfer(struct i2c_dev_s *dev, struct i2c_msg_s *msgv,
|
||||
static int tiva_i2c_transfer(struct i2c_master_s *dev, struct i2c_msg_s *msgv,
|
||||
int msgc);
|
||||
#endif /* CONFIG_I2C_TRANSFER */
|
||||
|
||||
@@ -589,10 +589,6 @@ static const struct i2c_ops_s tiva_i2c_ops =
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
, .transfer = tiva_i2c_transfer
|
||||
#endif
|
||||
#ifdef CONFIG_I2C_SLAVE
|
||||
, .setownaddress = tiva_i2c_setownaddress,
|
||||
.registercallback = tiva_i2c_registercallback
|
||||
#endif
|
||||
};
|
||||
|
||||
/************************************************************************************
|
||||
@@ -719,7 +715,7 @@ static inline void tiva_i2c_putreg(struct tiva_i2c_priv_s *priv,
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void tiva_i2c_sem_wait(struct i2c_dev_s *dev)
|
||||
static inline void tiva_i2c_sem_wait(struct i2c_master_s *dev)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
|
||||
@@ -913,7 +909,7 @@ static inline int tiva_i2c_sem_waitdone(struct tiva_i2c_priv_s *priv)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void tiva_i2c_sem_post(struct i2c_dev_s *dev)
|
||||
static inline void tiva_i2c_sem_post(struct i2c_master_s *dev)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
|
||||
@@ -928,7 +924,7 @@ static inline void tiva_i2c_sem_post(struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void tiva_i2c_sem_init(struct i2c_dev_s *dev)
|
||||
static inline void tiva_i2c_sem_init(struct i2c_master_s *dev)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
|
||||
@@ -946,7 +942,7 @@ static inline void tiva_i2c_sem_init(struct i2c_dev_s *dev)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static inline void tiva_i2c_sem_destroy(struct i2c_dev_s *dev)
|
||||
static inline void tiva_i2c_sem_destroy(struct i2c_master_s *dev)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
|
||||
@@ -1895,7 +1891,7 @@ static uint32_t tiva_i2c_setclock(struct tiva_i2c_priv_s *priv, uint32_t frequen
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static uint32_t tiva_i2c_setfrequency(struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t tiva_i2c_setfrequency(struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
struct tiva_i2c_priv_s *priv;
|
||||
@@ -1925,7 +1921,7 @@ static uint32_t tiva_i2c_setfrequency(struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int tiva_i2c_setaddress(struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int tiva_i2c_setaddress(struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
|
||||
@@ -1949,7 +1945,7 @@ static int tiva_i2c_setaddress(struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int tiva_i2c_process(struct i2c_dev_s *dev, struct i2c_msg_s *msgv, int msgc)
|
||||
static int tiva_i2c_process(struct i2c_master_s *dev, struct i2c_msg_s *msgv, int msgc)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
struct tiva_i2c_priv_s *priv = inst->priv;
|
||||
@@ -2088,7 +2084,7 @@ static int tiva_i2c_process(struct i2c_dev_s *dev, struct i2c_msg_s *msgv, int m
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
static int tiva_i2c_write(struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int tiva_i2c_write(struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
struct i2c_msg_s msgv =
|
||||
@@ -2114,7 +2110,7 @@ static int tiva_i2c_write(struct i2c_dev_s *dev, const uint8_t *buffer, int bufl
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int tiva_i2c_read(struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
int tiva_i2c_read(struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
struct i2c_msg_s msgv =
|
||||
@@ -2141,7 +2137,7 @@ int tiva_i2c_read(struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_TRANSFER
|
||||
static int tiva_i2c_transfer(struct i2c_dev_s *dev, struct i2c_msg_s *msgv,
|
||||
static int tiva_i2c_transfer(struct i2c_master_s *dev, struct i2c_msg_s *msgv,
|
||||
int msgc)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
@@ -2167,7 +2163,7 @@ static int tiva_i2c_transfer(struct i2c_dev_s *dev, struct i2c_msg_s *msgv,
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
struct tiva_i2c_priv_s *priv = NULL; /* Private data of device with multiple instances */
|
||||
struct tiva_i2c_inst_s *inst = NULL; /* Device, single instance */
|
||||
@@ -2284,7 +2280,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
/* Initialize the device structure */
|
||||
|
||||
priv->config = config;
|
||||
tiva_i2c_sem_init((struct i2c_dev_s *)inst);
|
||||
tiva_i2c_sem_init((struct i2c_master_s *)inst);
|
||||
|
||||
/* Initialize the I2C hardware */
|
||||
|
||||
@@ -2292,7 +2288,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
}
|
||||
|
||||
irqrestore(irqs);
|
||||
return (struct i2c_dev_s *)inst;
|
||||
return (struct i2c_master_s *)inst;
|
||||
}
|
||||
|
||||
/************************************************************************************
|
||||
@@ -2303,7 +2299,7 @@ struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
int up_i2cuninitialize(struct i2c_dev_s *dev)
|
||||
int up_i2cuninitialize(struct i2c_master_s *dev)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
struct tiva_i2c_priv_s *priv ;
|
||||
@@ -2356,7 +2352,7 @@ int up_i2cuninitialize(struct i2c_dev_s *dev)
|
||||
************************************************************************************/
|
||||
|
||||
#ifdef CONFIG_I2C_RESET
|
||||
int up_i2creset(struct i2c_dev_s *dev)
|
||||
int up_i2creset(struct i2c_master_s *dev)
|
||||
{
|
||||
struct tiva_i2c_inst_s *inst = (struct tiva_i2c_inst_s *)dev;
|
||||
struct tiva_i2c_priv_s *priv;
|
||||
|
||||
@@ -87,10 +87,10 @@ static int i2c_sendaddr(struct ez80_i2cdev_s *priv, uint8_t readbit);
|
||||
|
||||
/* I2C methods */
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
@@ -496,7 +496,7 @@ failure:
|
||||
*
|
||||
* Description:
|
||||
* Set the I2C frequency. This frequency will be retained in the struct
|
||||
* i2c_dev_s instance and will be used with all transfers. Required.
|
||||
* i2c_master_s instance and will be used with all transfers. Required.
|
||||
*
|
||||
* Input Parameters:
|
||||
* dev - Device-specific state data
|
||||
@@ -507,7 +507,7 @@ failure:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
FAR struct ez80_i2cdev_s *priv = (FAR struct ez80_i2cdev_s *)dev;
|
||||
|
||||
@@ -532,7 +532,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
* Description:
|
||||
* Set the I2C slave address. This frequency will be retained in the struct
|
||||
* i2c_dev_s instance and will be used with all transfers. Required.
|
||||
* i2c_master_s instance and will be used with all transfers. Required.
|
||||
*
|
||||
* Input Parameters:
|
||||
* dev - Device-specific state data
|
||||
@@ -544,7 +544,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
FAR struct ez80_i2cdev_s *priv = (FAR struct ez80_i2cdev_s *)dev;
|
||||
|
||||
@@ -584,7 +584,7 @@ static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
FAR struct ez80_i2cdev_s *priv = (FAR struct ez80_i2cdev_s *)dev;
|
||||
const uint8_t *ptr;
|
||||
@@ -718,7 +718,7 @@ failure:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
FAR struct ez80_i2cdev_s *priv = (FAR struct ez80_i2cdev_s *)dev;
|
||||
uint8_t *ptr;
|
||||
@@ -880,7 +880,7 @@ failure:
|
||||
*
|
||||
* Description:
|
||||
* Initialize the selected I2C port. And return a unique instance of struct
|
||||
* struct i2c_dev_s. This function may be called to obtain multiple
|
||||
* struct i2c_master_s. This function may be called to obtain multiple
|
||||
* instances of the interface, each of which may be set up with a
|
||||
* different frequency and slave address.
|
||||
*
|
||||
@@ -892,7 +892,7 @@ failure:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
FAR struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
FAR struct ez80_i2cdev_s *i2c;
|
||||
uint16_t ccr;
|
||||
@@ -928,5 +928,5 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
i2c->ops = &g_ops;
|
||||
i2c->ccr = g_currccr;
|
||||
}
|
||||
return (FAR struct i2c_dev_s *)i2c;
|
||||
return (FAR struct i2c_master_s *)i2c;
|
||||
}
|
||||
|
||||
+13
-13
@@ -82,10 +82,10 @@ static uint16_t i2c_getbrg(uint32_t frequency);
|
||||
|
||||
/* I2C methods */
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen);
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency);
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits);
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen);
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen);
|
||||
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
@@ -244,7 +244,7 @@ static uint16_t i2c_getbrg(uint32_t frequency)
|
||||
*
|
||||
* Description:
|
||||
* Set the I2C frequency. This frequency will be retained in the struct
|
||||
* i2c_dev_s instance and will be used with all transfers. Required.
|
||||
* i2c_master_s instance and will be used with all transfers. Required.
|
||||
*
|
||||
* Input Parameters:
|
||||
* dev - Device-specific state data
|
||||
@@ -255,7 +255,7 @@ static uint16_t i2c_getbrg(uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
static uint32_t i2c_setfrequency(FAR struct i2c_master_s *dev, uint32_t frequency)
|
||||
{
|
||||
FAR struct z8_i2cdev_s *priv = (FAR struct z8_i2cdev_s *)dev;
|
||||
|
||||
@@ -280,7 +280,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
* Description:
|
||||
* Set the I2C slave address. This frequency will be retained in the struct
|
||||
* i2c_dev_s instance and will be used with all transfers. Required.
|
||||
* i2c_master_s instance and will be used with all transfers. Required.
|
||||
*
|
||||
* Input Parameters:
|
||||
* dev - Device-specific state data
|
||||
@@ -292,7 +292,7 @@ static uint32_t i2c_setfrequency(FAR struct i2c_dev_s *dev, uint32_t frequency)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
static int i2c_setaddress(FAR struct i2c_master_s *dev, int addr, int nbits)
|
||||
{
|
||||
FAR struct z8_i2cdev_s *priv = (FAR struct z8_i2cdev_s *)dev;
|
||||
|
||||
@@ -332,7 +332,7 @@ static int i2c_setaddress(FAR struct i2c_dev_s *dev, int addr, int nbits)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int buflen)
|
||||
static int i2c_write(FAR struct i2c_master_s *dev, const uint8_t *buffer, int buflen)
|
||||
{
|
||||
FAR struct z8_i2cdev_s *priv = (FAR struct z8_i2cdev_s *)dev;
|
||||
const uint8_t *ptr;
|
||||
@@ -445,7 +445,7 @@ static int i2c_write(FAR struct i2c_dev_s *dev, const uint8_t *buffer, int bufle
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
static int i2c_read(FAR struct i2c_master_s *dev, uint8_t *buffer, int buflen)
|
||||
{
|
||||
FAR struct z8_i2cdev_s *priv = (FAR struct z8_i2cdev_s *)dev;
|
||||
uint8_t *ptr;
|
||||
@@ -552,7 +552,7 @@ static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
*
|
||||
* Description:
|
||||
* Initialize the selected I2C port. And return a unique instance of struct
|
||||
* struct i2c_dev_s. This function may be called to obtain multiple
|
||||
* struct i2c_master_s. This function may be called to obtain multiple
|
||||
* instances of the interface, each of which may be set up with a
|
||||
* different frequency and slave address.
|
||||
*
|
||||
@@ -564,7 +564,7 @@ static int i2c_read(FAR struct i2c_dev_s *dev, uint8_t *buffer, int buflen)
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
FAR struct i2c_master_s *up_i2cinitialize(int port)
|
||||
{
|
||||
FAR struct z8_i2cdev_s *i2c;
|
||||
|
||||
@@ -602,5 +602,5 @@ FAR struct i2c_dev_s *up_i2cinitialize(int port)
|
||||
i2c->brg = g_currbrg;
|
||||
}
|
||||
|
||||
return (FAR struct i2c_dev_s *)i2c;
|
||||
return (FAR struct i2c_master_s *)i2c;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user