Ch8ck - USB chapter 8 test report

Ch8ck v2.00

1. General
information

Vendor name:

Product name:

Test engineer:

Vendor ID:

Product ID:

Release ID:

USB version: 2.00

Device speed: full speed

Device class: class per interface

Configurations: 1

2. Test results for
configuration 1

Overview of the individual endpoint usage:

Default endpoint:

- Endpoint 0: Control SETUP - 64-byte

Interface 0, alternate setting 0: HID: normal

- Endpoint 1: Interrupt IN - 64-byte

Overview of the global endpoint usage:

Endpoint 0: SETUP

Endpoint 1: IN

2.1. Packet field
formats

2.1.1. Unsupported
transaction direction/type

If
a function receives an otherwise valid PID for a direction or type that it
does not support, the function must not respond.

SECTION

Section:
USB v2.00 section 8.3.1

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SETUP transaction is issued on endpoint 1. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 2. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 3. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 4. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 5. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 6. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 7. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 8. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 9. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 10. This endpoint doesn't support
this type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 11. This endpoint doesn't support
this type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 12. This endpoint doesn't support
this type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 13. This endpoint doesn't support
this type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 14. This endpoint doesn't support
this type of transaction and should not respond.

RESULT

PASS

TEST

A
SETUP transaction is issued on endpoint 15. This endpoint doesn't support
this type of transaction and should not respond.

RESULT

PASS

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

An
OUT transaction is issued on endpoint 0. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 1. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 2. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 3. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 4. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 5. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 6. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 7. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 8. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 9. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 10. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 11. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 12. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 13. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 14. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
OUT transaction is issued on endpoint 15. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

GetDeviceDescr, 8 bytes

TEST

An
IN transaction is issued on endpoint 0. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

FAIL*

* Device response: ACK

* Refer to the help file for more info on this test.

TEST

An
IN transaction is issued on endpoint 2. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 3. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 4. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 5. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 6. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 7. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 8. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 9. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 10. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 11. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 12. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 13. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 14. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on endpoint 15. This endpoint doesn't support this
type of transaction and should not respond.

RESULT

PASS

2.1.2. Address
fields: access to non-initialised address

Address
or endpoint aliasing is not permitted, and a mismatch on either field must
cause the token to be ignored.

SECTION

Section:
USB v2.00 section 8.3.2

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SetAddress, address 40 on a non-reserved address is issued. The device should
not respond to this request.

RESULT

PASS

2.1.3. Endpoint
fields: access to non-initialised endpoints

Accesses
to non-initialized endpoints will also cause the token to be ignored.

SECTION

Section:
USB v2.00 section 8.3.2

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 2. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 3. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 4. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 5. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 6. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 7. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 8. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 9. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 10. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 11. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 12. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 13. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 14. This endpoint should not respond.

RESULT

PASS

TEST

A
SETUP transaction with empty data packet is issued on unused
(non-initialised) endpoint 15. This endpoint should not respond.

RESULT

PASS

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 2. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 3. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 4. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 5. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 6. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 7. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 8. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 9. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 10. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 11. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 12. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 13. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 14. This endpoint should not respond.

RESULT

PASS

TEST

An
OUT transaction with empty data packet is issued on unused (non-initialised)
endpoint 15. This endpoint should not respond.

RESULT

PASS

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 2. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 3. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 4. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 5. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 6. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 7. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 8. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 9. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 10. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 11. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 12. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 13. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 14. This
endpoint should not respond.

RESULT

PASS

TEST

An
IN transaction is issued on unused (non-initialised) endpoint 15. This
endpoint should not respond.

RESULT

PASS

2.1.4. Address
fields: default address 0

Function
address zero is reserved as the default address and may not be assigned to
any other use.

SECTION

Section:
USB v2.00 section 8.3.2.1

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

The
device should not respond to SetConfiguration on address 0.

RESULT

PASS

2.1.5. Endpoint
fields: endpoint 0

All
functions must support a control pipe at endpoint number zero.

