[U-Boot-Users] USB OHCI drivers unification

Markus Klotzbücher mk at denx.de
Wed May 31 12:29:50 CEST 2006

Hi Rodolfo,

Rodolfo Giometti <giometti at linux.it> writes:

> On Wed, May 31, 2006 at 10:43:13AM +0200, Markus Klotzbücher wrote:

>> I have currently adapted the monahans, the at91rm9200, and the s3c24x0
>> cpus to use the generic driver. Please note that I used the
>> cpu/arm920t/at91rm9200/usb_ohci.[hc] driver as a starting point for the
>> generic driver.
> File usb_ohci.h is quite the same, but usb_ohci.c has some
> differences. I decided to start from "cpu/mpc5xxx/usb_ohci.c" since it
> seemed to have a better events handling. Please, see
> submit_common_msg() at comment "NOTE: since we are not interrupt
> driven in U-Boot..." or have a look at:

Yes, the s3c24x0 also uses this, and for now I included it (see
S3C24X0_merge #define), although I'm not sure this is really
necessary. At least the TRAB board worked fine without. Let's keep it
for now.

>    diff -Ebu cpu/arm920t/at91rm9200/usb_ohci.c cpu/mpc5xxx/usb_ohci.c
> where you can better see the new variable "urb_finished".
> However my mayor changes was about substitution of m16_swap() with
> proper ohci_cpu_to_le16() (and similar) and in adding virt_to_phys()
> and phys_to_virt() functions where needed (see my last patch for
> au1x00).

I understand that the virt_to_phys() are required, but why do you need
the ohci_cpu_to_le16 macros? They seem to be the same as the m16_swap,
m32_swap macros?

>> Your patch looks fine, but would you mind resubmitting it against the
>> USB testing branch using the generic driver (drivers/usb_ohci.c) ?
> I'll do it ASAP.



Markus Klotzbuecher

More information about the U-Boot mailing list