On 4/28/2020 7:29 PM, Lu, Brent wrote:
I've looked at the code and byt_is_dsp_busy seems suspicious to me. Can you check if following change fixes problem for you:(...)
We seem to treat SST_IPCX as 32 bit register instead of 64 one, which may explain wrong behaviour. (Specification says it is 64 bit register).
Thanks, Amadeusz
Hi Amadeusz,
The patch does not work but I managed to create a workaround just for reference. Still don't know why first read in sst_byt_irq_thread returns incorrect value.
Hi, yes that seems bit weird. It is bit better as it does not modify common code, but still... Maybe going back to your original idea of replacing memcpy, try replacing it with readq? It should generate one instruction read (although it is only for x64_64, for 32 bit kernel we would still need to do something else).
Thanks, Amadeusz