On 10/13/13 10:22, Alexey Dokuchaev wrote:
On Sun, Oct 13, 2013 at 08:50:53AM +0200, Hans Petter Selasky wrote:
iPhones sometimes have multiple configurations.

usbconfig -d X.Y dump_device_desc

Dumping desc produced almost identical files (the only differences were in
idProduct and iSerialNumber, quite expectedly).

usbconfig -d X.Y set_config 1
usbconfig -d X.Y set_config 2
usbconfig -d X.Y set_config 3


I presume I do not need to re-plug or otherwise re-init the phone after
setting config, correct?  (It seems I don't, asking just to make sure.)

No need to re-plug.

PTP might not always be available from the first configuration.

I've tried to play with set_config, but without much luck.  However, I did
dump_all_config_desc to discover that config index 2 (the one that is "PTP
+ Apple Mobile Device", with bInterfaceClass = 0x0006) is missing from the
output for the "bad" iPhone (diff attached).

Why is it missing?  Is there any way to force/inject it into the stack?

You cannot force it.

You might want to watch "usbdump -i usbusX -f Y -vvv -s 65536"

while running the config descriptor dump for the broken device. Look for non-zero ERR=

Might also be a corrupt USB descriptor, which the USB stack will reject.

Would be interesting to know what the cause of this issue is. Are any of these iPhones JailBroken?


freebsd-usb@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"

Reply via email to