i.MX51 Linux USB

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

i.MX51 Linux USB

Jump to solution
8,179 Views
eahlen
Contributor I

Hi,

I have a custom i.MX51 board heavily based on the babbage board. I'm trying to get USB to work on it without success. I'm using Linux kernel 3.11 and Device Tree (I have an old system running on the board with kernel 2.6.31). The first problem was that the "compatible" value for usbmisc was "fsl,imx51-usbmisc" which doesn't even have a mapping. If I've understood it correctly I should be able to use "fsl,imx53-usbmisc" here if I'm not disabling over current detection? I've also made a patch for imx51-usbmisc which I plan on submitting if I can get it tested. But this makes me suspect that USB has never been tested on i.MX51? The funny thing is that I actually got it working once when debugging the kernel over JTAG and had a breakpoint set in ci_hdrc_imx_probe, but haven't been able to reproduce.

Any ideas are much appreciated!

Labels (3)
Tags (1)
0 Kudos
Reply
1 Solution
6,301 Views
erikahlén
Contributor II

If someone else have the same problem I wanted to write that I found a patch that solved my problems with USB OTG.

[PATCH] ARM: dts: i.MX51: Fix OTG PHY clock

View solution in original post

0 Kudos
Reply
23 Replies
438 Views
erikahlén
Contributor II

Hi Fabio,

Thanks for your reply. Haven't been able to answer from the same account as the one I used to create the issue due to some problems.

Now to the issue at hand. I've seen that the "old" driver is in the the kernel but without DT support. Haven't tried it though. And yes we have USB working with kernel 2.6.31.

Looking at that patch makes me wonder if I've missed something or if the person writing it has even read the reference manual. The bits for disabling over current detection are not the same on mx51. As far as I can see it's only possible to disable it on the OTG port. The other ports only have "Power Mask" which disables both Vbus power and over current detection.

As I said earlier I've got it working once with Linux 3.11 and DT. So I don't think it would be too much work needed to actually have proper DT USB support for mx51. But I don't really know what needs to be done. Do you have any clues or hints? Or do you know someone that might know?

Again, thanks for your help so far!

Regards,

Erik Ahlén

0 Kudos
Reply
438 Views
fabio_estevam
NXP Employee
NXP Employee

Erik,

Best place to discuss mx51 USB dt support would be the linux-arm-kernel and linux-usb mailing lists.

Please start a thread there and post patches if you have any.

Regards,

Fabio Estevam

0 Kudos
Reply
438 Views
fabio_estevam
NXP Employee
NXP Employee

Let me rephrase the first sentence of my previous reply: usb bost is not supported via device tree in mx51.

The old method of board file (arch/arm/mach-imx/mach-mx51_babbage.c ) does have functional USB host support.

What needs to be done is to add device tree support to mx51 usb.

Regards,

Fabio Estevam