          ir_pwr = 100.0 * (MIN_IR_POWER + ((cur_integ_lines - CUTOFF_IL) * (MAX_IR_POWER - MIN_IR_POWER) / (SATURATE_IL - CUTOFF_IL)));
        }
      }
  
      // Disable ir_pwr on front frame timeout
      uint64_t cur_t = nanos_since_boot();
      if (cur_t - last_front_frame_t > 1e9) {
        ir_pwr = 0;
      }
  
      if (ir_pwr != prev_ir_pwr || cnt % 100 == 0 || ir_pwr >= 50.0) {
        panda->set_ir_pwr(ir_pwr);
 
</s> remove     if (ir_pwr != prev_ir_pwr || cnt % 100 == 0 || ir_pwr >= 50.0) {
 </s> add     if (ir_pwr != prev_ir_pwr || sm.frame % 100 == 0 || ir_pwr >= 50.0) { </s> remove       last_front_frame_t = event.getLogMonoTime();
 </s> add       last_driver_camera_t = event.getLogMonoTime(); </s> remove       if (fan_speed != prev_fan_speed || cnt % 100 == 0) {
 </s> add       if (fan_speed != prev_fan_speed || sm.frame % 100 == 0) { </s> remove   unsigned int cnt = 0;
 </s> add  </s> remove   uint64_t last_front_frame_t = 0;
 </s> add   uint64_t last_driver_camera_t = 0;
    // Disable IR on input timeout
    if (nanos_since_boot() - last_driver_camera_t > 1e9) {
          ir_pwr = 100.0 * (MIN_IR_POWER + ((cur_integ_lines - CUTOFF_IL) * (MAX_IR_POWER - MIN_IR_POWER) / (SATURATE_IL - CUTOFF_IL)));
        }
      }
  
    // Disable IR on input timeout
    if (nanos_since_boot() - last_driver_camera_t > 1e9) {
    // Disable IR on input timeout
    if (nanos_since_boot() - last_driver_camera_t > 1e9) {
    // Disable IR on input timeout
    if (nanos_since_boot() - last_driver_camera_t > 1e9) {
        ir_pwr = 0;
      }
  
      if (ir_pwr != prev_ir_pwr || cnt % 100 == 0 || ir_pwr >= 50.0) {
        panda->set_ir_pwr(ir_pwr);
keep keep keep keep replace replace replace keep keep keep keep keep
 boardd: misc cleanup (#28969)

* boardd cleanup

* no more front frame

* faster connect loop

* fix that on mac 
selfdrive/boardd/boardd.cc