瀏覽代碼

Fix for SPI write timing in PMW3360 driver (#15519)

Timing does not match Pixart documentation for this sensor (may have been carried forward from adns9800).
Not aware of any issues coming from this currently.
It should only cause issues when writing to multiple registers in succession which currently only happens during initialization for the PMW3360.
This should prevent future issues with write operations if other features of the sensor are added.
Alabastard-64 3 年之前
父節點
當前提交
f08824f6eb
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      drivers/sensors/pmw3360.c

+ 3 - 3
drivers/sensors/pmw3360.c

@@ -108,10 +108,10 @@ spi_status_t spi_write_adv(uint8_t reg_addr, uint8_t data) {
     status              = spi_write(data);
 
     // tSCLK-NCS for write operation
-    wait_us(20);
+    wait_us(35);
 
-    // tSWW/tSWR (=120us) minus tSCLK-NCS. Could be shortened, but is looks like a safe lower bound
-    wait_us(100);
+    // tSWW/tSWR (=180us) minus tSCLK-NCS. Could be shortened, but is looks like a safe lower bound
+    wait_us(145);
     spi_stop();
     return status;
 }