On Sun, 9 Sep 2007, Peter Rasmussen wrote: > OK, I added that change as well, and it seems to make mount'ing and > accessing the mobile and its micro-SD card much more stable. > However, as the fixes are adding an unusual device and otherwise > removing checks in the code, it isn't the way to go for the general case > I suppose? > Or is it? I understand that the Z6 is broken and that some stringent > checks have to be removed to make it work, but what ill effects will > those have in the general case, ie. for a proper implementation of a > client device?
These changes will not go into the kernel, at least, not in the form discussed so far. If they are accepted it will be in a form that doesn't affect devices other than the Z6. > >> OK, but with my poor knowledge about how devices connect in the USB > >> world, I would still have expected that handshake procedures both on > >> host and client side would be known to the other side when the main > >> software, ie. the OS on both sides, are the same or similar. > >> > > > > What do you mean? Of course these procedures are all standardized, so > > they are well known to everybody. That doesn't mean everybody > > implements them correctly. > > > > > Or the standard is too loosely specified so that many implementations > may seem right, but won't work together, eg. because of timing issues > and whatnot. Or that it is tested against too slim a target, eg. "if it > works with our host software on a Windows machine, it passes", which has > been seen before in other places. Both of those phenomena have been known to happen. However in the case of the two major problems with the Z6 -- the wrong Tag value and the PQ = 1 setting -- the standards are not loose or ambiguous. They are clear as can be, and the phone violates them. I have never heard of any other device making the same kind of mistakes. It might even be suggested that Motorola introduced those bugs deliberately. Regarding the "last block" problem, once again the standard is quite clear. However this is an error which many people have made, repeatedly. Perhaps because reporting the highest block number rather than the number of blocks isn't what people expect, or perhaps because some devices translate (e.g. between USB and IDE) to a protocol which does use the number of blocks. > > I didn't say that. I have no idea how Motorola chose to implement > > their client-side USB software. It might be an application or it might > > be part of their kernel. > > > > > >> Again, I am surprised why > >> Motorola would do that when working software already exists? > >> > > > > What working software are you referring to? > > > > > As it is a Linux based system, there should be quite a lot of software > that work already with USB, don't you think? And Motorola has at least > one other Linux based mobile that works without any changes to a > standard kernel, ie. the A780 I mentioned. So why didn't they use the same software as in the A780? Beats me... > Thank you very much for your help! You're welcome. > Unless you are still interested in seeing my logs when connecting the > Z6, with the changes in my Linux kernel that you proposed, I will stop > spamming the list and keep what I have learned :-) > The Z6 I have used here is not mine and I have to give it back to my > friend tomorrow. If it works okay with those three changes, there's no point in discussing the matter any farther. Alan Stern ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Linux-usb-users@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users