This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/AM5746: USB sample about Standard Device Request, Resume and Suspend

Guru 10235 points
Part Number: AM5746

Tool/software: TI-RTOS

Hello, TI Experts,

 

Our customer sent us about USB with PROCESSOR-SDK-RTOS-AM57X.

They use PDK version like below;

- pdk_am57xx_1_0_11

- pdk_am335x_1_0_12

 

Question:

1: How to know "Standard Device Request" (such as Clear Feature) from user application?

- They found related description such as "USB_BREQUEST_CLEAR_FEATURE" in pdk.

- But they don't found any source code or example by using "USB_BREQUEST_CLEAR_FEATURE".

2: How to know "Resume" and "Suspend"?

- They found related description such as "pfnSuspendHandler,pfnResumeHandler" in usblib.h.

- But they don't found any source code or example by using "pfnSuspendHandler,pfnResumeHandler".

If there is any sample code of Standard Device Request, Resume and Suspend use-case, please also tell us.  

Best regards,

  • Hi,

    Sorry for the late response! I found HandleSuspend() and HandleResume() functions for pfnSuspendHandler,pfnResumeHandler, respectively. But all those functions and questions (But they don't found any source code or example by using "USB_BREQUEST_CLEAR_FEATURE".) are inside TI USB driver itself.

    I still don't understand the background why they need asked for those? Is the driver had any bug or any functionality missing? Or failed in some test scenario?

    Regards, Eric
  • Hi,

    We don't have code example for this and customer need to develop their own:

    1: How to know "Standard Device Request" (such as Clear Feature) from user application?>>>>>>>Customer would need to add their own Clear Feature function into the structure gUsbStdReqTable() inside the usb_dev_dman.c

    2: How to know "Resume" and "Suspend"?>>>>>Customer would need to add their own function inside dev_bulk_main.c under usbdbulkEventCallback

    case USB_EVENT_SUSPEND:
    {
    // do whatever customer wants
    break;
    }

    case USB_EVENT_RESUME:
    {
    // do whatever customer wants
    break;
    }

    Regards, Eric
  • Hi,

    Thank you very much for your kindness.
    I really appreciate your help.
    I will send the answer to the customer.

    Best regards,