Tue 12 Mar 2013 01:58:19 PM UTC, comment #3:
It stops at that point under Linux since it segfaults. This
is because there are zero endpoint descriptors present, so
found->config->interface->altsetting->endpoint
equals 0 here:
If I conditionalize that memcpy() on ...->endpoint being != 0,
the Linux behaviour resembles the one under FreeBSD:
|
Tue 12 Mar 2013 10:58:14 AM UTC, comment #2:
I just tested it under Linux. Result:
At that point, it just exits.
I guess it needs a bit of further debugging before we can
commit it.
|
Tue 12 Mar 2013 07:33:17 AM UTC, comment #1:
Thanks for the patch, Kirill! I just tried it, using an ATmega32U2.
Here are some remarks. First, if I don't have the target plugged in,
I get:
I think it should bail out there before proceeding to read the
signature.
Second, after plugging in the controller, I get (on FreeBSD):
So, at least for the USB megaAVR devices, something's still wrong.
(Yes, I did add the USB PID of the ATmega32U2 to avrdude.conf before.)
I think, all new files should get your copyright, with the current
year, not anybody else's.
For reference, here are the descriptors I can read out from the
device:
|