Device enumeration problem with isp1761

Good day!

I'm writing a driver for the USB host controller isp1761, working in a stand-alone mode, and encountered the following problem:

(1) I have successfully enumerate a root hub. He is quite adequately respond to requests. I can manage the power, restart ports, etc.

(2) On a device attaching I'll trying to reconstitute enumeration sequeunce from Windows (wich is de facto standard): (2.a) Port reseting (2.b) Getting device descriptor (only 18 bytes in once package) (2.c) Port reseting again (2.d) Setting address (2.e) other steps of enumeration (corresponding to USB specification).

Trouble arises even when I received the device handle: Some devices do not return it. Instead, isp1761 set bit XActErr (transfer error) in pTD structure.

At once some devices work poroperly (return device descriptor and so on), but on some step I still get XActErr in pTD.

The most interesting is that for those devices that seem to work fine in the word port status, obtained from the root hub, set Port Test Mode Bit (11-th bit). What does this mean?

I try to only USB 2.0 devices. Pause between queries is not significant differ from the pauses between requests, if the transfer holds the kernel Linux.

Are there some ideas? )))

Thanks in advance. Sysoev Dmitry A. JSC "PIK "PROGRESS" Moscow

--------------------------------------- Posted through

formatting link

Reply to
ssvda
Loading thread data ...

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.