EFI USB PORT STATUS

From PhoenixWiki

Jump to: navigation, search

Prototype

typedef struct{
  UINT16 PortStatus;
  UINT16 PortChangeStatus;
} EFI_USB_PORT_STATUS;

Members

Member Description
PortStatus Contains current port status bitmap. The root hub port status bitmap is unified with the USB hub port status bitmap.
#define USB_PORT_STAT_CONNECTION   0x0001
#define USB_PORT_STAT_ENABLE       0x0002
#define USB_PORT_STAT_SUSPEND      0x0004
#define USB_PORT_STAT_OVERCURRENT  0x0008
#define USB_PORT_STAT_RESET        0x0010
#define USB_PORT_STAT_POWER        0x0100
#define USB_PORT_STAT_LOW_SPEED    0x0200
#define USB_PORT_STAT_HIGH_SPEED   0x0400
Bit Description
0 Current Connect Status: (USB_PORT_STAT_CONNECTION) This field reflects whether or not a device is currently connected to this port. 0 = No device is present. 1 = A device is present on this port
1 Port Enable / Disabled: (USB_PORT_STAT_ENABLE) Ports can be enabled by software only. Ports can be disabled by either a fault condition (disconnect event or other fault condition) or by software. 0 = Port is disabled. 1 = Port is enabled
2 Suspend: (USB_PORT_STAT_SUSPEND) This field indicates whether or not the device on this port is suspended. 0 = Not suspended. 1 = Suspended.
3 Over-current Indicator: (USB_PORT_STAT_OVERCURRENT) This field is used to indicate that the current drain on the port exceeds the specified maximum. 0 = All no over-current condition exists on this port. 1 = An over-current condition exists on this port
4 Reset: (USB_PORT_STAT_RESET) Indicates whether port is in reset state. 0 = Port is not in reset state. 1 = Port is in reset state.
5-7 Reserved. These bits return 0 when read.
8 Port Power: (USB_PORT_STAT_POWER) This field reflects a port’s logical, power control state. 0 = This port is in the Powered-off state. 1 = This port is not in the Powered-off state.
9 Low Speed Device Attached: (USB_PORT_STAT_LOW_SPEED) This is relevant only if a device is attached. 0 = Full-speed device attached to this port. 1 = Low-speed device attached to this port.
10 High Speed Device Attached: (USB_PORT_STAT_HIGH_SPEED) This field indicates whether the connected device is high-speed device. 0 = High-speed device is not attached to this port. 1 = High-speed device attached to this port. NOTE: this bit has precedence over Bit 9; if set, bit 9 must be ignored.
11-15 Reserved. These bits return 0 when read.
PortChangeStatus Contains current port status change bitmap. The root hub port change status bitmap is unified with the USB hub port status bitmap.
#define USB_PORT_STAT_C_CONNECTION   0x0001
#define USB_PORT_STAT_C_ENABLE       0x0002
#define USB_PORT_STAT_C_SUSPEND      0x0004
#define USB_PORT_STAT_C_OVERCURRENT  0x0008
#define USB_PORT_STAT_C_RESET        0x0010
Bit Description
0 Connect Status Change: (USB_PORT_STAT_C_CONNECTION) Indicates a change has occurred in the port’s Current Connect Status. 0 = No change has occurred to Current Connect status. 1 = Current Connect status has changed.
1 Port Enable /Disable Change: (USB_PORT_STAT_C _ENABLE) 0 = No change. 1 = Port enabled/disabled status has changed.
2 Suspend Change: (USB_PORT_STAT_C _SUSPEND) This field indicates a change in the host-visible suspend state of the attached device. 0 = No change. 1 = Resume complete.
3 Over-Current Indicator Change: (USB_PORT_STAT_C_OVERCURRENT) 0 = No change has occurred to Over-Current Indicator. 1 = Over-Current Indicator has changed.
4 Reset Change: (USB_PORT_STAT_C_RESET) This field is set when reset processing on this port is complete. 0 = No change. 1 = Reset complete.
5-15 Reserved. These bits return 0 when read.

Copyright (C) 2008 Phoenix Technologies Ltd. All Rights Reserved. Portions (C) 2007-2008 UEFI Forum, Inc. Used with permission.

Personal tools