the ‘jump if’ steps in the power management config seem to allow us to wait for a clean shutdown of a linux on-board computer before the payload power is switched off.
Question: does a jump offset of 0 mean that the same step is executed again?
for example, does
PSQ_JUMP_IF_FUNCTION_IS_TRUE(checkZynqOff, 0)
call the checkZynqOff function again and again until it returns true?
Or: does
PSQ_JUMP_IFNOT_TIMEOUT(timer, 0)
wait until the timer expires?
and it works, the loop ends if either there is a timeout or the function isZynqShutDown returns true.
I was a little bit surprised when I counted how often isZynqShutDown is called: a few thousand times per second. I hope the IPMC is not completely blocked by this loop for 30secs …