diff --git a/arch/arm/src/efm32/efm32_i2c.c b/arch/arm/src/efm32/efm32_i2c.c index 23e9c970d54..fd37b6b473a 100644 --- a/arch/arm/src/efm32/efm32_i2c.c +++ b/arch/arm/src/efm32/efm32_i2c.c @@ -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; diff --git a/arch/arm/src/lpc11xx/lpc11_i2c.c b/arch/arm/src/lpc11xx/lpc11_i2c.c index e058b7db607..f8be01a92ad 100644 --- a/arch/arm/src/lpc11xx/lpc11_i2c.c +++ b/arch/arm/src/lpc11xx/lpc11_i2c.c @@ -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; diff --git a/arch/arm/src/lpc17xx/lpc17_i2c.c b/arch/arm/src/lpc17xx/lpc17_i2c.c index b68253d1325..1288137133e 100644 --- a/arch/arm/src/lpc17xx/lpc17_i2c.c +++ b/arch/arm/src/lpc17xx/lpc17_i2c.c @@ -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; diff --git a/arch/arm/src/lpc2378/lpc23xx_i2c.c b/arch/arm/src/lpc2378/lpc23xx_i2c.c index e7f07f3356e..8ca35d9fd2a 100644 --- a/arch/arm/src/lpc2378/lpc23xx_i2c.c +++ b/arch/arm/src/lpc2378/lpc23xx_i2c.c @@ -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; diff --git a/arch/arm/src/lpc31xx/lpc31_i2c.c b/arch/arm/src/lpc31xx/lpc31_i2c.c index 2fed9b3e0ee..a999e84ad53 100644 --- a/arch/arm/src/lpc31xx/lpc31_i2c.c +++ b/arch/arm/src/lpc31xx/lpc31_i2c.c @@ -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; diff --git a/arch/arm/src/lpc43xx/lpc43_i2c.c b/arch/arm/src/lpc43xx/lpc43_i2c.c index 902c369f0c4..e3bd78cbcb0 100644 --- a/arch/arm/src/lpc43xx/lpc43_i2c.c +++ b/arch/arm/src/lpc43xx/lpc43_i2c.c @@ -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; } diff --git a/arch/arm/src/sam34/sam_twi.c b/arch/arm/src/sam34/sam_twi.c index bf919694049..e8783df2f35 100644 --- a/arch/arm/src/sam34/sam_twi.c +++ b/arch/arm/src/sam34/sam_twi.c @@ -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; diff --git a/arch/arm/src/sama5/sam_twi.c b/arch/arm/src/sama5/sam_twi.c index 8e6f15a6f99..3dac7c69a7f 100644 --- a/arch/arm/src/sama5/sam_twi.c +++ b/arch/arm/src/sama5/sam_twi.c @@ -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; diff --git a/arch/arm/src/samv7/sam_twihs.c b/arch/arm/src/samv7/sam_twihs.c index a76b17ed4d5..4aa93de92fb 100644 --- a/arch/arm/src/samv7/sam_twihs.c +++ b/arch/arm/src/samv7/sam_twihs.c @@ -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; diff --git a/arch/arm/src/stm32/stm32_i2c.c b/arch/arm/src/stm32/stm32_i2c.c index 40cf4020262..2d183b6796f 100644 --- a/arch/arm/src/stm32/stm32_i2c.c +++ b/arch/arm/src/stm32/stm32_i2c.c @@ -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; diff --git a/arch/arm/src/stm32/stm32_i2c.h b/arch/arm/src/stm32/stm32_i2c.h index 4a41708ed67..8fd836cd239 100644 --- a/arch/arm/src/stm32/stm32_i2c.h +++ b/arch/arm/src/stm32/stm32_i2c.h @@ -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 ************************************************************************************/ diff --git a/arch/arm/src/stm32/stm32_i2c_alt.c b/arch/arm/src/stm32/stm32_i2c_alt.c index fdc68f54025..7f8431aa645 100644 --- a/arch/arm/src/stm32/stm32_i2c_alt.c +++ b/arch/arm/src/stm32/stm32_i2c_alt.c @@ -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; diff --git a/arch/arm/src/stm32/stm32f30xxx_i2c.c b/arch/arm/src/stm32/stm32f30xxx_i2c.c index 31cacb53537..0a480b854ae 100644 --- a/arch/arm/src/stm32/stm32f30xxx_i2c.c +++ b/arch/arm/src/stm32/stm32f30xxx_i2c.c @@ -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; diff --git a/arch/arm/src/tiva/tiva_i2c.c b/arch/arm/src/tiva/tiva_i2c.c index ad5ba535f4a..538c16509aa 100644 --- a/arch/arm/src/tiva/tiva_i2c.c +++ b/arch/arm/src/tiva/tiva_i2c.c @@ -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; diff --git a/arch/z80/src/ez80/ez80_i2c.c b/arch/z80/src/ez80/ez80_i2c.c index d01a0b516e6..6edec8cf30a 100644 --- a/arch/z80/src/ez80/ez80_i2c.c +++ b/arch/z80/src/ez80/ez80_i2c.c @@ -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; } diff --git a/arch/z80/src/z8/z8_i2c.c b/arch/z80/src/z8/z8_i2c.c index 2d9ed317999..fbfefe22e66 100644 --- a/arch/z80/src/z8/z8_i2c.c +++ b/arch/z80/src/z8/z8_i2c.c @@ -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; }