Classes | |
struct | usb_descr |
============================================================================= More... | |
struct | usb_device_descr |
USB device descriptor. More... | |
struct | usb_config_descr |
USB configuration descriptor. More... | |
struct | usb_interface_descr |
USB interface descriptor. More... | |
struct | usb_endpoint_descr |
USB endpoint descriptor. More... | |
Functions | |
void | usb_new_device () |
This function is called from controller-specific part when a new device is ready to be configured. in: ecx -> pseudo-pipe, part of usb_pipe in: esi -> usb_controller in: [esi+usb_controller.ResettingHub] is the pointer to usb_hub for device, NULL if the device is connected to the root hub in: [esi+usb_controller.ResettingPort] is the port for the device, zero-based in: [esi+usb_controller.ResettingSpeed] is the speed of the device, one of USB_SPEED_xx. out: eax = 0 <=> failed, the caller should disable the port. More... | |
void | usb_set_address_request () |
Helper procedure for usb_new_device. Allocates a new USB address and fills usb_controller.SetAddressBuffer with data for SET_ADDRESS(allocated_address) request. out: eax = 0 <=> failed Destroys edi. More... | |
void | usb_set_address_callback (dword pipe, dword status, dword buffer, dword length, dword calldata) |
This procedure is called by USB stack when SET_ADDRESS request initiated by usb_new_device is completed, either successfully or unsuccessfully. Note that USB stack uses esi = pointer to usb_controller. More... | |
void | usb_after_set_address () |
This procedure is called from usb_subscription_done when the hardware cache is cleared after request from usb_set_address_callback. in: ebx -> usb_pipe. More... | |
void | usb_get_descr8_callback (dword pipe, dword status, dword buffer, dword length, dword calldata) |
This procedure is called by USB stack when GET_DESCRIPTOR(DEVICE_DESCR) request initiated by usb_after_set_address is completed, either successfully or unsuccessfully. Note that USB stack uses esi = pointer to usb_controller. More... | |
void | usb_after_set_endpoint_size () |
This procedure is called from usb_subscription_done when the hardware cache is cleared after request from usb_get_descr8_callback. in: ebx -> usb_pipe. More... | |
void | usb_get_descr_callback (dword pipe, dword status, dword buffer, dword length, dword calldata) |
This procedure is called by USB stack when GET_DESCRIPTOR(DEVICE) request initiated by usb_after_set_endpoint_size is completed, either successfully or unsuccessfully. More... | |
void | usb_know_length_callback (dword pipe, dword status, dword buffer, dword length, dword calldata) |
This procedure is called by USB stack when GET_DESCRIPTOR(CONFIGURATION) request initiated by usb_get_descr_callback is completed, either successfully or unsuccessfully. More... | |
void | usb_set_config_callback (dword pipe, dword status, dword buffer, dword length, dword calldata) |
This procedure is called by USB stack when GET_DESCRIPTOR(CONFIGURATION) request initiated by usb_know_length_callback is completed, either successfully or unsuccessfully. More... | |
void | usb_got_config_callback (dword pipe, dword status, dword buffer, dword length, dword calldata) |
This procedure is called by USB stack when SET_CONFIGURATION request initiated by usb_set_config_callback is completed, either successfully or unsuccessfully. If successfully, the device is configured and ready to work, pass the device to the corresponding driver(s). More... | |
Variables | |
dd | InterfacesData |
dd | NumInterfaces |
dd | driver |
have | You |
db | usb_hid_name |
db | usb_stor_name |
db | usb_print_name |
db | usb_other_name |
void usb_after_set_address | ( | ) |
This procedure is called from usb_subscription_done when the hardware cache is cleared after request from usb_set_address_callback. in: ebx -> usb_pipe.
void usb_after_set_endpoint_size | ( | ) |
This procedure is called from usb_subscription_done when the hardware cache is cleared after request from usb_get_descr8_callback. in: ebx -> usb_pipe.
void usb_get_descr8_callback | ( | dword | pipe, |
dword | status, | ||
dword | buffer, | ||
dword | length, | ||
dword | calldata | ||
) |
This procedure is called by USB stack when GET_DESCRIPTOR(DEVICE_DESCR) request initiated by usb_after_set_address is completed, either successfully or unsuccessfully. Note that USB stack uses esi = pointer to usb_controller.
void usb_get_descr_callback | ( | dword | pipe, |
dword | status, | ||
dword | buffer, | ||
dword | length, | ||
dword | calldata | ||
) |
This procedure is called by USB stack when GET_DESCRIPTOR(DEVICE) request initiated by usb_after_set_endpoint_size is completed, either successfully or unsuccessfully.
void usb_got_config_callback | ( | dword | pipe, |
dword | status, | ||
dword | buffer, | ||
dword | length, | ||
dword | calldata | ||
) |
This procedure is called by USB stack when SET_CONFIGURATION request initiated by usb_set_config_callback is completed, either successfully or unsuccessfully. If successfully, the device is configured and ready to work, pass the device to the corresponding driver(s).
void usb_know_length_callback | ( | dword | pipe, |
dword | status, | ||
dword | buffer, | ||
dword | length, | ||
dword | calldata | ||
) |
This procedure is called by USB stack when GET_DESCRIPTOR(CONFIGURATION) request initiated by usb_get_descr_callback is completed, either successfully or unsuccessfully.
void usb_new_device | ( | ) |
This function is called from controller-specific part when a new device is ready to be configured. in: ecx -> pseudo-pipe, part of usb_pipe in: esi -> usb_controller in: [esi+usb_controller.ResettingHub] is the pointer to usb_hub for device, NULL if the device is connected to the root hub in: [esi+usb_controller.ResettingPort] is the port for the device, zero-based in: [esi+usb_controller.ResettingSpeed] is the speed of the device, one of USB_SPEED_xx. out: eax = 0 <=> failed, the caller should disable the port.
void usb_set_address_callback | ( | dword | pipe, |
dword | status, | ||
dword | buffer, | ||
dword | length, | ||
dword | calldata | ||
) |
This procedure is called by USB stack when SET_ADDRESS request initiated by usb_new_device is completed, either successfully or unsuccessfully. Note that USB stack uses esi = pointer to usb_controller.
void usb_set_address_request | ( | ) |
Helper procedure for usb_new_device. Allocates a new USB address and fills usb_controller.SetAddressBuffer with data for SET_ADDRESS(allocated_address) request. out: eax = 0 <=> failed Destroys edi.
void usb_set_config_callback | ( | dword | pipe, |
dword | status, | ||
dword | buffer, | ||
dword | length, | ||
dword | calldata | ||
) |
This procedure is called by USB stack when GET_DESCRIPTOR(CONFIGURATION) request initiated by usb_know_length_callback is completed, either successfully or unsuccessfully.
dd driver |
dd InterfacesData |
dd NumInterfaces |
db usb_hid_name |
db usb_other_name |
db usb_print_name |
db usb_stor_name |
have You |