usbd_desc_register
usbd_desc_register
usbd_add_interface
usbd_add_interface
usbd_initialize
usbd_initialize
usbd_add_endpoint
usbd_add_endpoint
Listclass_interface_handlerclass_endpoint_handlervendor_handlernotify_handlerhid_report_descriptorhid_report_descriptor_lenintf_numusbd_intf_head
append into list
append into list
in_ep_cb[8]

out_ep_cb[8]
in_ep_cb[8]...
fill ep callback
fill ep callback
usb_dc_init
usb_dc_init
USBD_IRQHandler
USBD_IRQHandler
SETUP complete intstatus
SETUP complete intstatus
IN complete intstatus
IN complete intstatus
OUT complete intstatus
OUT complete intstatus
usbd_event_reset_handler
usbd_event_reset_handler
RESET complete intstatus
RESET complete intstatus
usbd_event_ep0_setup_complete_handler
usbd_event_ep0_setup_complete_handler
usbd_event_ep_in_complete_handler
usbd_event_ep_in_complete_handler
usbd_event_ep_out_complete_handler
usbd_event_ep_out_complete_handler
enable ep0

start reading setup
enable ep0...
usbd_setup_request_handler
usbd_setup_request_handler
usbd_standard_request_handler
usbd_standard_request_handler
usbd_class_request_handler
usbd_class_request_handler
usbd_vendor_request_handler
usbd_vendor_request_handler
usbd_class_interface_request_handler
usbd_class_interface_request_handler
usbd_class_endpoint_request_handler
usbd_class_endpoint_request_handler
if ep != 0x80
if ep != 0x80
if ep != 0x00
if ep != 0x00
in_ep_cb[ep & 0x7f]
in_ep_cb[ep & 0x7f]
out_ep_cb[ep & 0x7f]
out_ep_cb[ep & 0x7f]
NULL
NULL
Listclass_interface_handlerclass_endpoint_handlervendor_handlernotify_handlerhid_report_descriptorhid_report_descriptor_lenintf_num
Viewer does not support full SVG 1.1