Skip to contentSkip to conversation

USB Host support

U-Boot-Users Junior 5 participants 8 messages Jun 21, 2007 – Jun 29, 2007 1 message not in the archive

lore
Share & tools
lore

Junior

author
#0 lore raw

Hi All,
Just an inquiry on the USB host support.
I've been thinking about ading USB host support to my u-boot port but I'm not sure what current infrastructure is there to make this painless.
Is there a generic interface for this, or is this done on a platform by platform basis?

My motive here is to be able to detect a usb memory stick and be able to read and write to to it. Have anyone been suscessfull in doing this? This would be done on an ARM9 platform.

Thanks,
--Jr.

#1 lore raw

Junior,

Quoted 5 lines · Junior

Just an inquiry on the USB host support.
I've been thinking about ading USB host support to my u-boot port but I'm not sure what current infrastructure is there to make this painless. Is there a generic interface for this, or is this done on a platform by platform basis?

The higher level interfaces are all in place and there are drivers for different controllers such as OHCI and UHCI. Some of these controller drivers are still board dependant, but we're in the progress of merging them together into one generic driver. If you happen to have an OHCI Controller, don't miss "doc/README.generic_usb_ohci".

Quoted 3 lines

My motive here is to be able to detect a usb memory stick and be able to read and write to to it. Have anyone been suscessfull in doing this? This would be done on an ARM9 platform.

Writing is not supported so far, but reading works fine on a number of architectures and boards.

Best regards

Markus Klotzbuecher

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de

author
#2 lore raw
Quoted 9 lines
Quoted 6 lines · Junior

Just an inquiry on the USB host support.
I've been thinking about ading USB host support to my u-boot port but I'm not
sure what current infrastructure is there to make this painless. Is there a generic interface for this, or is this done on a platform by platform basis?

Quoted 5 lines

The higher level interfaces are all in place and there are drivers for different controllers such as OHCI and UHCI. Some of these controller drivers are still board dependant, but we're in the progress of merging them together into one generic driver. If you happen to have an OHCI Controller, don't miss "doc/README.generic_usb_ohci".

Hi Markus,
I could not find this README document in any source and I just pulled the git source. Any idea where it is?

Quoted 6 lines
Quoted 3 lines

My motive here is to be able to detect a usb memory stick and be able to read and write to to it. Have anyone been suscessfull in doing this? This would be done on an ARM9 platform.

Writing is not supported so far, but reading works fine on a number of architectures and boards.

reading is really what I'm primary looking for.

Thanks,
--Jr.

____________________________________________________________
PREVENT ACCESSING DANGEROUS WEBSITES - Protect your computer with Free Web Security Guard! More information at http://www.inbox.com/wsg

#3 lore raw

Hi Junior,

Quoted 14 lines
Quoted 7 lines
Quoted 6 lines

Just an inquiry on the USB host support.
I've been thinking about ading USB host support to my u-boot port but I'm not
sure what current infrastructure is there to make this painless. Is there a generic interface for this, or is this done on a platform by platform basis?

Quoted 5 lines

The higher level interfaces are all in place and there are drivers for different controllers such as OHCI and UHCI. Some of these controller drivers are still board dependant, but we're in the progress of merging them together into one generic driver. If you happen to have an OHCI Controller, don't miss "doc/README.generic_usb_ohci".

Quoted 3 lines

Hi Markus,
I could not find this README document in any source and I just pulled the git source. Any idea where it is?

This is in Markus' u-boot-usb custodian[1] repository and not yet merged into mainline. You can check out an online version here[2].

Cheers
Detlev

[1] http://www.denx.de/wiki/UBoot/Custodians
[2] http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot/u-boot-usb.git;a=blob;f=doc/README.generic_usb_ohci;h=c343dfdf90af41c74b738e214703d03564361ae4;hb=9b7464a2c88614e1061f509c48930a3d240d1a35

Signature · 8 lines
While  the list of  different methods is not  endless, it is certainly
pretty long, with new ones being dreamed up all the time. Fortunately,
space limitations prevent us from looking at all of them.
                                            -- Andrew S. Tanenbaum
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de

A message that is not in the archive (sent off-list or not yet received): [email protected]

#5 lore raw

Dear David,

Please keep the list on CC:

Quoted 6 lines · David.Saada at ecitele.com
Quoted 5 lines

