We need to transfer some data from M4 to A9. For this purpose we use a shared memory in RAM (DDR). M4 writes the data and then rise a GPIO to tell the A9 data is available. M4 is running free RTOS with cache disabled. A9 is running linux 4.1.5 with PREEMT RT patch , cache enabled and it is suspended on the GPIO change with the poll primitive. Usually the process works, but sometimes when the A9 reads old data. We suspect that it's accessing its own cache and not the RAM. We tried to disable the cache in the kernel but without success (kernel hangs very early after u-boot launch it we don't see a single print).
So questions are:
Hi Alessandro
-linux device driver - how to allocate non-cacheable physical memory in kernel? - Stack Overflow
-seems not
had you tried with nxp releases described on
i.MX 6 / i.MX 7 Series Software and Development Tool|NXP
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------