On Freitag, 30. Juni 2017 05:49:56 CEST Bin Meng wrote: > Hi, > > On Fri, Jun 23, 2017 at 5:54 PM, Bin Meng <bmeng...@gmail.com> wrote: > > The only work we need do in usb_setup_descriptor() is to initialize > > dev->descriptor.bMaxPacketSize0, when do_read is false. Other steps > > are the same as do_read being true. > > > > While we are here, update the comment block to be within 80 cols. > > > > Signed-off-by: Bin Meng <bmeng...@gmail.com> > > --- > > > > common/usb.c | 40 ++++++++++++++++++---------------------- > > 1 file changed, 18 insertions(+), 22 deletions(-) > > > > diff --git a/common/usb.c b/common/usb.c > > index 15e1e4c..293d968 100644 > > --- a/common/usb.c > > +++ b/common/usb.c > > @@ -962,37 +962,33 @@ static int usb_setup_descriptor(struct usb_device > > *dev, bool do_read)> > > * some more, or keeps on retransmitting the 8 byte header. > > */ > > > > - if (dev->speed == USB_SPEED_LOW) { > > - dev->descriptor.bMaxPacketSize0 = 8; > > - dev->maxpacketsize = PACKET_SIZE_8; > > - } else { > > - dev->descriptor.bMaxPacketSize0 = 64; > > - dev->maxpacketsize = PACKET_SIZE_64; > > - } > > - dev->epmaxpacketin[0] = dev->descriptor.bMaxPacketSize0; > > - dev->epmaxpacketout[0] = dev->descriptor.bMaxPacketSize0; > > -
You remove the initialization of dev->maxpacketsize here ... > > > > if (do_read) { > > [...] > > > > */ > > > > err = get_descriptor_len(dev, 64, 8); > > if (err) > > > > return err; ... and probably return early here. Can you add some debug output to get_descriptor_len(...) (len, expected len, return code)? > > > > + } else { > > + if (dev->speed == USB_SPEED_LOW) > > + dev->descriptor.bMaxPacketSize0 = 8; > > + else > > + dev->descriptor.bMaxPacketSize0 = 64; > > > > } > > > > dev->epmaxpacketin[0] = dev->descriptor.bMaxPacketSize0; > > > > -- > > For some reason that I don't understand, this patch breaks EHCI. > dev->maxpacketsize is equal to zero with this patch, which leads to a > 'divide error' exception in ehci_submit_async(). Not sure if anyone > has some hints? > > For now, I will just drop this patch in v2. This needs be further revisited. Kind regards, Stefan _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot