~ruther/qmk_firmware

aed64aaef4724c01a30b1815c0c910ca8b1a5e43 — Drashna Jaelre 3 years ago 3fa592a
[Core] Fix Sensor driver code (#15484)

2 files changed, 3 insertions(+), 4 deletions(-)

M drivers/sensors/cirque_pinnacle_spi.c
M drivers/sensors/pmw3360.c
M drivers/sensors/cirque_pinnacle_spi.c => drivers/sensors/cirque_pinnacle_spi.c +2 -3
@@ 15,7 15,7 @@ extern bool touchpad_init;
void RAP_ReadBytes(uint8_t address, uint8_t* data, uint8_t count) {
    uint8_t cmdByte = READ_MASK | address;  // Form the READ command byte
    if (touchpad_init) {
        if (spi_start(CIRQUE_PINNACLE_SPI_CS_PIN, CIRQUE_TRACKPAD_SPI_LSBFIRST, CIRQUE_PINNACLE_SPI_MODE, CIRQUE_PINNACLE_SPI_DIVISOR)) {
        if (spi_start(CIRQUE_PINNACLE_SPI_CS_PIN, CIRQUE_PINNACLE_SPI_LSBFIRST, CIRQUE_PINNACLE_SPI_MODE, CIRQUE_PINNACLE_SPI_DIVISOR)) {
            spi_write(cmdByte);
            spi_read();  // filler
            spi_read();  // filler


@@ 27,7 27,6 @@ void RAP_ReadBytes(uint8_t address, uint8_t* data, uint8_t count) {
            dprintf("error right touchpad\n");
#endif
            touchpad_init = false;
            j
        }
        spi_stop();
    }


@@ 38,7 37,7 @@ void RAP_Write(uint8_t address, uint8_t data) {
    uint8_t cmdByte = WRITE_MASK | address;  // Form the WRITE command byte

    if (touchpad_init) {
        if (spi_start(CIRQUE_PINNACLE_SPI_CS_PIN, CIRQUE_TRACKPAD_SPI_LSBFIRST, CIRQUE_PINNACLE_SPI_MODE, CIRQUE_PINNACLE_SPI_DIVISOR)) {
        if (spi_start(CIRQUE_PINNACLE_SPI_CS_PIN, CIRQUE_PINNACLE_SPI_LSBFIRST, CIRQUE_PINNACLE_SPI_MODE, CIRQUE_PINNACLE_SPI_DIVISOR)) {
            spi_write(cmdByte);
            spi_write(data);
        } else {

M drivers/sensors/pmw3360.c => drivers/sensors/pmw3360.c +1 -1
@@ 143,7 143,7 @@ void pmw3360_set_cpi(uint16_t cpi) {

uint16_t pmw3360_get_cpi(void) {
    uint8_t cpival = spi_read_adv(REG_Config1);
    return (uint16_t)(cpival & 0xFF) * 100;
    return (uint16_t)((cpival + 1) & 0xFF) * 100;
}

bool pmw3360_init(void) {