From a8482a4424ee3035d2a7487ea8d0de8684d3918f Mon Sep 17 00:00:00 2001 From: Alabastard-64 <96358682+Alabastard-64@users.noreply.github.com> Date: Wed, 12 Jan 2022 19:51:05 -0700 Subject: [PATCH] PMW3389 Revert Firmware load during Initilization (#15859) --- docs/feature_pointing_device.md | 1 - drivers/sensors/pmw3389.c | 6 ++---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index def592a61c..5f1260eede 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md @@ -174,7 +174,6 @@ The PMW 3389 is an SPI driven optical sensor, that uses a built in IR LED for su |`PMW3389_SPI_DIVISOR` | (Optional) Sets the SPI Divisor used for SPI communication. | _varies_ | |`PMW3389_LIFTOFF_DISTANCE` | (Optional) Sets the lift off distance at run time | `0x02` | |`ROTATIONAL_TRANSFORM_ANGLE` | (Optional) Allows for the sensor data to be rotated +/- 30 degrees directly in the sensor. | `0` | -|`PMW3389_LEGACY_FIRMWARE_UPLOAD` | (Optional) Switches to older, manual upload of firmware, for compatibility. | _not defined_ | The CPI range is 50-16000, in increments of 50. Defaults to 2000 CPI. diff --git a/drivers/sensors/pmw3389.c b/drivers/sensors/pmw3389.c index 11056bb89e..d6f02b6a59 100644 --- a/drivers/sensors/pmw3389.c +++ b/drivers/sensors/pmw3389.c @@ -210,16 +210,14 @@ void pmw3389_upload_firmware(void) { spi_write(REG_SROM_Load_Burst | 0x80); wait_us(15); -#ifdef PMW3389_LEGACY_FIRMWARE_UPLOAD + // legacy only for PMW3389 spi_transmit failed to load firmware unsigned char c; for (int i = 0; i < FIRMWARE_LENGTH; i++) { c = (unsigned char)pgm_read_byte(firmware_data + i); spi_write(c); wait_us(15); } -#else - spi_transmit(firmware_data, sizeof(firmware_data)); -#endif + wait_us(200); pmw3389_read(REG_SROM_ID);