Lines Matching defs:request

21  *  interface objects, and request objects, and to submit requests.

50 * @brief Defines the request object type.
66 * @brief Defines the control request type.
71 /** Standard request */
73 /** Class request */
75 /** Vendor request */
80 * @brief Defines the request data direction.
92 * @brief Defines the request parameter type.
94 * It will be filled in the corresponding field in {@link UsbRequestParams} to indicate whether the request parameter
105 * @brief Defines the USB request type.
108 /** Invalid request */
110 /** Control request */
112 /** Write request */
114 /** Read request */
131 /** Pipe address, which is used to fill the I/O request through {@link UsbRequestFill} */
184 * @brief Defines USB request completion information.
193 /** Actual length of the data sent at request completion */
202 * @brief Defines a USB request.
204 * There are two types of request objects: <b>UsbObject</b> (USB basic object) and <b>UsbRequestCompInfo</b>
205 * (USB request completion information ). You can query the current request execution status through the USB request
207 * The isochronous (block) request and non-isochronous (non-block) request share this data structure but use different
208 * application interfaces. The isochronous (block) request uses the <b>UsbSubmitRequestSync</b> interface,
209 * whereas the non-isochronous (non-block) request uses the <b>UsbSubmitRequestAsync</b> interface.
214 /** USB request completion information. For details, see {@link UsbRequestCompInfo}. */
219 * @brief Defines the callback function for completion of a user request. It will be used to fill the
222 typedef void (*UsbRequestCallback)(struct UsbRequest *request);
225 * @brief Defines a control request object, which will be used to fill in the {@link UsbRequestParams} object.
228 /** Type of the received control request packet. For details, see {@link UsbRequestTargetType}. */
230 /** Control request type. For details, see {@link UsbControlRequestType}. */
235 uint8_t request;
236 /** Value set based on the request */
238 /** Index set based on the request to identify an endpoint or interface */
247 * @brief Defines data request parameters, which will be used to fill the {@link UsbRequestParams} object.
254 /** Pointer to the request data */
256 /** Length of the request data */
261 * @brief Defines a USB request parameter object, which can be {@link UsbControlRequest} (control request parameter)
262 * or {@link UsbRequestParamsData} (data request parameter).
271 /** Callback function for request completion on the user side. For details, see {@link UsbRequestCallback}. */
281 /** Control request parameter. For details, see {@link UsbControlRequest}. */
283 /** Data request parameter. For details, see {@link UsbRequestParamsData}. */
451 * @brief Allocates a USB request.
468 * @brief Releases a request object.
470 * @param request Indicates the pointer to the USB request.
475 int32_t UsbFreeRequest(const struct UsbRequest *request);
476 int32_t UsbFreeRequestByMmap(const struct UsbRequest *request);
479 * @brief Sends an asynchronous request.
481 * @param request Indicates the pointer to the USB request.
486 int32_t UsbSubmitRequestAsync(const struct UsbRequest *const request);
489 * @brief Fills an I/O request based on specified parameters.
491 * @param request Indicates the pointer to the USB request.
498 int32_t UsbFillRequest(const struct UsbRequest *request, const UsbInterfaceHandle *interfaceHandle,
501 const struct UsbRequest *request, const UsbInterfaceHandle *interfaceHandle, const struct UsbRequestParams *params);
503 * @brief Cancels an asynchronous USB request.
505 * @param request Indicates the pointer to the USB request.
509 int32_t UsbCancelRequest(const struct UsbRequest *request);
512 * @brief Sends a synchronous USB request.
514 * @param request Indicates the pointer to the USB request.
519 int32_t UsbSubmitRequestSync(const struct UsbRequest *request);