Skip to content
Commit 005e12bd authored by Andy Ross's avatar Andy Ross Committed by Anas Nashif
Browse files

soc/intel_adsp: Add hardware race workaround to cavstool



On cAVS 1.8 (specifically) there seems to be a propagation delay on
the IPC registers.  Hitting the TDA register to signal DONE too soon
after clearing the interrupt via TDR can cause the interrupt to be
dropped.  Merely polling for it to read back correctly isn't
sufficient, we need an actual sleep here.

(The behavior that a message won't send while an existing message is
in progress is actually a hardware feature that is new with 1.8.  My
guess is it's a little glitchy in its first version.)

Signed-off-by: default avatarAndy Ross <andrew.j.ross@intel.com>
parent 45242d92
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment