panda.cc: add panda deep sleep mode(#23911)

* needed for panda deepsleep mode

* add set_deepsleep to panda.cc

* rename to enable_deepsleep

* remove void

* fix value

* bump panda
old-commit-hash: 0b64ddb678
taco
Igor Biletskyy 3 years ago committed by GitHub
parent 505e2e370c
commit c60d1ca766
  1. 2
      panda
  2. 2
      selfdrive/boardd/boardd.cc
  3. 4
      selfdrive/boardd/panda.cc
  4. 1
      selfdrive/boardd/panda.h

@ -1 +1 @@
Subproject commit 51ccb9fbd266796e1bf6ffda8b93c4119ab09ff4
Subproject commit 234e436e93f4dbd084fd912fe9b10d504ca9882e

@ -371,7 +371,7 @@ std::optional<bool> send_panda_states(PubMaster *pm, const std::vector<Panda *>
size_t j = 0;
for (size_t f = size_t(cereal::PandaState::FaultType::RELAY_MALFUNCTION);
f <= size_t(cereal::PandaState::FaultType::INTERRUPT_RATE_TICK); f++) {
f <= size_t(cereal::PandaState::FaultType::INTERRUPT_RATE_EXTI); f++) {
if (fault_bits.test(f)) {
faults.set(j, cereal::PandaState::FaultType(f));
j++;

@ -338,6 +338,10 @@ void Panda::set_power_saving(bool power_saving) {
usb_write(0xe7, power_saving, 0);
}
void Panda::enable_deepsleep(void) {
usb_write(0xfb, 0, 0);
}
void Panda::set_usb_power_mode(cereal::PeripheralState::UsbPowerMode power_mode) {
usb_write(0xe6, (uint16_t)power_mode, 0);
}

@ -85,6 +85,7 @@ class Panda {
std::optional<std::vector<uint8_t>> get_firmware_version();
std::optional<std::string> get_serial();
void set_power_saving(bool power_saving);
void enable_deepsleep();
void set_usb_power_mode(cereal::PeripheralState::UsbPowerMode power_mode);
void send_heartbeat(bool engaged);
void set_can_speed_kbps(uint16_t bus, uint16_t speed);

Loading…
Cancel
Save