1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! Represents a USB control request.
/// Represents a USB control request.
///
/// For documentation of the fields other than `address`, see Section "9.3 USB
/// Device Requests" in the USB 2.0 specification.
///
/// A request without data is packaged in two TRBs (a Setup Stage and a
/// Status Stage). `data` should then be `None`.
///
/// A request with data is packaged in three TRBs (a Setup Stage, a Data
/// Stage and a Status Stage). `data` should then contain the pointer
/// from the Data Stage).
///