Lines Matching refs:i2c_periph
53 void i2c_deinit(uint32_t i2c_periph) in i2c_deinit() argument
55 switch(i2c_periph){ in i2c_deinit()
83 void i2c_clock_config(uint32_t i2c_periph, uint32_t clkspeed, uint32_t dutycyc) in i2c_clock_config() argument
94 temp = I2C_CTL1(i2c_periph); in i2c_clock_config()
98 I2C_CTL1(i2c_periph) = temp; in i2c_clock_config()
104 I2C_RT(i2c_periph) = I2CCLK_MAX; in i2c_clock_config()
106 I2C_RT(i2c_periph) = I2CCLK_MIN; in i2c_clock_config()
108 I2C_RT(i2c_periph) = risetime; in i2c_clock_config()
115 I2C_CKCFG(i2c_periph) |= (I2C_CKCFG_CLKC & clkc); in i2c_clock_config()
119 I2C_RT(i2c_periph) = (uint32_t)(((freq*(uint32_t)300U)/(uint32_t)1000U)+(uint32_t)1U); in i2c_clock_config()
123 I2C_CKCFG(i2c_periph) &= ~I2C_CKCFG_DTCY; in i2c_clock_config()
127 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_DTCY; in i2c_clock_config()
133 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_FAST; in i2c_clock_config()
134 I2C_CKCFG(i2c_periph) |= clkc; in i2c_clock_config()
137 I2C_RT(i2c_periph) = (uint32_t)(((freq*(uint32_t)120U)/(uint32_t)1000U)+(uint32_t)1U); in i2c_clock_config()
141 I2C_CKCFG(i2c_periph) &= ~I2C_CKCFG_DTCY; in i2c_clock_config()
145 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_DTCY; in i2c_clock_config()
148 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_FAST; in i2c_clock_config()
149 I2C_CKCFG(i2c_periph) |= clkc; in i2c_clock_config()
151 I2C_FMPCFG(i2c_periph) = I2C_FMPCFG_FMPEN; in i2c_clock_config()
170 void i2c_mode_addr_config(uint32_t i2c_periph, uint32_t mode, uint32_t addformat, uint32_t addr) in i2c_mode_addr_config() argument
175 ctl = I2C_CTL0(i2c_periph); in i2c_mode_addr_config()
178 I2C_CTL0(i2c_periph) = ctl; in i2c_mode_addr_config()
182 I2C_SADDR0(i2c_periph) = (addformat | addr); in i2c_mode_addr_config()
195 void i2c_smbus_type_config(uint32_t i2c_periph, uint32_t type) in i2c_smbus_type_config() argument
198 I2C_CTL0(i2c_periph) |= I2C_CTL0_SMBSEL; in i2c_smbus_type_config()
200 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_SMBSEL); in i2c_smbus_type_config()
214 void i2c_ack_config(uint32_t i2c_periph, uint32_t ack) in i2c_ack_config() argument
217 I2C_CTL0(i2c_periph) |= I2C_CTL0_ACKEN; in i2c_ack_config()
219 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_ACKEN); in i2c_ack_config()
233 void i2c_ackpos_config(uint32_t i2c_periph, uint32_t pos) in i2c_ackpos_config() argument
237 I2C_CTL0(i2c_periph) |= I2C_CTL0_POAP; in i2c_ackpos_config()
239 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_POAP); in i2c_ackpos_config()
254 void i2c_master_addressing(uint32_t i2c_periph, uint32_t addr, uint32_t trandirection) in i2c_master_addressing() argument
263 I2C_DATA(i2c_periph) = addr; in i2c_master_addressing()
273 void i2c_dualaddr_enable(uint32_t i2c_periph, uint32_t addr) in i2c_dualaddr_enable() argument
277 I2C_SADDR1(i2c_periph) = (I2C_SADDR1_DUADEN | addr); in i2c_dualaddr_enable()
286 void i2c_dualaddr_disable(uint32_t i2c_periph) in i2c_dualaddr_disable() argument
288 I2C_SADDR1(i2c_periph) &= ~(I2C_SADDR1_DUADEN); in i2c_dualaddr_disable()
297 void i2c_enable(uint32_t i2c_periph) in i2c_enable() argument
299 I2C_CTL0(i2c_periph) |= I2C_CTL0_I2CEN; in i2c_enable()
308 void i2c_disable(uint32_t i2c_periph) in i2c_disable() argument
310 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_I2CEN); in i2c_disable()
319 void i2c_start_on_bus(uint32_t i2c_periph) in i2c_start_on_bus() argument
321 I2C_CTL0(i2c_periph) |= I2C_CTL0_START; in i2c_start_on_bus()
330 void i2c_stop_on_bus(uint32_t i2c_periph) in i2c_stop_on_bus() argument
332 I2C_CTL0(i2c_periph) |= I2C_CTL0_STOP; in i2c_stop_on_bus()
342 void i2c_data_transmit(uint32_t i2c_periph, uint8_t data) in i2c_data_transmit() argument
344 I2C_DATA(i2c_periph) = DATA_TRANS(data); in i2c_data_transmit()
353 uint8_t i2c_data_receive(uint32_t i2c_periph) in i2c_data_receive() argument
355 return (uint8_t)DATA_RECV(I2C_DATA(i2c_periph)); in i2c_data_receive()
368 void i2c_dma_enable(uint32_t i2c_periph, uint32_t dmastate) in i2c_dma_enable() argument
373 ctl = I2C_CTL1(i2c_periph); in i2c_dma_enable()
376 I2C_CTL1(i2c_periph) = ctl; in i2c_dma_enable()
389 void i2c_dma_last_transfer_config(uint32_t i2c_periph, uint32_t dmalast) in i2c_dma_last_transfer_config() argument
394 ctl = I2C_CTL1(i2c_periph); in i2c_dma_last_transfer_config()
397 I2C_CTL1(i2c_periph) = ctl; in i2c_dma_last_transfer_config()
410 void i2c_stretch_scl_low_config(uint32_t i2c_periph, uint32_t stretchpara) in i2c_stretch_scl_low_config() argument
415 ctl = I2C_CTL0(i2c_periph); in i2c_stretch_scl_low_config()
418 I2C_CTL0(i2c_periph) = ctl; in i2c_stretch_scl_low_config()
431 void i2c_slave_response_to_gcall_config(uint32_t i2c_periph, uint32_t gcallpara) in i2c_slave_response_to_gcall_config() argument
436 ctl = I2C_CTL0(i2c_periph); in i2c_slave_response_to_gcall_config()
439 I2C_CTL0(i2c_periph) = ctl; in i2c_slave_response_to_gcall_config()
452 void i2c_software_reset_config(uint32_t i2c_periph, uint32_t sreset) in i2c_software_reset_config() argument
457 ctl = I2C_CTL0(i2c_periph); in i2c_software_reset_config()
460 I2C_CTL0(i2c_periph) = ctl; in i2c_software_reset_config()
473 void i2c_pec_enable(uint32_t i2c_periph, uint32_t pecstate) in i2c_pec_enable() argument
478 ctl = I2C_CTL0(i2c_periph); in i2c_pec_enable()
481 I2C_CTL0(i2c_periph) = ctl; in i2c_pec_enable()
494 void i2c_pec_transfer_enable(uint32_t i2c_periph, uint32_t pecpara) in i2c_pec_transfer_enable() argument
499 ctl = I2C_CTL0(i2c_periph); in i2c_pec_transfer_enable()
502 I2C_CTL0(i2c_periph) = ctl; in i2c_pec_transfer_enable()
511 uint8_t i2c_pec_value_get(uint32_t i2c_periph) in i2c_pec_value_get() argument
513 return (uint8_t)((I2C_STAT1(i2c_periph) & I2C_STAT1_PECV)>>STAT1_PECV_OFFSET); in i2c_pec_value_get()
526 void i2c_smbus_issue_alert(uint32_t i2c_periph, uint32_t smbuspara) in i2c_smbus_issue_alert() argument
531 ctl = I2C_CTL0(i2c_periph); in i2c_smbus_issue_alert()
534 I2C_CTL0(i2c_periph) = ctl; in i2c_smbus_issue_alert()
547 void i2c_smbus_arp_enable(uint32_t i2c_periph, uint32_t arpstate) in i2c_smbus_arp_enable() argument
552 ctl = I2C_CTL0(i2c_periph); in i2c_smbus_arp_enable()
555 I2C_CTL0(i2c_periph) = ctl; in i2c_smbus_arp_enable()
587 FlagStatus i2c_flag_get(uint32_t i2c_periph, i2c_flag_enum flag) in i2c_flag_get() argument
589 if(RESET != (I2C_REG_VAL(i2c_periph, flag) & BIT(I2C_BIT_POS(flag)))){ in i2c_flag_get()
612 void i2c_flag_clear(uint32_t i2c_periph, i2c_flag_enum flag) in i2c_flag_clear() argument
616 I2C_STAT0(i2c_periph); in i2c_flag_clear()
617 I2C_STAT1(i2c_periph); in i2c_flag_clear()
619 I2C_REG_VAL(i2c_periph, flag) &= ~BIT(I2C_BIT_POS(flag)); in i2c_flag_clear()
634 void i2c_interrupt_enable(uint32_t i2c_periph, i2c_interrupt_enum interrupt) in i2c_interrupt_enable() argument
636 I2C_REG_VAL(i2c_periph, interrupt) |= BIT(I2C_BIT_POS(interrupt)); in i2c_interrupt_enable()
650 void i2c_interrupt_disable(uint32_t i2c_periph, i2c_interrupt_enum interrupt) in i2c_interrupt_disable() argument
652 I2C_REG_VAL(i2c_periph, interrupt) &= ~BIT(I2C_BIT_POS(interrupt)); in i2c_interrupt_disable()
677 FlagStatus i2c_interrupt_flag_get(uint32_t i2c_periph, i2c_interrupt_flag_enum int_flag) in i2c_interrupt_flag_get() argument
682 bufie = I2C_CTL1(i2c_periph)&I2C_CTL1_BUFIE; in i2c_interrupt_flag_get()
685 intenable = (I2C_REG_VAL(i2c_periph, int_flag) & BIT(I2C_BIT_POS(int_flag))); in i2c_interrupt_flag_get()
687 flagstatus = (I2C_REG_VAL2(i2c_periph, int_flag) & BIT(I2C_BIT_POS2(int_flag))); in i2c_interrupt_flag_get()
719 void i2c_interrupt_flag_clear(uint32_t i2c_periph, i2c_interrupt_flag_enum int_flag) in i2c_interrupt_flag_clear() argument
723 I2C_STAT0(i2c_periph); in i2c_interrupt_flag_clear()
724 I2C_STAT1(i2c_periph); in i2c_interrupt_flag_clear()
726 I2C_REG_VAL2(i2c_periph, int_flag) &= ~BIT(I2C_BIT_POS2(int_flag)); in i2c_interrupt_flag_clear()