Lines Matching refs:i2c_periph
56 void i2c_deinit(uint32_t i2c_periph) in i2c_deinit() argument
58 switch(i2c_periph){ in i2c_deinit()
86 void i2c_clock_config(uint32_t i2c_periph, uint32_t clkspeed, uint32_t dutycyc) in i2c_clock_config() argument
102 temp = I2C_CTL1(i2c_periph); in i2c_clock_config()
106 I2C_CTL1(i2c_periph) = temp; in i2c_clock_config()
112 I2C_RT(i2c_periph) = I2CCLK_MAX; in i2c_clock_config()
114 I2C_RT(i2c_periph) = I2CCLK_MIN; in i2c_clock_config()
116 I2C_RT(i2c_periph) = risetime; in i2c_clock_config()
123 I2C_CKCFG(i2c_periph) |= (I2C_CKCFG_CLKC & clkc); in i2c_clock_config()
127 I2C_RT(i2c_periph) = (uint32_t)(((freq*(uint32_t)300U)/(uint32_t)1000U)+(uint32_t)1U); in i2c_clock_config()
131 I2C_CKCFG(i2c_periph) &= ~I2C_CKCFG_DTCY; in i2c_clock_config()
135 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_DTCY; in i2c_clock_config()
141 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_FAST; in i2c_clock_config()
142 I2C_CKCFG(i2c_periph) |= clkc; in i2c_clock_config()
145 I2C_RT(i2c_periph) = (uint32_t)(((freq*(uint32_t)120U)/(uint32_t)1000U)+(uint32_t)1U); in i2c_clock_config()
149 I2C_CKCFG(i2c_periph) &= ~I2C_CKCFG_DTCY; in i2c_clock_config()
153 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_DTCY; in i2c_clock_config()
156 I2C_CKCFG(i2c_periph) |= I2C_CKCFG_FAST; in i2c_clock_config()
157 I2C_CKCFG(i2c_periph) |= clkc; in i2c_clock_config()
159 I2C_FMPCFG(i2c_periph) = I2C_FMPCFG_FMPEN; in i2c_clock_config()
178 void i2c_mode_addr_config(uint32_t i2c_periph, uint32_t mode, uint32_t addformat, uint32_t addr) in i2c_mode_addr_config() argument
183 ctl = I2C_CTL0(i2c_periph); in i2c_mode_addr_config()
186 I2C_CTL0(i2c_periph) = ctl; in i2c_mode_addr_config()
189 I2C_SADDR0(i2c_periph) = (addformat | addr); in i2c_mode_addr_config()
202 void i2c_smbus_type_config(uint32_t i2c_periph, uint32_t type) in i2c_smbus_type_config() argument
205 I2C_CTL0(i2c_periph) |= I2C_CTL0_SMBSEL; in i2c_smbus_type_config()
207 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_SMBSEL); in i2c_smbus_type_config()
221 void i2c_ack_config(uint32_t i2c_periph, uint32_t ack) in i2c_ack_config() argument
224 I2C_CTL0(i2c_periph) |= I2C_CTL0_ACKEN; in i2c_ack_config()
226 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_ACKEN); in i2c_ack_config()
240 void i2c_ackpos_config(uint32_t i2c_periph, uint32_t pos) in i2c_ackpos_config() argument
244 I2C_CTL0(i2c_periph) |= I2C_CTL0_POAP; in i2c_ackpos_config()
246 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_POAP); in i2c_ackpos_config()
261 void i2c_master_addressing(uint32_t i2c_periph, uint32_t addr, uint32_t trandirection) in i2c_master_addressing() argument
270 I2C_DATA(i2c_periph) = addr; in i2c_master_addressing()
280 void i2c_dualaddr_enable(uint32_t i2c_periph, uint32_t addr) in i2c_dualaddr_enable() argument
284 I2C_SADDR1(i2c_periph) = (I2C_SADDR1_DUADEN | addr); in i2c_dualaddr_enable()
293 void i2c_dualaddr_disable(uint32_t i2c_periph) in i2c_dualaddr_disable() argument
295 I2C_SADDR1(i2c_periph) &= ~(I2C_SADDR1_DUADEN); in i2c_dualaddr_disable()
304 void i2c_enable(uint32_t i2c_periph) in i2c_enable() argument
306 I2C_CTL0(i2c_periph) |= I2C_CTL0_I2CEN; in i2c_enable()
315 void i2c_disable(uint32_t i2c_periph) in i2c_disable() argument
317 I2C_CTL0(i2c_periph) &= ~(I2C_CTL0_I2CEN); in i2c_disable()
326 void i2c_start_on_bus(uint32_t i2c_periph) in i2c_start_on_bus() argument
328 I2C_CTL0(i2c_periph) |= I2C_CTL0_START; in i2c_start_on_bus()
337 void i2c_stop_on_bus(uint32_t i2c_periph) in i2c_stop_on_bus() argument
339 I2C_CTL0(i2c_periph) |= I2C_CTL0_STOP; in i2c_stop_on_bus()
349 void i2c_data_transmit(uint32_t i2c_periph, uint8_t data) in i2c_data_transmit() argument
351 I2C_DATA(i2c_periph) = DATA_TRANS(data); in i2c_data_transmit()
360 uint8_t i2c_data_receive(uint32_t i2c_periph) in i2c_data_receive() argument
362 return (uint8_t)DATA_RECV(I2C_DATA(i2c_periph)); in i2c_data_receive()
375 void i2c_dma_enable(uint32_t i2c_periph, uint32_t dmastate) in i2c_dma_enable() argument
380 ctl = I2C_CTL1(i2c_periph); in i2c_dma_enable()
383 I2C_CTL1(i2c_periph) = ctl; in i2c_dma_enable()
396 void i2c_dma_last_transfer_config(uint32_t i2c_periph, uint32_t dmalast) in i2c_dma_last_transfer_config() argument
401 ctl = I2C_CTL1(i2c_periph); in i2c_dma_last_transfer_config()
404 I2C_CTL1(i2c_periph) = ctl; in i2c_dma_last_transfer_config()
417 void i2c_stretch_scl_low_config(uint32_t i2c_periph, uint32_t stretchpara) in i2c_stretch_scl_low_config() argument
422 ctl = I2C_CTL0(i2c_periph); in i2c_stretch_scl_low_config()
425 I2C_CTL0(i2c_periph) = ctl; in i2c_stretch_scl_low_config()
438 void i2c_slave_response_to_gcall_config(uint32_t i2c_periph, uint32_t gcallpara) in i2c_slave_response_to_gcall_config() argument
443 ctl = I2C_CTL0(i2c_periph); in i2c_slave_response_to_gcall_config()
446 I2C_CTL0(i2c_periph) = ctl; in i2c_slave_response_to_gcall_config()
459 void i2c_software_reset_config(uint32_t i2c_periph, uint32_t sreset) in i2c_software_reset_config() argument
464 ctl = I2C_CTL0(i2c_periph); in i2c_software_reset_config()
467 I2C_CTL0(i2c_periph) = ctl; in i2c_software_reset_config()
480 void i2c_pec_enable(uint32_t i2c_periph, uint32_t pecstate) in i2c_pec_enable() argument
485 ctl = I2C_CTL0(i2c_periph); in i2c_pec_enable()
488 I2C_CTL0(i2c_periph) = ctl; in i2c_pec_enable()
501 void i2c_pec_transfer_enable(uint32_t i2c_periph, uint32_t pecpara) in i2c_pec_transfer_enable() argument
506 ctl = I2C_CTL0(i2c_periph); in i2c_pec_transfer_enable()
509 I2C_CTL0(i2c_periph) = ctl; in i2c_pec_transfer_enable()
518 uint8_t i2c_pec_value_get(uint32_t i2c_periph) in i2c_pec_value_get() argument
520 return (uint8_t)((I2C_STAT1(i2c_periph) & I2C_STAT1_PECV)>>STAT1_PECV_OFFSET); in i2c_pec_value_get()
533 void i2c_smbus_issue_alert(uint32_t i2c_periph, uint32_t smbuspara) in i2c_smbus_issue_alert() argument
538 ctl = I2C_CTL0(i2c_periph); in i2c_smbus_issue_alert()
541 I2C_CTL0(i2c_periph) = ctl; in i2c_smbus_issue_alert()
554 void i2c_smbus_arp_enable(uint32_t i2c_periph, uint32_t arpstate) in i2c_smbus_arp_enable() argument
559 ctl = I2C_CTL0(i2c_periph); in i2c_smbus_arp_enable()
562 I2C_CTL0(i2c_periph) = ctl; in i2c_smbus_arp_enable()
594 FlagStatus i2c_flag_get(uint32_t i2c_periph, i2c_flag_enum flag) in i2c_flag_get() argument
596 if(RESET != (I2C_REG_VAL(i2c_periph, flag) & BIT(I2C_BIT_POS(flag)))){ in i2c_flag_get()
619 void i2c_flag_clear(uint32_t i2c_periph, i2c_flag_enum flag) in i2c_flag_clear() argument
623 I2C_STAT0(i2c_periph); in i2c_flag_clear()
624 I2C_STAT1(i2c_periph); in i2c_flag_clear()
626 I2C_REG_VAL(i2c_periph, flag) &= ~BIT(I2C_BIT_POS(flag)); in i2c_flag_clear()
641 void i2c_interrupt_enable(uint32_t i2c_periph, i2c_interrupt_enum interrupt) in i2c_interrupt_enable() argument
643 I2C_REG_VAL(i2c_periph, interrupt) |= BIT(I2C_BIT_POS(interrupt)); in i2c_interrupt_enable()
657 void i2c_interrupt_disable(uint32_t i2c_periph, i2c_interrupt_enum interrupt) in i2c_interrupt_disable() argument
659 I2C_REG_VAL(i2c_periph, interrupt) &= ~BIT(I2C_BIT_POS(interrupt)); in i2c_interrupt_disable()
684 FlagStatus i2c_interrupt_flag_get(uint32_t i2c_periph, i2c_interrupt_flag_enum int_flag) in i2c_interrupt_flag_get() argument
689 bufie = I2C_CTL1(i2c_periph)&I2C_CTL1_BUFIE; in i2c_interrupt_flag_get()
692 intenable = (I2C_REG_VAL(i2c_periph, int_flag) & BIT(I2C_BIT_POS(int_flag))); in i2c_interrupt_flag_get()
694 flagstatus = (I2C_REG_VAL2(i2c_periph, int_flag) & BIT(I2C_BIT_POS2(int_flag))); in i2c_interrupt_flag_get()
726 void i2c_interrupt_flag_clear(uint32_t i2c_periph, i2c_interrupt_flag_enum int_flag) in i2c_interrupt_flag_clear() argument
730 I2C_STAT0(i2c_periph); in i2c_interrupt_flag_clear()
731 I2C_STAT1(i2c_periph); in i2c_interrupt_flag_clear()
733 I2C_REG_VAL2(i2c_periph, int_flag) &= ~BIT(I2C_BIT_POS2(int_flag)); in i2c_interrupt_flag_clear()