|
spin_until_cond(state_transition_timeout(conf_chan, exp_state, timeout)); |
spin_until_cond is a bad choice. It is a busy wait, it is blocking the cpu core on startup and resume from suspend for up to 500ms.
Please, replace it with
msleep or other yilding wait.