Is it possible to force a USB device port to "low speed"? I am running an at91rm9200 based board with Linux 2.6.16.
We suspect we might be having some problems with a radiation source of around 13MHz that might be causing problems with the 12Mbps full speed USB, we'd like to try running it at the 1.5Mbps speed to see if this fixes the problem (and confirms our suspicions). As a quick test I tried moving the pull-up resistor to the D- line, but that doesn't work and the host doesn't recognise the device at all. I looked at some of the platform specific code and noticed that it checks to see if the device is configured as "full speed". Is there a particular reason for this? e.g. drivers/usb/gadget/at91_udc.c if (!driver || driver->speed != USB_SPEED_FULL || !driver->bind || !driver->unbind || !driver->setup) { DBG("bad parameter.\n"); return -EINVAL; } Can I set to this to USB_SPEED_LOW without creating other issues? e.g. at this point? /* enable ep0 */ at91_udp_write(AT91_UDP_CSR(0), AT91_UDP_EPEDS | AT91_UDP_EPTYPE_CTRL); udc->gadget.speed = USB_SPEED_FULL; udc->suspended = 0; at91_udp_write(AT91_UDP_IER, AT91_UDP_EP(0)); regards, Aras Vaichas ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel