2 printer class request, 3 vendor request (class request) – Toshiba H1 Series User Manual

Page 420

Advertising
background image

TMP92CZ26A

92CZ26A-417

3.16.5.2 Printer Class Request

UDC does not support “Automatic answer” of printer class request.
Transaction for Class request is the same as vendor request; answering to

INT_SETUP interrupt.

3.16.5.3 Vendor request (Class request)

UDC doesn’t support “Automatic answer” of Vendor request.
According to INT_SETUP interrupt, access register that device request is stored,

and discern receiving request. If this request is vendor request, control UDC from
external, and execute transaction for Vendor request.

Below is explanation for case of data phase is transmitting (Control read), and

case of data phase is receiving (Control write).

(a) Control Read request

bmRequestType

bRequest wValue wIndex wLength

Data

110000xxB

Vender peculiar

Vender peculiar

Vender peculiar

Vender peculiar

(Expire 0)

Vendor data

When INT_SETUP is received, judge contents of receiving request by

bmRequestType, bRequest, wValue, wIndex and wLength registers. And execute
transaction for each request. As application, access Setup_Received register after
request was judged. And it must inform that INT_SETUP interrupt was
recognized to UDC.

After transmitting data prepared in application, access DATASET register, and

confirm EP0_DSET_A bit is “0”. After confirming, write data FIFO of endpoint 0.
If transmitting data more than payload, write data after it confirmed whether a
bit of EP0_DSET_A in DATASET register is “0”. (INT_ENDPOINT0 interrupt is
can be used.) If writing all data finished, write “0” to EP0 bit of EOP register.
When UDC receive it, status stage finish automatically.

And when UDC finish status stage normally, INT_STATUS interrupt is

asserted. If finishing status stage normally is recognized to external application,
manage this stage by using this interrupt signal. If status stage cannot be
finished normally and during status stage, maybe new SETUP token is received.
In this case, when INT_SETUP interrupt signal is asserted, “1” is set to
STAGE_ERROR bit of EP0_STATUS register. And it informs it to external that
status stage cannot be finished normally.

And maybe dataphase finish in data number that is short than value showed

to wLength by protocol of control read transfer type in USB. If application
program is configured by using only wLength value, transaction for it cannot be
when host shift to status stage without arriving at expecting data number. At this
point, shifting to status stage can be confirmed by using INT_STATUSNAK
interrupt signal. (However, releasing mask of STATUS_NAK bit by using
interrupt control register is needed.) In Vendor Request, this problem will not
generate because of receiving buffer size is set to host controller by driver,
actually.

Note: In every host, data (data that is transmitted from device by payload of 8 bytes) may be

recognized to short packet until confirming payload size of device side. And it may become to above

case on the exterior. Therefore, if controlling standard request by using software, be careful.)

Advertising
This manual is related to the following products: