Hello Everyone,
I have port imx-i2c driver from Linux to Optee. As in Linux, the driver is called to start i2c communication through i2c_imx_start, when it tries to read the content of I2C1->IFDR it freezes and I can't do anything after it.
My question is:
1. Is it possible to do I2C communication from Optee in IMX6UL?
2. If yes for the above question, Is there any configuration I am missing?
3. Is there any document that can help me to do it?
My observation with unit_tests/memtool is same, it just prints address and freezes.
I
My Linux kernel rev :4.19.35-00021-g9a6e1ef226ac-dirty
Optee rev: revision 3.8 (f252692d)
Looking forward to your reply.
Hi Asma
freezing while reading i2c registers may point that i2c clocks
are not enabled, one can check i.MX6UL CCM_CCGR2 register.
Also may be important sion bit, it should be set in i2c signals
iomux settings.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thank you for the quick reply.
My i2c device tree and clocks are written correctly and working perfectly fine because my touch screen controller and battery charger are working on it in the Linux kernel.
Even though they are working parallel, I just want to read register values through memtool. If I do it, kernel freezes.
The above two things you mentioned are not a problem, which I am confident.
Can there be some other issue?
Regards,
Asma
Hi Asma
I understand that i2c is working fine in Linux kernel, but how this relates to OpTee ?
Best regards
igor