Hi,
is it possible to use the Linux SDMA driver for I2C communication on a i.MX8MQ (EVK)?
I see DMA releated code in drivers/i2c/busses/i2c-imx.c. But when booting Linux 4.14.78 I get
i2c i2c-0: IMX I2C adapter registered
i2c i2c-0: can't use DMA, using PIO instead.
I supposed I need to configure the device tree accordingly. But Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt does not mention I2C as possible peripheral type.
Thanks in advance!
Steven
Hi Steven,
the existing DMA code in the i2c-imx driver seems to be related to the DMA engine on i.MX28 (not SDMA).
The existing ROM/RAM routines for SDMA don't have special support for I2C transfers. But I see a chance that this can be done using a custom SDMA script. I plan to work on this in the near future, please let me know if you are still interested.
regards
Christian
Hello Steven,
Unfortunately it is not possible since the i2c driver does not allow the Linux SDMA driver.
Have a great day,
TIC
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
Hello James,
thanks for your fast reply.
What exactly means "the i2c driver does not allow the Linux SDMA Driver"?
Is it supported by hardware, i.e. the i.MX SDMA Controller, but not (yet) by Software, i.e. Linux?
Is there code missing in the driver?
Will there be support in the near future?
Thanks a million,
Steven
Hello Steven,
I apologize if I was confusing you,. The I2C Peripheral Hardware support DMA, but the actual Linux i2c driver available in our BSP does not have the implementation to support this feature, and we do not have plans in the near future to have this implementation.
We offer our professional Services in order to customize the driver as your requirements.
Have a nice day!
Jaime