I tried to minimize the changes of this patch #22774 and I found something very weird.
In my laptop the only place where waiting is needed is in RADEONDownloadFromScreenCP, but I decided to go further and see how many iterations where required. It turns out that 99.99% of the time only 1 iteration is needed (i == 0), in very rare occasions (one per session) 2 iterations are needed.
So I tried to minimize even more and I found out that doing a single read seems to fix the issue almost completely.
I'm attaching the patch, hopefully this would help track down the issue.
Created an attachment (id=22960)
Miminal patch.
I tried to minimize the changes of this patch #22774 and I found something very weird.
In my laptop the only place where waiting is needed is in RADEONDownloadF romScreenCP, but I decided to go further and see how many iterations where required. It turns out that 99.99% of the time only 1 iteration is needed (i == 0), in very rare occasions (one per session) 2 iterations are needed.
So I tried to minimize even more and I found out that doing a single read seems to fix the issue almost completely.
I'm attaching the patch, hopefully this would help track down the issue.