boardd: set min spi timeout

pull/28265/head
Adeeb Shihadeh 2 years ago
parent d433dc693d
commit ea1e0a16dd
  1. 5
      selfdrive/boardd/spi.cc

@ -35,7 +35,7 @@ struct __attribute__((packed)) spi_header {
uint16_t max_rx_len;
};
const int SPI_ACK_TIMEOUT = 500; // milliseconds
const unsigned int SPI_ACK_TIMEOUT = 500; // milliseconds
const std::string SPI_DEVICE = "/dev/spidev0.0";
class LockEx {
@ -238,9 +238,10 @@ int PandaSpiHandle::spi_transfer_retry(uint8_t endpoint, uint8_t *tx_data, uint1
int PandaSpiHandle::wait_for_ack(uint8_t ack, uint8_t tx, unsigned int timeout) {
double start_millis = millis_since_boot();
if (timeout <= 0) {
if (timeout == 0) {
timeout = SPI_ACK_TIMEOUT;
}
timeout = std::clamp(timeout, 100U, SPI_ACK_TIMEOUT);
spi_ioc_transfer transfer = {
.tx_buf = (uint64_t)tx_buf,

Loading…
Cancel
Save