Source code of 'USB-OTG' port and I2S/ESAI for 'SABRE for Automotive Infotainment Based on the i.MX 6 Series' with IMX6U

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

Source code of 'USB-OTG' port and I2S/ESAI for 'SABRE for Automotive Infotainment Based on the i.MX 6 Series' with IMX6U

1,344 Views
stevencao
Contributor I

I have a 'SABRE for Automotive Infotainment Based on the i.MX 6 Series' evaluation board.

My onboard CPU is IMX6U which is i.MX 6DualLite processor.

I have successfully built U-boot and Linux Kernel.


1. I need to use the onboard USB-OTG port as a slave and have succeeded to do that.


     Where is the source code (Kernel ?) for OTG' port? I probably need to make some modification to it for our application.


2. We need to use I2S protocol between IMX6 and one of our RF tuner chip to transfer data. Freescale suggested us to use ESAI on IMX6. So, we need a I2S Kernel (?) driver over ESAI interface.


  • Do you have an existing I2S Kernel (?) driver over ESAI interface? We need to use the DMA transfer since we have quite some data to transfer.


  • I looked at your source code and found this:  rpm/BUILD/linux-3.0.35/sound/soc/imx/imx-esai.c

          Is it the correct one? If yes, how can I trigger this module to run in my evaluation board?


  • I found multiple I2S driver (for examples, under 'rpm/BUILD/linux-3.0.35/sound/soc/samsung' or 'rpm/BUILD/linux-3.0.35/sound/soc/s6000'). Does Freescale have one for this evaluation board?

Thanks,

Steven

0 Kudos
4 Replies

711 Views
Yuri
NXP Employee
NXP Employee

Please use the "i.MX_6Dual6Quad_Linux_Reference_Manual.pdf" ;

Chapter 23 [Advanced Linux Sound Architecture (ALSA) System on a Chip (ASoC) Sound Driver],

Chapter 34 (ARC USB Driver).

https://www.freescale.com/webapp/Download?colCode=L3.0.35_4.1.0_LINUX_DOCS&location=null&fpsp=1&Pare...

Also You may refer to "i.MX_6Solo6DualLite_Linux_Reference_Manual.pdf"

0 Kudos

711 Views
stevencao
Contributor I

Hi, I am referring to the Chapter 35 in  "i.MX_6Solo6DualLite_Linux_Reference_Manual.pdf".

Section 35.2.4 (Programming Interface)

     See the BSP API document, for more information.

I cannot find this document 'BSP API'. Would you please send to me?

Do you have any sample code how to use the OTG port as a slave of USB connection from PC?

Thanks,

Steven

0 Kudos

711 Views
Yuri
NXP Employee
NXP Employee

  As for the BSP API You may refrer to “/doxygen” directory in the documentation package.

Some examples may be found in /unit_tests directory of Linux target image.

  According to  i.MX6 Linux release notes it supports USB mouse and USB keypad.

Also in USB Host mode the following classes are supported : MSC, HID, UVC, USB audio.

In USB device mode: MSC, Ethernet, Serial.

   Please apply to general Linux documentation / examples how to use these features.

0 Kudos

711 Views
stevencao
Contributor I

Hi,

I got the USB OTG port to work as a USB CDC ACM serial port on the board. On my Ubuntu 12.04, I can communicate with the target as a serial port when USB cable was connected.

However, I could not get my Windows 7 64-bit PC to work with it, Window 7 failed to find a correct driver. I googled the internet and did not find a good one for it.

Do you have a Window 7 64-bit USB CDC AMC serial driver that you can send to me? It should be a generic driver for all USB CDC ACM.

Thanks,

Steven

0 Kudos