Lines Matching refs:i2c_periph
52 void i2c_deinit(uint32_t i2c_periph) in i2c_deinit() argument
54 switch (i2c_periph) { in i2c_deinit()
82 void i2c_clock_config(uint32_t i2c_periph, uint32_t clkspeed, uint32_t dutycyc) in i2c_clock_config() argument
93 temp = I2C_CTL1(i2c_periph); in i2c_clock_config()
97 I2C_CTL1(i2c_periph) = temp; in i2c_clock_config()
103 I2C_RT(i2c_periph) = I2CCLK_MAX; in i2c_clock_config()
105 I2C_RT(i2c_periph) = I2CCLK_MIN; in i2c_clock_config()
107 I2C_RT(i2c_periph) = risetime; in i2c_clock_config()
114 I2C_CKCFG(i2c_periph) |= (I2C_CKCFG_CLKC & clkc); in i2c_clock_config()
118 I2C_RT(i2c_periph) = (uint32_t) (((freq * (uint32_t) 300U)/(uint32_t)1000U)+(uint32_t)1U); in i2c_clock_config()
122 I2C_CKCFG(i2c_periph) &= ~I2C_CKCFG_DTCY; in i2c_clock_config()
126 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_DTCY; in i2c_clock_config()
132 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_FAST; in i2c_clock_config()
133 I2C_CKCFG(i2c_periph) |= clkc; in i2c_clock_config()
136 … I2C_RT (i2c_periph) = (uint32_t) (((freq * (uint32_t) 120U) / (uint32_t) 1000U)+(uint32_t) 1U); in i2c_clock_config()
140 I2C_CKCFG(i2c_periph) &= ~I2C_CKCFG_DTCY; in i2c_clock_config()
144 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_DTCY; in i2c_clock_config()
147 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_FAST; in i2c_clock_config()
148 I2C_CKCFG(i2c_periph) |= clkc; in i2c_clock_config()
150 I2C_FMPCFG(i2c_periph) |= I2C_FMPCFG_FMPEN; in i2c_clock_config()
169 void i2c_mode_addr_config(uint32_t i2c_periph, uint32_t mode,uint32_t addformat, uint32_t addr) in i2c_mode_addr_config() argument
174 ctl = I2C_CTL0(i2c_periph); in i2c_mode_addr_config()
177 I2C_CTL0(i2c_periph) = ctl; in i2c_mode_addr_config()
180 I2C_SADDR0(i2c_periph) = (addformat | addr); in i2c_mode_addr_config()
193 void i2c_smbus_type_config(uint32_t i2c_periph, uint32_t type) in i2c_smbus_type_config() argument
196 I2C_CTL0(i2c_periph) |= I2C_CTL0_SMBSEL; in i2c_smbus_type_config()
198 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_SMBSEL); in i2c_smbus_type_config()
212 void i2c_ack_config(uint32_t i2c_periph, uint32_t ack) in i2c_ack_config() argument
215 I2C_CTL0(i2c_periph) |= I2C_CTL0_ACKEN; in i2c_ack_config()
217 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_ACKEN); in i2c_ack_config()
231 void i2c_ackpos_config(uint32_t i2c_periph, uint32_t pos) in i2c_ackpos_config() argument
235 I2C_CTL0(i2c_periph) |= I2C_CTL0_POAP; in i2c_ackpos_config()
237 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_POAP); in i2c_ackpos_config()
252 void i2c_master_addressing(uint32_t i2c_periph, uint32_t addr,uint32_t trandirection) in i2c_master_addressing() argument
261 I2C_DATA(i2c_periph) = addr; in i2c_master_addressing()
271 void i2c_dualaddr_enable(uint32_t i2c_periph, uint32_t dualaddr) in i2c_dualaddr_enable() argument
275 I2C_SADDR1(i2c_periph) = (I2C_SADDR1_DUADEN | dualaddr); in i2c_dualaddr_enable()
284 void i2c_dualaddr_disable(uint32_t i2c_periph) in i2c_dualaddr_disable() argument
286 I2C_SADDR1(i2c_periph) &= ~(I2C_SADDR1_DUADEN); in i2c_dualaddr_disable()
295 void i2c_enable(uint32_t i2c_periph) in i2c_enable() argument
297 I2C_CTL0(i2c_periph) |= I2C_CTL0_I2CEN; in i2c_enable()
306 void i2c_disable(uint32_t i2c_periph) in i2c_disable() argument
308 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_I2CEN); in i2c_disable()
317 void i2c_start_on_bus(uint32_t i2c_periph) in i2c_start_on_bus() argument
319 I2C_CTL0(i2c_periph) |= I2C_CTL0_START; in i2c_start_on_bus()
328 void i2c_stop_on_bus(uint32_t i2c_periph) in i2c_stop_on_bus() argument
330 I2C_CTL0(i2c_periph) |= I2C_CTL0_STOP; in i2c_stop_on_bus()
340 void i2c_data_transmit(uint32_t i2c_periph, uint8_t data) in i2c_data_transmit() argument
342 I2C_DATA(i2c_periph) = DATA_TRANS(data); in i2c_data_transmit()
351 uint8_t i2c_data_receive(uint32_t i2c_periph) in i2c_data_receive() argument
353 return (uint8_t) DATA_RECV(I2C_DATA(i2c_periph)); in i2c_data_receive()
366 void i2c_dma_enable(uint32_t i2c_periph, uint32_t dmastate) in i2c_dma_enable() argument
371 ctl = I2C_CTL1(i2c_periph); in i2c_dma_enable()
374 I2C_CTL1(i2c_periph) = ctl; in i2c_dma_enable()
387 void i2c_dma_last_transfer_config(uint32_t i2c_periph, uint32_t dmalast) in i2c_dma_last_transfer_config() argument
392 ctl = I2C_CTL1(i2c_periph); in i2c_dma_last_transfer_config()
395 I2C_CTL1(i2c_periph) = ctl; in i2c_dma_last_transfer_config()
408 void i2c_stretch_scl_low_config(uint32_t i2c_periph, uint32_t stretchpara) in i2c_stretch_scl_low_config() argument
413 ctl = I2C_CTL0(i2c_periph); in i2c_stretch_scl_low_config()
416 I2C_CTL0(i2c_periph) = ctl; in i2c_stretch_scl_low_config()
429 void i2c_slave_response_to_gcall_config(uint32_t i2c_periph, uint32_t gcallpara) in i2c_slave_response_to_gcall_config() argument
434 ctl = I2C_CTL0(i2c_periph); in i2c_slave_response_to_gcall_config()
437 I2C_CTL0(i2c_periph) = ctl; in i2c_slave_response_to_gcall_config()
450 void i2c_software_reset_config(uint32_t i2c_periph, uint32_t sreset) in i2c_software_reset_config() argument
455 ctl = I2C_CTL0(i2c_periph); in i2c_software_reset_config()
458 I2C_CTL0(i2c_periph) = ctl; in i2c_software_reset_config()
471 void i2c_pec_enable(uint32_t i2c_periph, uint32_t pecstate) in i2c_pec_enable() argument
476 ctl = I2C_CTL0(i2c_periph); in i2c_pec_enable()
479 I2C_CTL0(i2c_periph) = ctl; in i2c_pec_enable()
492 void i2c_pec_transfer_enable(uint32_t i2c_periph, uint32_t pecpara) in i2c_pec_transfer_enable() argument
497 ctl = I2C_CTL0(i2c_periph); in i2c_pec_transfer_enable()
500 I2C_CTL0(i2c_periph) = ctl; in i2c_pec_transfer_enable()
509 uint8_t i2c_pec_value_get(uint32_t i2c_periph) in i2c_pec_value_get() argument
511 return (uint8_t) ((I2C_STAT1(i2c_periph) & I2C_STAT1_PECV)>> STAT1_PECV_OFFSET); in i2c_pec_value_get()
524 void i2c_smbus_issue_alert(uint32_t i2c_periph, uint32_t smbuspara) in i2c_smbus_issue_alert() argument
529 ctl = I2C_CTL0(i2c_periph); in i2c_smbus_issue_alert()
532 I2C_CTL0(i2c_periph) = ctl; in i2c_smbus_issue_alert()
545 void i2c_smbus_arp_enable(uint32_t i2c_periph, uint32_t arpstate) in i2c_smbus_arp_enable() argument
550 ctl = I2C_CTL0(i2c_periph); in i2c_smbus_arp_enable()
553 I2C_CTL0(i2c_periph) = ctl; in i2c_smbus_arp_enable()
585 FlagStatus i2c_flag_get(uint32_t i2c_periph, i2c_flag_enum flag) in i2c_flag_get() argument
587 if (RESET != (I2C_REG_VAL(i2c_periph, flag) & BIT(I2C_BIT_POS(flag)))) { in i2c_flag_get()
610 void i2c_flag_clear(uint32_t i2c_periph, i2c_flag_enum flag) in i2c_flag_clear() argument
614 I2C_STAT0(i2c_periph); in i2c_flag_clear()
615 I2C_STAT1(i2c_periph); in i2c_flag_clear()
617 I2C_REG_VAL(i2c_periph, flag) &= ~BIT(I2C_BIT_POS(flag)); in i2c_flag_clear()
632 void i2c_interrupt_enable(uint32_t i2c_periph, i2c_interrupt_enum interrupt) in i2c_interrupt_enable() argument
634 I2C_REG_VAL(i2c_periph, interrupt) |= BIT(I2C_BIT_POS(interrupt)); in i2c_interrupt_enable()
648 void i2c_interrupt_disable(uint32_t i2c_periph, i2c_interrupt_enum interrupt) in i2c_interrupt_disable() argument
650 I2C_REG_VAL(i2c_periph, interrupt) &= ~BIT(I2C_BIT_POS(interrupt)); in i2c_interrupt_disable()
675 FlagStatus i2c_interrupt_flag_get(uint32_t i2c_periph,i2c_interrupt_flag_enum int_flag) in i2c_interrupt_flag_get() argument
680 bufie = I2C_CTL1(i2c_periph) & I2C_CTL1_BUFIE; in i2c_interrupt_flag_get()
683 intenable = (I2C_REG_VAL(i2c_periph, int_flag) & BIT(I2C_BIT_POS(int_flag))); in i2c_interrupt_flag_get()
685 flagstatus = (I2C_REG_VAL2(i2c_periph, int_flag)& BIT(I2C_BIT_POS2(int_flag))); in i2c_interrupt_flag_get()
717 void i2c_interrupt_flag_clear(uint32_t i2c_periph,i2c_interrupt_flag_enum int_flag) in i2c_interrupt_flag_clear() argument
721 I2C_STAT0(i2c_periph); in i2c_interrupt_flag_clear()
722 I2C_STAT1(i2c_periph); in i2c_interrupt_flag_clear()
724 I2C_REG_VAL2(i2c_periph, int_flag) &= ~BIT(I2C_BIT_POS2(int_flag)); in i2c_interrupt_flag_clear()