third_party/virtualbox/src/VBox/Devices/USB/VUSBUrb.cpp
/**
 * Complete a SETUP stage URB.
 *
 * This is used both for dev2host and host2dev kind of transfers.
 * It is used by both the sync and async control paths.
 */
Complete a SETUP stage URB.
This is used both for dev2host and host2dev kind of transfers.
It is used by both the sync and async control paths.
Complete a SETUP stage URB . This is used both for dev2host and host2dev kind of transfers . It is used by both the sync and async control paths .
static void vusbMsgSetupCompletion(PVUSBURB pUrb)
{
    PVUSBDEV        pDev   = pUrb->pVUsb->pDev;
    PVUSBPIPE       pPipe  = &pDev->aPipes[pUrb->EndPt];
    PVUSBCTRLEXTRA  pExtra = pPipe->pCtrl;
    PVUSBSETUP      pSetup = pExtra->pMsg;
    LogFlow(("%s: vusbMsgSetupCompletion: cbData=%d wLength=%#x cbLeft=%d pPipe=%p stage %s->DATA\n",
             pUrb->pszDesc, pUrb->cbData, pSetup->wLength, pExtra->cbLeft, pPipe, g_apszCtlStates[pExtra->enmStage])); NOREF(pSetup);
    pExtra->enmStage = CTLSTAGE_DATA;
    pUrb->enmStatus  = VUSBSTATUS_OK;
}
static void vusbMsgSetupCompletion ( PVUSBURB pUrb ) { PVUSBDEV pDev = pUrb -> pVUsb -> pDev ; PVUSBPIPE pPipe = & pDev -> aPipes [ pUrb -> EndPt ] ; PVUSBCTRLEXTRA pExtra = pPipe -> pCtrl ; PVUSBSETUP pSetup = pExtra -> pMsg ; LogFlow ( ( " \n " , pUrb -> pszDesc , pUrb -> cbData , pSetup -> wLength , pExtra -> cbLeft , pPipe , g_apszCtlStates [ pExtra -> enmStage ] ) ) ; NOREF ( pSetup ) ; pExtra -> enmStage = CTLSTAGE_DATA ; pUrb -> enmStatus = VUSBSTATUS_OK ; }
Complete a SETUP stage URB.
Complete a SETUP stage URB .