When the host issues a GET_DESCRIPTOR Configuration request the device needs to respond with the requested configuration descriptor plus all the interface and endpoint descriptors associated to that configuration descriptor during the DATA stage.
As a reminder, all GET_DESCRIPTOR request types are share the following properties:
bRequestis 6 (i.e. the GET_DESCRIPTOR Request Code, defined in table 9-4 of the USB specification)
A GET_DESCRIPTOR Configuration request is determined the high bit of its
- The high bit of
wValueis 2 (i.e. the
CONFIGURATIONdescriptor type, defined in table 9-5 of the USB specification)
In the next sections, let's look into all the concepts required to respond to this request.