SECTION

Section:
USB v2.00 section 8.3.2.2

SETUP

Reset
& enable repeater port #1

TEST

A
SETUP transaction to endpoint 0 should be ACKed by the device.

RESULT

PASS

2.1.6. Endpoint
fields: maximum number of endpoints

Low-speed
devices support a maximum of three pipes per function: a control pipe at
endpoint zero plus two additional pipes (either two control pipes, a control
pipe and an interrupt endpoint, or two interrupt pipes). Full- and high-speed
devices may support up to the maximum of 16 endpoint numbers of any type.

SECTION

Section:
USB v2.00 section 8.3.2.2

TEST

Check
endpoint descriptors for endpoint usage.

Endpoint 0 is used.

Endpoint 1 is used.

RESULT

PASS

2.1.7. CRC: PID
fields never covered by CRC

The
PID is not included in the CRC check of a packet containing a CRC.

SECTION

Section:
USB v2.00 section 8.3.5

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

During
the enumeration, the SETUP, ad. 0,endp. 0 packet has the same CRC as the IN, ad.0, endp. 0 packet,
although their PIDs are different. Both packets should be ACKed by the device
(as part of a correct transaction).

RESULT

PASS

2.1.8. CRC: impact
on bit stuffing

Bit
stuffing requirements must be met for the CRC, and this includes the need to
insert a zero at the end of a CRC if the preceeding six bits were all ones.

SECTION

Section:
USB v2.00 section 8.3.5

SETUP

Reset
& enable repeater port #1

TEST

A
SetAddress 19 control transfer generates a CRC with a 6 bit '111111' sequence
which requires bit stuffing. If bit stuffing is applied correctly, the device
should ACK the SETUP transaction.

RESULT

PASS

2.2. Packet formats

2.2.1. Incoming
handshake packets: invalid format

A
handshake packet sent by the device should be conform
to the format described in figure 8-16.

SECTION

Section:
USB v2.00 section 8.4.5

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

During
the enumeration, all stages should be ACKed by the device in the correct
format according to fig. 8-16.

RESULT

PASS

2.2.2. Function
response to IN transactions

The
device should answer to an IN transaction according to table 8-5.

SECTION

Section:
USB v2.00 section 8.4.6.2

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SetFeature, ENDPOINT_HALT is sent to interrupt IN endpoint 1 of the currently
selected or default alternate setting. If successful, a GetStatus for that
endpoint should return bit 0 high (D0=1). If successful, two IN transactions
are executed on that endpoint. The endpoint should respond twice with a
STALL.

RESULT

PASS

2.2.3. Function
response to OUT transactions

The
device should answer to an OUT transaction according to table 8-6.

SECTION

Section:
USB v2.00 section 8.4.6.3

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

RESULT

NOT*

* None of interrupt or bulk OUT endpoints 1-15 are used.

2.2.4. Function
response to SETUP transaction

The
function may not respond to a SETUP token with either STALL or NAK and the
receiving function must accept the data packet that follows the SETUP token.

SECTION

Section:
USB v2.00 section 8.4.6.4

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SETUP transaction with empty data packet is issued on endpoint 0. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: ACK)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 1. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 2. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 3. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 4. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 5. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 6. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 7. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 8. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 9. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 10. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 11. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 12. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 13. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 14. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

TEST

A
SETUP transaction with empty data packet is issued on endpoint 15. The
endpoint shouldn't return NAK or STALL.

RESULT

PASS

(Device response: Time out)

2.2.5. SETUP
transaction to a non-control endpoint

If
a non-control endpoint receives a SETUP PID, it must ignore the transaction
and return no response.

SECTION

Section:
USB v2.00 section 8.4.5.4

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SETUP control stage with empty data packet is issued on endpoint 1 of the
currently selected or default alternate setting. The endpoint should give no
response.

RESULT

PASS

2.3. Transfer
formats

2.3.1. Control
transfer format

The
control transfer format should correspond to the format as indicated in
figure 8-36.

