[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-usb-users
Subject: [Linux-usb-users] RE: [linux-usb-devel] Re: Linux MIPS - bus_to_virt()/virt_to_bus(
From: "Dunlap, Randy" <randy.dunlap () intel ! com>
Date: 2000-09-29 17:13:58
[Download RAW message or body]
> > I also notice a lot of bus_to_virt()/virt_to_bus()
> conversions. What is
> > the purpose of getting bus address?
> >
>
> I am still curious about this.
Have you read linux/Documentation/IO-mapping.txt ?
And maybe look at
http://gtf.org/garzik/drivers/LinuxExpo2000_Paris/expo2000paris.htm,
which is Jeff Garzik's presentation on
"Writing Portable Device Drivers".
> > Unlike i386, MIPS cache does not snoop on memory bus, and
> therefore it
> > does not maitain cache consistency automatically. I am afraid if a
> > device gets the bus address and modifies the system RAM content, the
> > driver would still read stale data through the cached
> virtual addresses.
> >
> > Is this a possible source of problem?
> >
>
> I just verified that cache consistency may not be the
> problem. I turned
> off the cache while I ran Linux. I still get the same error.
>
> ---------
>
> usb.c: USB new device connect, assigned device number 2
> usb_control/bulk_msg: timeout
> usb-ohci.c: unlink URB timeout!
> usb.c: USB device not accepting new address (error=-145)
> usb.c: USB new device connect, assigned device number -1
> usb.c: USB device not accepting new address (error=-12)
> usb.c: USB disconnect on device -1
>
> ----------
>
> Now I run out of ideas. Apparently the timeout happens inside
> usb_start_wait_urb(). After the code calls schedule_timeout(), who is
> supposed to wake it up before the timeout happens? An interrupt from
> USB controller?
Yes, normal flow is for a USB host controller interrupt to
keep the timeout from happening.
~Randy
_______________________________________________
Linux-usb-users mailing list
Linux-usb-users@lists.sourceforge.net
http://lists.sourceforge.net/mailman/listinfo/linux-usb-users
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic