cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
8,779 Views
Registered: ‎09-21-2009

USB in embedded linux on ML507

Hi guys,

 

I am trying to add USB support to the linux reference design  (ug511_ppc440) and I am having Xilinx tutorials as a reference ("ML507 BSB Design PPC440 Adding Standard IP" and "ML507 Standard IP Design PPC440 Adding a USB Controller".

 

After solving several other problems during bitstream generation, I run into strange warning I can't solve:

 

"WARNING:MDT - : Default slave handling for unknown IP xps_epc_0 (xps_epc)

Failed... It won't show up in the device tree.

Can't find parameter C_BASEADDR in xps_epc_0"

 

xps_epc is using C_PRH0_BASEADDR instead of C_BASEADDR, but I guess it is referenced wrong in some place I can't find...

 

 I am using XPS 10.1 SP3

 

I am loosing my mind with this and I'd appreciate any help,

 

 

Thanks,

Miro

 

PS

I added the FPGA pinout relevant to the USB controller communication to system.ucf manually (according to USB reference design example), since I didn't find any other way to add it.

 

 

 

0 Kudos
8 Replies
Highlighted
Anonymous
Not applicable
8,755 Views

I can't remember if I was ever successful at auto-generating the .dts with the EPC included, but I know the following entry in the .dts will work if you add it manually:

 

 

xps_epc_0: epc@90000000 { compatible = "nxp,usb-isp1760"; reg = < 0x90000000 0x100000 >; big-endian; interrupt-parent = <&xps_intc_0>; interrupts = < 1 2 >; } ;

 

Obvioulsy you'll need to manually adjust the device to match your driver, along with the addresses and interrupt settings to match your system. 

 

Terry

 


 

 

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
8,750 Views
Registered: ‎09-10-2008

We now have a usb host controller IP core that works without the EPC and the device tree generator probably doesn't support the EPC as we don't use it with Linux in general.

 

There's a wiki page about the usb host controller that you might checkout at http://xilinx.wikidot.com/usb-host-controller-driver.

 

Your best bet is this.

 

Thanks.

 

 

0 Kudos
Highlighted
Visitor
Visitor
8,720 Views
Registered: ‎09-21-2009

Hi John

 

I am not sure how to configure the USB2 IP, the only design reference I found which uses it is xapp1140 and it is for Platform Studio 11.2, while I use 10.1SP3.... Is there any tutorial how to configure the IP ports of the USB2?

 

 

 

 

Thanks you for your help guys,

 

Meir

Message Edited by meirts on 10-15-2009 03:21 AM
Message Edited by meirts on 10-15-2009 05:21 AM
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
8,714 Views
Registered: ‎09-10-2008

let me ask others who know about this.
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
8,712 Views
Registered: ‎09-10-2008

It's not real clear if your trying to use the USB host controller core or the USB device core as they are different.

 

If you're trying to use the USB device core, the following notes are from the wiki at http://xilinx.wikidot.com/osl-usbgadget-driver.

 

XApp997: Reference Design: LogiCore OPB USB 2.0 Device has more documentation about how to use a similar core (OPB vs XPS) and the daughter board. This driver was tested with the XPS USB Device core which is a newer core based on a newer bus rather than the OPB.

 

If you're trying to use the USB Host controller, Julie will be adding an MHS snippet to the wiki page at http://xilinx.wikidot.com/usb-host-controller-driver which should help.

 

Thanks.

0 Kudos
Highlighted
Visitor
Visitor
8,706 Views
Registered: ‎09-21-2009

 I need USB host support,

 

I tried to enable the external host controller with EPC, but with not too much success - I think my problem is with tree generator - I tried to use Terry's suggestion of entering the EPC config manually into dts file, but I am not sure what means the "compatible = "nxp, usb-isp1760";" line and how I need to modify it....

 

The only example of using USB2 host IP I found is for version 11.2 which I don't have yet (maybe in the near future)....

 

Thanks,

 

Meir

0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
8,700 Views
Registered: ‎04-23-2008

Take a look at XAPP1140.  It make use of the xps USB host controller core (NOT the Cypress chip soldered on to the ML5XX).  It requires a daughter card with a USB PHY to use it (around $40).

 

-Brian

 

0 Kudos
Highlighted
Anonymous
Not applicable
8,697 Views

Meir - sorry, I should have been more clear - the "compatible" line  in this example is set up to use the isp1760 driver.   you would need to modify it to specify the driver for whatever USB chip you are trying to talk to, assuming there is driver support for your chip in the kernel source.

 

Terry

 

0 Kudos