The higher level interfaces are all in place and there are drivers for different controllers such as OHCI and UHCI. Some of these controller drivers are still board dependant, but we're in the progress of merging them together into one generic driver. If you happen to have an OHCI Controller, don't miss "doc/README.generic_usb_ohci".

Is there a plan to support EHCI as well?

There are already boards supporting USB 2.0. Grep for "USB_2_0_DEVICE".

Quoted 4 lines
Quoted 3 lines

Writing is not supported so far, but reading works fine on a number of architectures and boards.

Do you plan to support writing as well?

No, not at the moment. USB is typically used for updating components of the system for which reading files is sufficient. What do you need support for writing for?

Viele Gr??e / Best regards

Markus Klotzb?cher

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de

#6 lore raw
Quoted 4 lines

Dear David,

Please keep the list on CC:

Sorry. Wrong reply button...

Quoted 8 lines
Quoted 6 lines
Quoted 5 lines

The higher level interfaces are all in place and there are drivers for different controllers such as OHCI and UHCI. Some of these controller drivers are still board dependant, but we're in the progress of merging them together into one generic driver. If you happen to have an OHCI Controller, don't miss "doc/README.generic_usb_ohci".

Is there a plan to support EHCI as well?

There are already boards supporting USB 2.0. Grep for "USB_2_0_DEVICE".

Thanks. Will do.

Quoted 9 lines
Quoted 5 lines
Quoted 4 lines

Writing is not supported so far, but reading works fine on a number of architectures and boards.

Do you plan to support writing as well?

No, not at the moment. USB is typically used for updating components of the system for which reading files is sufficient. What do you need support for writing for?

Let me elaborate a bit: We're thinking of having a kind of a "Disk on key" device as our primary non volatile storage. The Linux software image will be on this device, so we'll need to boot from it as well. As this is an MPC85xx based board, having no embedded USB controller, we'll also need an external PCI to USB 2.0 host controller. Writing may be needed as in our current boot process the boot application writes some temporary files on the HD (and it's also needed at development stage, when there is no image on the disk). I basically would like to know how painful it is to have all this ticking with the current u-boot support.

Best regards,
David.

Signature · 2 lines
View this message in context: http://www.nabble.com/USB-Host-support-tf3956288.html#a11273166
Sent from the Uboot - Users mailing list archive at Nabble.com.
#7 lore raw
Quoted 8 lines · In message <[email protected]> you wrote:

Let me elaborate a bit: We're thinking of having a kind of a "Disk on key" device as our primary non volatile storage. The Linux software image will be on this device, so we'll need to boot from it as well. As this is an MPC85xx based board, having no embedded USB controller, we'll also need an external PCI to USB 2.0 host controller. Writing may be needed as in our current boot process the boot application writes some temporary files on the HD (and it's also needed at development stage, when there is no image on the disk).

It is not needed. Boot Linux over Ethernet, and use the running Linux system to write the files.

Quoted 2 lines

I basically would like to know how painful it is to have all this ticking with the current u-boot support.

It *is* painful, as you would have to add write support both to the USB drivers (including re-testing on a lot of boards) *plus* to the file system drivers (including re-testing on a lot of boards).

It's simply not worth the effort. U-Boot is a boot loader, and if you need the services of a typical OS (like full file system support) then you should just boot an OS - that's what U-Bootis really good in.

Best regards,

Wolfgang Denk

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Sometimes a feeling is all we humans have to go on.
	-- Kirk, "A Taste of Armageddon", stardate 3193.9
#8 lore raw
In reply to David Saada
Quoted 9 lines
Quoted 7 lines
Quoted 6 lines

The higher level interfaces are all in place and there are drivers for different controllers such as OHCI and UHCI. Some of these controller drivers are still board dependant, but we're in the progress of merging them together into one generic driver. If you happen to have an OHCI Controller, don't miss "doc/README.generic_usb_ohci".

Is there a plan to support EHCI as well?

There are already boards supporting USB 2.0. Grep for "USB_2_0_DEVICE".

Marcus - of what I've seen (in the USB tree), the USB_2_0 support is for a CPU specific (4xx) EHCI controller. My question was about a generic EHCI controller driver (like the OHCI one), as we plan to use a PCI based USB host controller. I guess we can operate it in the OHCI mode at boot stage and get a slower boot if generic EHCI support is not planned in the near future.

Best regards,
David.

Signature · 2 lines
View this message in context: http://www.nabble.com/USB-Host-support-tf3956288.html#a11284558
Sent from the Uboot - Users mailing list archive at Nabble.com.