# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# MLA -- USB Library

20 December, 2013

- 1
- 2
…
- 106
- 107
- 108
- 109
- 110
…
- 311
- 312

uint8_t bRequest The request as defined by the USB specification.
uint16_t wValue The value for the request as defined by the USB
specification.
uint16_t wIndex The index for the request as defined by the USB
specification.
uint16_t wLength The data length for the request as defined by the USB
specification.
uint8_t *data Pointer to the data for the request.
uint8_t dataDirection USB_DEVICE_REQUEST_SET or
USB_DEVICE_REQUEST_GET
uint8_t clientDriverID Client driver to send the event to.
Return Values
Return Values Description
USB_SUCCESS Request processing started
USB_UNKNOWN_DEVICE Device not found
USB_INVALID_STATE The host must be in a normal running state to do this request
USB_ENDPOINT_BUSY A read or write is already in progress
USB_ILLEGAL_REQUEST SET CONFIGURATION cannot be performed with this
function.
Function
uint8_t USBHostIssueDeviceRequest( uint8_t deviceAddress, uint8_t bmRequestType,
uint8_t bRequest, uint16_t wValue, uint16_t wIndex, uint16_t wLength,
uint8_t *data, uint8_t dataDirection, uint8_t clientDriverID )
1.4.2.1.1.12 USBHostRead Function
This function initiates a read from the attached device.
File
usb_host.h
Syntax
uint8_t USBHostRead(uint8_t deviceAddress, uint8_t endpoint, uint8_t * data, uint32_t size);
Description
This function initiates a read from the attached device.
If the endpoint is isochronous, special conditions apply. The pData and size parameters have slightly different meanings,
since multiple buffers are required. Once started, an isochronous transfer will continue with no upper layer intervention until
USBHostTerminateTransfer() is called. The ISOCHRONOUS_DATA_BUFFERS structure should not be manipulated until
the transfer is terminated.
To clarify parameter usage and to simplify casting, use the macro USBHostReadIsochronous() when reading from an
isochronous endpoint.
Remarks
None
Preconditions
None
Parameters
Parameters Description
uint8_t deviceAddress Device address
1.4 Library Interface MLA - USB Library Help Embedded Host API
108

- 1
- 2
…
- 106
- 107
- 108
- 109
- 110
…
- 311
- 312