SECTION

Section:
USB v2.00 section 8.5.3

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

During
the enumeration, all stages should occur in the correct format according to
fig. 8-36.

RESULT

PASS

2.3.2. Direction of
data in the data stage of a control transfer

All
the transactions in the data stage must be in the same direction.

SECTION

Section:
USB v2.00 section 8.5.3

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
GetDeviceDescr, 18 bytes is issued. The device responds correctly if the host
reads all data with consecutive DATA IN transactions.

RESULT

PASS

2.3.3. More data
than the prenegotiated packet size in control transfer

If
the amount of data exceeds the prenegotiated data packet size, the data is
sent in multiple transactions (INs and OUTs) that carry the maximum packet
size. Any remaining data is sent as a residual in the last transaction.

SECTION

Section:
USB v2.00 section 8.5.3

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
GetDeviceDescr, 18 bytes request is issued. The data from the
GetDeviceDescriptor transfer should be sent during IN transactions with
maximum packet size data packets. Remaining data should be sent as a residual
in the last transaction of the data stage.

RESULT

PASS

2.3.4. Control
transfers: status phase responses for control read transfers

Control
transfers should give status phase response according to table 8-7.

SECTION

Section:
USB v2.00 section 8.5.3.1

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
GetDescriptor, 18 bytes, with descriptor type FFh (invalid descriptor)
request is executed. The device must STALL the data and the status stage.

RESULT

FAIL*

* Status stage device response: ACK

2.3.5. Non-zero
data packet in status stage of control read transfer

For
control reads, the host sends an OUT token to the control pipe to initiate
the status stage. The host may only send a zero-length data packet in this
phase but the function MAY accept any length packet as a valid status
inquiry.

SECTION

Section:
USB v2.00 section 8.5.3.1

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
GetDeviceDescriptor, 1 byte, is executed. In the status stage, the host sends
a non-empty data packet (2 bytes: FFh,FFh). Check
the response of the device.

RESULT

PASS

(Device response: ACK)

2.3.6. STALL
handshake in status stage

The
protocol stall condition lasts until the receipt of the next SETUP
transaction and the function will return STALL in response to any IN or OUT
transaction on the pipe until the SETUP transaction is received.

SECTION

Section:
USB v2.00 section 8.5.3.4

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SetFeature, ENDPOINT_HALT on interface 0 is sent. This is an invalid request.
Two IN transactions are sent in the status stage. If the device responds
properly to the IN transactions, a SetConfiguration, configuration 0 is sent.
This is a valid request.

The device should:

- Return a STALL to the IN transactions of the SetFeature request.

- ACK the SetConfiguration request.

RESULT

PASS

2.3.7. STALL
handshake in data stage

The
protocol stall condition lasts until the receipt of the next SETUP
transaction and the function will return STALL in response to any IN or OUT
transaction on the pipe until the SETUP transaction is received.

SECTION

Section:
USB v2.00 section 8.5.2.4

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
SynchFrame, 2 bytes, on non-isochronous endpoint 0 is sent. The device should
STALL this request in the data and status stages. If successful, a
GetDeviceDescriptor, index 0, 8 bytes is sent.

The device should:

- Return a STALL to the IN and OUT transaction of the first control request.

- ACK the second transfer.

RESULT

FAIL*

* Status stage 1st tranfer device response: ACK

SETUP

Reset
& enable repeater port #1

SetAddress, 1

SetConfiguration, 1

TEST

A
GetDeviceDescriptor, 18 bytes request is performed. 2 extra IN transactions
are added to the data stage. If successful, a valid GetDeviceDescriptor, 18
bytes is sent to the device.

The device should:

- 1st transfer: STALL the extra INs in the data stage and STALL the status
stage.

- 2nd transfer: ACK the control request.

RESULT

FAIL*

* 1st extra IN data stage device response: ACK

2.4. Test results

These are the test results for configuration 1:

Passed tests: 117

Failed tests: 4

Skipped tests: 1

Total tests: 122