User`s guide
CY7C66013
C
CY7C66113
C
Document #: 38-08024 Rev. *B Page 40 of 61
Hub Ports Data ADDRESS 0x50
Bit [0..3]: Port x Diff Data (where x = 1..4)
Set to 1 if D+ > Dā (forced differential 1, if signal is differential, 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 [7..4]: Reserved.
18.4 Downstream Port Suspend and Resume
The Hub Ports Suspend Register (Figure 18-8) and Hub Ports Resume Status Register (Figure 18-9) 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.
These registers are cleared on reset or USB bus reset.
Hub Ports Suspend ADDRESS 0x4D
Bit [0..3]: Port x Selective Suspend (where x = 1..4)
Set to 1 if Port x is Selectively Suspended; Set to 0 if Port x Do not suspend.
Bit 7: Device Remote Wakeup.
When set to 1, Enable hardware upstream resume signaling for connect/disconnect events during global resume.
When set to 0, Disable hardware upstream resume signaling for connect/disconnect events during global resume.
Hub Ports Resume ADDRESS 0x4E
Bit [0..3]: Resume x (where x = 1..4)
When set to 1 Port x requesting to be resumed (set by hardware); default state is 0;
Bit [7..4]: Reserved.
The Reserved bits [7..4] should always read as ā0ā.
Resume from a selectively suspended port, with the hub not in suspend, typically involves these actions:
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/Write----RRRR
Reset 0 0 000000
Figure 18-7. Hub Ports Data Register
Bit #76543210
Bit Name Device Remote
Wakeup
Reserved Reserved Reserved Port 4
Selective
Suspend
Port 3
Selective
Suspend
Port 2
Selective
Suspend
Port 1
Selective
Suspend
Read/Write R/W R/W R/W R/W R/W R/W R/W R/W
Reset 0 0 0 0 0 0 0 0
Figure 18-8. Hub Ports Suspend Register
Bit #76543210
Bit Name Reserved Reserved Reserved Reserved Resume 4 Resume 3 Resume 2 Resume 1
Read/Write - - - - R R R R
Reset 0 0 0 0 0 0 0 0
Figure 18-9. Hub Ports Resume Status Register