i.MX7, M4 ECSPI data corruption on RPMSG Message receive

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX7, M4 ECSPI data corruption on RPMSG Message receive

638 Views
martinkortmann
Contributor I

Hi,

I have a project, where data should be send via ECSPI2, triggered by Timer3 (GTA), running on the M4 Core.

The SPI is running at 24MHz without any interrupts. The timer triggers an interrupt with an rate of 100KHz.

Inside the timer interrupt the data will be send out to the SPI Bus in 4 24 Bit bursts, no receive.

Everything works fine. Clock is stable, spi is running. i can start the linux system and everything looks perfect.

Now i have to send some data from the linux/Cortex-A side to the M4 Core. I am using a RPMSG_TTY connection for this. The datas are arriving at the M4, but as soon as the first RPMSG message arrives, the SPI transmission is corrupt. The first 24 bit data frame has only 20-21 clock impulses, frame 2-4 are looking good.

I have tried to send the spa data inside of the RPMSG Receive callback, inside the timer interrupt and also outside of any interrupt, nothing helps. 

Any ideas whats going on here?

 

Thank you

Martin

Labels (1)
0 Kudos
1 Reply

402 Views
igorpadykov
NXP Employee
NXP Employee

Hi Martin

what bsp used in the case, could you try with latest Linux 4.9.11_1.0.0 BSP

use sect.2.6.2.2 Running i.MX RPMsg Test Programs Linux Guide from below link

and try other rpmsg tests, does lowering timer interrupt frequency help,

was issue reproduced on i.MX7D Sabre board.

https://www.nxp.com/webapp/Download?colCode=L4.9.11_1.0.0_LINUX_DOCS 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos