Skip to content
Snippets Groups Projects
Commit f3fffaa5 authored by Marc-Oliver Westerburg's avatar Marc-Oliver Westerburg
Browse files

fix AC97 read timeouts

Previously we see AC97 read register calls timing out every once in a
while. Adding some debug outputs, these mostly seem to be cases, where
the SAI driver doesn't find the expected answer in the received frames.

Three potential causes have been identified:
 * frame "border" occuring exactly between enabling RMR and TMR,
 resulting in receiving an additional empty RX frame (4 instead of 3)
 until the answer arrives
 * kernel preemption between RMR and TMR resulting in potentially lots
 of empty frames accumulating in the RX-FIFO
 * runnig in a timeout, because the code gave up after 63us already (3
 frames), although due to the asynchronous timing we might have to wait
 up to almost 104us (5 frames)

This patch adds fixes for all three cases. During first manual tests no
more timeouts could be produced.

BCS: 746-001295
parent 5550ff9a
No related branches found
No related tags found
2 merge requests!455CI: Update gitlab-ci,!300fix AC97 read timeouts
Pipeline #60420 passed with stage
in 9 seconds
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment