Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
USB System Architecture (USB 2.0).pdf
Скачиваний:
173
Добавлен:
03.05.2015
Размер:
7.03 Mб
Скачать

Chapter 9: USB Power Conservation

Selective Suspend

This permits software to suspend individual devices or particular segments of the bus. Selective suspend is initiated by software when a given hub port is placed into the suspend state. Ports in the suspend state block all downstream traffic, allowing devices downstream to detect 3.0ms of inactivity and thereby enter their low power states.

Initiating Selective Suspend

Host software can suspend an individual device or a group of devices residing on a particular bus segment. Selective suspend is accomplished via a control transfer that issues a SetPortFeature (PORT_SUSPEND) request. (See “Set/ Clear Port Feature” on page 461.) A hub receiving this request will place the specified port in the suspend state. Note that the hub will not suspend a port during a packet transfer. At the conclusion of the packet transfer, the port is suspended.

When suspended, a port will not propagate downstream bus traffic to the device attached, except for the PortReset request. The hub similarly will not pass activity on the downstream port in the upstream direction. Since bus traffic is stopped, any and all devices residing on the bus segment downstream from the suspended port will no longer detect bus activity, and after 3ms will enter their suspend state.

Resume from Selective Suspend

Selective resume may be initiated by the host system or by a suspended device via remote wakeup. These two forms of selective suspend are discussed next.

Host Initiated Selective Resume

The host initiates selective resume via a ClearPortFeature (PORT_SUSPEND) request to the suspended hub port. This causes the port to signal resume to the device attached to the port to wake the device up. Suspend must be signaled for at least 20ms, followed by a low-speed EOP. A status bit is set within the hub to indicate that resume has completed and the device is now ready to be accessed. The status bit must not be set until 3ms after the low-speed EOP is signaled. This delay ensures that devices have time to synchronize their frame counters

201

USB System Architecture

prior to being addressed as the target of a transaction. Resumed devices will, however, see bus activity within this 3ms period.

Selective Wakeup from Device

Remote wakeup is supported for selective suspend as it is for global suspend. However, in the selective suspend environment, it is likely that other devices are awake and receiving bus traffic. The actual difference between global and selective suspend is at the hub. The device knows only that it has detected 3ms of inactivity on the bus and has transitioned to its suspend state. The hub recognizes that one of its ports is in the suspend state; however, the hub itself and other hub ports are not suspended and are receiving bus traffic. As a result, when the selectively suspended device signals resume, the hub must not forward the resume signaling upstream or to any other port. In essence, the remote wakeup is a private matter between the selectively suspended device and the suspended hub port.

When the selectively suspended hub port detects remote resume signaling from the device (idle to K transition), it responds as follows (see Figure 9-3):

1.Return resume signaling to the device within 100µs of receiving resume signaling from the device.

2.Continue signaling resume for a minimum of 20ms.

3.Terminate resume signaling with a low-speed EOP.

4.3ms after EOP the hub sets the resume completed status bit.

202

Chapter 9: USB Power Conservation

Figure 9-3: Selective Resume Signaled by Target Device

3&, %XV

+RVW &RQWUROOHU 5RRW +XE

1 2 3

3RUW 'LVDEOHG

'HYLFH

'HYLFH 'HYLFH +XE

 

1

 

2

 

3

 

4

 

3RUW

'LVDEOHG

+XE PXVW VLJQDO

UHVXPH EDFN WR GHYLFH ZLWKLQ —V RI GHWHFWLQJ UH VLJQDOLQJ IURP 'HY 5HVXPH

PXVW EH VLJQDOHG IRU ! PV

DQG WHUPLQDWHG ZLWK D

ORZ VSHHG (23

 

 

'HY L Q L W

L

D

W

1

2

UHVXPH VLJQDOLQJKHWRW

 

 

 

VHOHFWLYHO\ VXVSHQGHG

 

 

 

 

 

KXE SRUW

 

 

 

5HVXPH VLJQDOLQJ LQ WKH XSVWUHDP GLUHFWLRQ

 

5HVXPH VLJQDOLQJ

'HYLFH

'HYLFH

 

 

 

 

 

LQ WKH GRZQVWUHDP

 

 

 

 

 

 

 

 

GLUHFWLRQ

 

 

 

In summary, selective resume exclusively involves the suspended hub port and target device attached to the port. No other devices are notified of the wakeup, since they may be involved in transactions currently being broadcast over the USB. Neither should resume signaling be sent to devices that have been selectively suspended.

203

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]