User`s guide
CY7C65113C
Document #: 38-08002 Rev. *G Page 29 of 48
The data state of downstream ports can be read through the HUB
Ports SE0 Status Register (Figure 27) and the Hub Ports Data
Register (Figure 28). The data read from the Hub Ports Data
Register is the differential data only and is independent of the
settings of the Hub Ports Speed Register (Figure ). When the
SE0 condition is sensed on a downstream port, the corre-
sponding bits of the Hub Ports Data Register hold the last differ-
ential data state before the SE0. Hub Ports SE0 Status Register
and Hub Ports Data Register are cleared upon reset or bus reset.
Figure 27. Hub Ports SE0 Status Register
.
Bit [0..3]: Port x SE0 Status (where x = 1..4).
Set to 1 if a SE0 is output on the Port x bus; Set to 0 if a
Non-SE0 is output on the Port x bus.
Bit [4..7]: Reserved.
Set to 0
Figure 28.
. Hub Ports Data Register
Bit [0..3]: Port x Diff Data (where x = 1..4).
Set to 1 if D+ > D- (forced differential 1, if signal is differ-
ential, i.e. not a SE0 or SE1). Set to 0 if D- > D+ (forced
differential 0, if signal is differential, i.e. not a SE0 or SE1).
Bit [4..7]: Reserved.
Set to 0.
Downstream Port Suspend and Resume
The Hub Ports Suspend Register (Figure 29) and Hub Ports
Resume Status Register (Figure 30) indicate the suspend and
resume conditions on downstream ports. The suspend register
must be set by firmware for any ports that are selectively
suspended. Also, this register is only valid for ports that are
selectively suspended.
If a port is marked as selectively suspended, normal USB traffic
is not sent to that port. Resume traffic is also prevented from
going to that port, unless the Resume comes from the selectively
suspended port. If a resume condition is detected on the port,
hardware reflects a Resume back to the port, sets the Resume
bit in the Hub Ports Resume Register, and generates a hub
interrupt.
If a disconnect occurs on a port marked as selectively
suspended, the suspend bit is cleared.
The Device Remote Wakeup bit (bit 7) of the Hub Ports Suspend
Register controls whether or not the resume signal is propagated
by the hub after a connect or a disconnect event. If the Device
Remote Wakeup bit is set, the hub will automatically propagate
the resume signal after a connect or a disconnect event. If the
Device Remote Wakeup bit is cleared, the hub will not propagate
the resume signal. The setting of the Device Remote Wakeup
flag has no impact on the propagation of the resume signal after
a downstream remote wakeup event. The hub will automatically
propagate the resume signal after a remote wakeup event,
regardless of the state of the Device Remote wakeup bit. The
state of this bit has no impact on the generation of the hub
interrupt.
A resume bit is set automatically when hardware detects a
resume condition on a selectively suspended downstream port.
The resume condition is a differential ‘1’ for a low-speed device
and a differential ‘0’ for a full-speed device.
These registers are cleared on reset or USB bus reset.
Hub Ports SE0 Status Address 0x4F
Bit # 76543210
Bit Name Reserved Reserved Reserved Reserved Port 4
SE0 Status
Port 3
SE0 Status
Port 2
SE0 Status
Port 1
SE0 Status
Read/WriteRRRRRRRR
Reset 00000000
Hub Ports Data ADDRESS 0x50
Bit # 76543210
Bit Name Reserved Reserved Reserved Reserved Port 4 Diff.
Data
Port 3 Diff.
Data
Port 2 Diff.
Data
Port 1 Diff.
Data
Read/WriteRRRRRRRR
Reset 00000000