imx8mini evk I2C M4 core loaded application and booted with A53 core but I2C on M4 not working

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

imx8mini evk I2C M4 core loaded application and booted with A53 core but I2C on M4 not working

1,677 Views
anilpathrut
Contributor I

Hello Sir,

we are using Imx8 mini evk board , on this board we are trying to test application code of I2C  which is implemented on M4 core and we loaded M4 core application code I2C by booting with A53 and M4 core.

based on this we are testing application code of I2C, we are not able to see any thing.

where do we need to check

Please suggest for this  

0 Kudos
Reply
5 Replies

1,672 Views
igorpadykov
NXP Employee
NXP Employee

Hi Anil

 

for i2c testing one can use M4 SDK_EVK MIMX8MM  i2c examples (folder ..driver_examples/i2c)

available on https://mcuxpresso.nxp.com/en/welcome

Use oscilloscope for checking i2c signals and jtag debugger (if necessary)  IAR tool patch for i.MX 8M Mini

 

Best regards
igor

0 Kudos
Reply

1,657 Views
anilpathrut
Contributor I

Hello Sir,

as per your suggestion we have checked I2C3 signal on oscilloscope , but we are not getting any signal on the I2C3 pins of the board imx8m mini evk.

Here we are implemented I2C application software  on M4 core using I2C example code in SDK(I2C example ,master, polling Method)

This I2C3 application software  on M4 core is working on android OS

but in case of linux OS we are facing issue , M4 core application software stops working when we boot A53 with linux

also we tried by disabling all I2C in device tree file i.e (.dtsi file) still facing same issue

I have attached

1.dtsi file 

2. I2C application software i2c_polling_b2b_transfer_master.c

we are not able to identify issue

Please suggest

 

 

 

 

0 Kudos
Reply

1,644 Views
igorpadykov
NXP Employee
NXP Employee

may be recommended to try imx8mm-evk-rpmsg.dts

https://source.codeaurora.org/external/imx/linux-imx/tree/arch/arm64/boot/dts/freescale/imx8mm-evk-r...

pay attention to comment:

* ATTENTION: M4 may use IPs like below
* ECSPI0/ECSPI2, GPIO1/GPIO5, GPT1, I2C3, I2S3, WDOG1, UART4, PWM3, SDMA1

 

Best regards
igor

0 Kudos
Reply

1,628 Views
anilpathrut
Contributor I

Thanks for reply,

we have checked as you suggested but facing same issue.

we have used below procedure for your method.

Here we have used linux version is 5.10.35 and imx8m mini evk board

1.we have disabled I2C3 in imx8mm-evk-rpmsg.dts file and complied 

2. copied imx8mm-evk.dtb file into the boot partition

3. then M4 core booted and then A53 core booted with linux after this stage I2C peripheral under M4 core stops working

we have noticed that under the memory map A53 and M4 shares same memory for I2c and some other peripheral. And the APIS3 memory region is mention under the DTS driver code under linux. May be this is the reason for the issue.

Would like to if there any solution to over come this and give privilage to I2c under M4

 

also we have tried another method i.e with linux 5.10.35 prebuild demo image, for this also used same above procedure but still facing same issue "M4 core stops working after booting A53 core with linux version 5.10.35"

we stuck here Please suggest. 

Thanks in Advance.

 

 

 

 

 

0 Kudos
Reply

1,595 Views
anilpathrut
Contributor I

Hello Sir,

Please reply 

Thanks

0 Kudos
Reply