
9 03/06/00
GL651USB USB KEYBOARD HUB CONTROLLER
Version 1.0
EVTFLG
_2
( offset 02, default = 00h )
--
R/W1C
WAKEUP
R/W1C
SUSPD
R/W1C
USBRST
R/W1C
SOF
R/W1C
C_LCPWR
--
--
Interrupt event flag –
SUSPD
WAKEUP
USBRST
SOF
C_LCPWR
R/W
R/O
RXDIS
RXSETUP
RXCTL0 of hub.
Status of endpoint 0 receiving –
RXCNT3~0
RXSEQ
: the controller goes into suspend state
: remote wakeup is detected when global suspended
: End of USB reset
: SOF detected or generated by HUB timer.
: POWER source change.
RXCTL0_HB
( offset 03, default = 40h )
R/O
RXOUT
R/O
RXSEQ
R/O
R/O
R/O
R/O
RXCNT3
RXCNT2
RXCNT1
RXCNT0
: EP0 received data byte count.
: 1 - The received data PID is DATA1
0 - The received data PID is DATA0
: 1 - The received token PID is OUT.
: 1 - The received token PID is SETUP.
: 0 - Endpoint 0 FIFO is empty and ready for data-packet receiving.
1 - Endpoint 0 FIFO is filled with data and will reject the new-coming data
packet.
If RXDIS = 1, the device will not accept an OUT transaction addressed to it, and will respond
with a NAK to an error-free transaction. Hardware will automatically set RXDIS after a
successful receiving. After processing, the micro-controller should clear RXDIS to enable next
data-packet receiving or free FF0 for filling of the data to transmit. Note that a SETUP
transaction addressed to the device is always accepted even though RXDIS = 1.
RXCTL0_KB
( offset 04, default = 40h )
R/W
R/O
R/O
R/O
RXDIS
RXSETUP
RXOUT
RXSEQ
RXCTL0 of keyboard. Definition of each bit is the same as RXCTL0_HB.
TXCTL0_HB
( offset 05, default = 00h )
R/W
R/W
R/W
--
EP0STL
EP0OE
EP0SEQ
TXCTL0 of hub.
Endpoint 0 transmit setting –
EP0CNT3~0
: number of data bytes to transmit
EP0OE
: enable data transmit
1 – ready to transmit data packet
0 – not ready to transmit data packet (default)
EP0SEQ
: data packet type
0 –DATA0
1 –DATA1
EP0STL
: set endpoint 0 stall
1 – EP0 will respond to USB host controller with STALL packet
EP0STL will be automatically cleared when a setup transaction is accepted.
After filling the data-to-transmit into FF0, the micro-controller should setup this register to
enable endpoint 0 data transmit. If EP0OE = 0, endpoint 0 will respond to a valid IN transaction
RXOUT
RXSETUP
RXDIS
R/O
R/O
R/O
R/O
RXCNT3
RXCNT2
RXCNT1
RXCNT0
R/W
R/W
R/W
R/W
EP0CNT3
EP0CNT2
EP0CNT1
EP0CNT0