DM365 uvc gadget

zanget zanget at 163.com
Thu Sep 1 20:46:55 CDT 2011


the problem comes form the High-bandwidth ISO mode webcam with DM365.

check it out: section 4.72 about USB. the source code about this part is
now:

musb_core.c,musb_core_init:
   if (reg & MUSB_CONFIGDATA_HBRXE) {
              strcat(aInfo, ", HB-ISO Rx");
              musb->hb_iso_rx = true;
       }
       if (reg & MUSB_CONFIGDATA_HBTXE) {
              strcat(aInfo, ", HB-ISO Tx");
              musb->hb_iso_tx = true;
       }

musb_host.c, musb_urb_enqueue
      /* Bits 11 & 12 of wMaxPacketSize encode high bandwidth multiplier.
       * Some musb cores don't support high bandwidth ISO transfers; and
       * we don't (yet!) support high bandwidth interrupt transfers.
       */
       qh->hb_mult = 1 + ((qh->maxpacket >> 11) & 0x03);
       if (qh->hb_mult > 1) {
              int ok = (qh->type == USB_ENDPOINT_XFER_ISOC);

              if (ok)
                     ok = (usb_pipein(urb->pipe) && musb->hb_iso_rx)
                            || (usb_pipeout(urb->pipe) && musb->hb_iso_tx);
              if (!ok) {
                     ret = -EMSGSIZE;
                     goto done;
              }
              qh->maxpacket &= 0x7ff;
       }


--
View this message in context: http://davinci-linux-open-source.1494791.n2.nabble.com/DM365-uvc-gadget-tp5992168p6752421.html
Sent from the davinci-linux-open-source mailing list archive at Nabble.com.


More information about the Davinci-linux-open-source mailing list