~ruther/qmk_firmware

70661645917cc9a8e492abb82828c55cf137b834 — Drashna Jaelre 5 years ago 0e2ff9b
Completely remove i2c_transmit_receive function (#7686)

* Add i2c_transmit_receive function

This function is listed in the ARM header file, but doesn't actually exist.

* Remove i2c_transmit_receive function

* Update DRV2605L read function to use i2c_readReg on both arm and avr
2 files changed, 2 insertions(+), 10 deletions(-)

M drivers/arm/i2c_master.h
M drivers/haptic/DRV2605L.c
M drivers/arm/i2c_master.h => drivers/arm/i2c_master.h +0 -1
@@ 101,7 101,6 @@ void         i2c_init(void);
i2c_status_t i2c_start(uint8_t address);
i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout);
i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout);
i2c_status_t i2c_transmit_receive(uint8_t address, uint8_t* tx_body, uint16_t tx_length, uint8_t* rx_body, uint16_t rx_length);
i2c_status_t i2c_writeReg(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout);
i2c_status_t i2c_readReg(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout);
void         i2c_stop(void);

M drivers/haptic/DRV2605L.c => drivers/haptic/DRV2605L.c +2 -9
@@ 32,16 32,9 @@ void DRV_write(uint8_t drv_register, uint8_t settings) {
}

uint8_t DRV_read(uint8_t regaddress) {
#ifdef __AVR__
    i2c_readReg(DRV2605L_BASE_ADDRESS << 1, regaddress, DRV2605L_read_buffer, 1, 100);
    DRV2605L_read_register = (uint8_t)DRV2605L_read_buffer[0];
#else
    DRV2605L_tx_register[0] = regaddress;
    if (MSG_OK != i2c_transmit_receive(DRV2605L_BASE_ADDRESS << 1, DRV2605L_tx_register, 1, DRV2605L_read_buffer, 1)) {
        printf("err reading reg \n");
    }
    DRV2605L_read_register = (uint8_t)DRV2605L_read_buffer[0];
#endif

    return DRV2605L_read_register;
}



@@ 127,4 120,4 @@ void DRV_pulse(uint8_t sequence) {
    DRV_write(DRV_GO, 0x00);
    DRV_write(DRV_WAVEFORM_SEQ_1, sequence);
    DRV_write(DRV_GO, 0x01);
}
\ No newline at end of file
}