Vault 7: Projects
This publication series is about specific projects related to the Vault 7 main publication.
USBDeviceInit This function initializes the device stack it in the default state. The
USB module will be completely reset including all of the internal
variables, registers, and interrupt flags.
USBDeviceTasks This function is the main state machine/transaction handler of the
USB device side stack. When the USB stack is operated in
"USB_POLLING" mode (usb_config.h user option) the
USBDeviceTasks() function should be called periodically to receive
and transmit packets through the stack. This function also takes
care of control transfers associated with the USB enumeration
process, and detecting various USB events (such as suspend). This
function should be called at least once every 1.8ms during the USB
enumeration process. After the enumeration process is complete
(which can be determined when USBGetDeviceState() returns
CONFIGURED_STATE), the USBDeviceTasks() handler may be
called the... more
USBEnableEndpoint This function will enable the specified endpoint with the specified
options
USBEP0Receive Sets the destination, size, and a function to call on the completion of
the next control write.
USBEP0SendRAMPtr Sets the source, size, and options of the data you wish to send from
a RAM source
USBEP0SendROMPtr Sets the source, size, and options of the data you wish to send from
a const source
USBEP0Transmit Sets the address of the data to send over the control endpoint
USBGetDeviceState This function will return the current state of the device on the USB.
This function should return CONFIGURED_STATE before an
application tries to send information on the bus.
USBGetNextHandle Retrieves the handle to the next endpoint BDT entry that the
USBTransferOnePacket() will use.
USBGetRemoteWakeupStatus This function indicates if remote wakeup has been enabled by the
host. Devices that support remote wakeup should use this function
to determine if it should send a remote wakeup.
USBGetSuspendState This function indicates if the USB port that this device is attached to
is currently suspended. When suspended, it will not be able to
transfer data over the bus.
USBHandleBusy Checks to see if the input handle is busy
USBHandleGetAddr Retrieves the address of the destination buffer of the input handle
USBHandleGetLength Retrieves the length of the destination buffer of the input handle
USBINDataStageDeferred Returns true if a control transfer with IN data stage is pending, and
the firmware has called USBDeferINDataStage(), but has not yet
called USBCtrlEPAllowDataStage(). Returns false if a control
transfer with IN data stage is either not pending, or the firmware did
not call USBDeferINDataStage() at the start of the control transfer.
This function (macro) would typically be used in the case where the
USBDeviceTasks() function executes in the interrupt context (ex:
USB_INTERRUPT option selected in usb_config.h), but the
firmware wishes to take care of handling the data stage of the
control transfer in the main... more
USBIsBusSuspended This function indicates if the USB bus is in suspend mode.
USBIsDeviceSuspended This function indicates if the USB module is in suspend mode.
1.4 Library Interface MLA - USB Library Help Device/Peripheral
68
Protego_Release_01_05-Related-OEM-Documentation-MLA_v2013_12_20-help_mla_usb.pdf