Hi David:
The interrupt pipe initialization is in the CDC state machine.
Please refer to USB_HostCdcTask (usb_host_cdc.c )
This task is used to execute a CDC state machine.
case kStatus_DEV_Attached:
cdcInstance->runState = kUSB_HostCdcRunSetControlInterface;
Next, usb stack will call USB_HostCdcSetControlInterface
case kUSB_HostCdcRunSetControlInterface:
cdcInstance->runWaitState = kUSB_HostCdcRunWaitSetControlInterface;
cdcInstance->runState = kUSB_HostCdcRunIdle;
if (USB_HostCdcSetControlInterface(cdcInstance->classHandle, cdcInstance->controlInterfaceHandle, 0,
USB_HostCdcControlCallback, &g_cdc) != kStatus_USB_Success)
{
usb_echo("set control interface error\r\n");
}
USB_HostCdcSetContorlInterfaceCallback will call USB_HostCdcOpenControlInterface, and interruptPipe is initialized in this function.
Regards
Daniel