Hi all, again the I/O error stuff with the onboard USB ports of the SiS 735 socket A chipset (maybe other SiS as well) and the Pontis SP600 mp3 player, and some information about using that device with another USB chipset.
1) USB transfers to the SP600 are really slow. I get about 93 KB/sec (at least its Byte, not bit :-S) Reading is much faster, btw. 2) The I/O errors are there in Windows XP pro SP2, too. Windows just does not tell you and silently saves the corrupt files. If I diff or fc the files, they often appear correct until I eject and reconnect the player. Must be Windows� cache 3) Using the SP600 with a Via USB2.0 PCI card works great in Linux and Windows - except for the slow speed of the SP600, of course 4) When I connected an external cd-rom to the same PCI USB adapter and copied files from that cd-rom to the SP600, they get corrupted too, in the same way as on the ports of the mainboard 5) When I copy files from the harddisk to the SP600 and access the USB cd-rom at the same time, copying the whole cdrom to harddisk, the files are ok on the SP600 5) When I copied files using lets say an external card reader to the CF, put the card in the SP600 and diff the files with the originals, there are no errors - meaning the CF is ok and reading from the SP600 is ok, too 6) The corruptions are as described in one of the earlier mails. That means: - the errors always start on 64 byte boundaries - there always is a 0x40 = "@" byte inserted as byte 0 - original byte 0 follows as byte 1 and so on (original bytes 0-62 are in the corrupt file as bytes 1-63) - original byte 63 is missing - after these 64 bytes the corrupt file is correct again, until the next error in the file (there are several, normally) I dont know much about the USB mass storage driver model, but it looks like there is some request (0x40?) going out on the USB and the SP600 takes this byte as one of the data block instead of correctly interpreting it as a request/command/whatever. The said request only happens when there is another device being accessed on that USB. The SP600 also kind of "blocks", I cannot interrupt transfers with Ctrl-C/Break. While writing to it, I can not read data from there, until some special moment when the request finally will be served... So has anybody an idea what might go wrong in that device? I also find it is strange that heavily accessing the cd-rom and the SP600 on the via usb 2.0 pci card (which uses 3 irqs for its 2 ports) does only corrupt the files on the SP600 when copying from cd-rom to SP600, not when copying from cd-rom to hdd and at the same time from hdd to the SP600. Is this 0x40 some kind of subcommand the SP600 should use in a different way? What may the main request be which leads to this 0x40 to be read from the USB? I just guess its a bug in the SP600 USB bulk transfer handler? In short: Is there someone who can bring some light into this darkness? Thanx in advance, greets, Lutz -- -- NEU +++ DSL Komplett von GMX +++ http://www.gmx.net/de/go/dsl GMX DSL-Netzanschluss + Tarif zum superg�nstigen Komplett-Preis! ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/ _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
