Patent Description:
Power consumption is a concern for USB port controllers in many USB port systems, such as battery-powered devices. Moreover, multi-port USB systems may include one or more unused or unattached ports along with other ports connected to a USB compatible device. The different USB ports are individually managed by an associated port controller, and a port manager circuit communicates with the port controllers using a communications interconnection, such as an I2C serial bus with data and clock lines. The USB Implementers Forum (USB-IF) released an I2C specification on October <NUM>, <NUM> that defines the register set that a port manager may use to interact with a port controller. I2C is an example of a serial interface. The port manager can place an unused port controller into a low-power operating mode by sending an appropriate command. However, the port manager operates as a master and a master-slave communications architecture along the I2C bus, and each port controller must maintain serial interface circuitry in a powered condition in order to react quickly to a read or write transaction at any time. Moreover, the idle mode port controller must react to detected communications transactions, even if not addressed for that port controller, and the port manager must then send another command to place the port controller back into the idle mode. This condition is exacerbated in systems having multiple idle mode ports, where communications to an active port cause all the idle ports to respond, and the port manager must send multiple commands to again place these port controllers into the idle mode, each of which causes another idle mode interruption.

Patent publication <CIT> discloses a USB port controller according to the preamble of claim <NUM>, which is switched into a low power mode and back into a normal operation mode on detection of USB activity or USB connection.

The scope of the invention is defined by the independent claims <NUM> and <NUM>.

Disclosed examples include USB port controllers and methods for reduced power consumption and low power or idle mode operation of USB port controllers. A port controller switches from a normal first power mode to a second power mode for reduced power consumption in response to a command from a port manager circuit. The port controller switches back from the second power mode to the first power mode in response to detected activity on a communications connection, or in response to detected connection of a USB device. Where the low power mode exit was due to detected communications activity, the port controller automatically switches back to the second power mode unless a communications transaction addressed to the USB port controller is received within a certain time. This enhances power conservation by allowing the port controller to return to low-power operating mode without waiting for a specific command from a port manager circuit, and the port manager circuit does not need to interrupt other port controllers with such messaging, thereby allowing idle mode port controllers to avoid responding to communications events.

In certain examples, the USB port controller can be configured by a port manager to operate as a source, a sink and/or as a dual role power (DRP) port controller. The port controller operates according to this configured port mode in both the normal power mode and the low power mode, and continues or resumes the configured port mode operation after exiting the low-power mode. In certain implementations, a DRP configured port controller toggles between an unattached sink state and an unattached source state during normal power mode operation. In the low power or idle mode operation, the DRP configured port controller toggles between the unattached source state and a disabled state. The port controller in certain examples includes a low-power connection or attachment detection circuit, such as a simple comparator circuit, that monitors a voltage of a configuration channel (CC) line of the USB port connector to detect connection of a power syncing USB device. In certain examples, the port controller includes a bias control circuit with a switch to selectively connect a relatively high resistance pull-down resistor to the CC line in the disabled state in the low-power mode. This allows the comparator circuit to use a higher threshold voltage for USB device attachment detection.

Further disclosed examples include methods for operating a USB port controller, including switching operation of the controller from a first (normal) power mode to a second low power mode in response to a command from a port manager circuit. Certain examples also provide for switching from the second power mode to the first power mode in response to detected activity on a communications connection or detected connection of a USB device to a USB port controller. The method further includes automatically switching back to the second power mode unless a communications transaction addressed to the USB port controller is received within a certain time after switching to the first power mode in response to detected communications activity.

In the drawings, like reference numerals refer to like elements throughout, and the various features are not necessarily drawn to scale. Also, the term "couple" or "couples" is intended to include indirect or direct electrical connection or combinations thereof. For example, if a first device couples to or is coupled with a second device, that connection may be through a direct electrical connection, or through an indirect electrical connection via one or more intervening devices and connections.

<FIG> shows a USB host system implemented using a host printed circuit board (PCB) <NUM> including various circuits implementing a USB power delivery (USB-PD) system. The system includes multiple port connectors <NUM>-<NUM> and <NUM>-<NUM>, along with associated port controller integrated circuits (ICs) <NUM>-<NUM> and <NUM>-<NUM>. The port controllers <NUM> interface a host circuit, such as a processor <NUM> with one or more USB devices (not shown) for data and/or power transfer through the connectors <NUM>. The first USB port controller IC <NUM>-<NUM> is described below, and similar components and operation are provided for the second illustrated USB port controller <NUM>-<NUM>. The host system <NUM> controls power transfer between the host PCB <NUM> and a connected USB compatible device using the port controller <NUM>. The connector <NUM> in one example is a Type C (USB-C) port connector <NUM> associated with a corresponding USB port. The USB controller <NUM> in one example includes a terminal to electrically couple a baseband transceiver <NUM> with a configuration channel line <NUM> of the USB cable connector <NUM>. The baseband transceiver <NUM> includes an I/O connection to transmit data to the CC line <NUM> according to a transmit data signal from the host processor <NUM>, and to receive data from the configuration channel line <NUM>. The host processor <NUM> and the controller IC <NUM> are powered by a power supply <NUM> that provides a positive voltage to a first voltage node IN of the controller <NUM>. The controller IC <NUM> also includes a power circuit <NUM> connected to a bus voltage line <NUM> (VBUS) of the USB connector <NUM> via an output terminal OUT of the IC <NUM>.

In one example, the host processor <NUM> is a programmable or programmed processor operable when powered to execute instructions stored in an associated electronic memory (not shown) to negotiate USB power delivery parameters with the associated USB compatible devices connected to corresponding port connectors <NUM> via USB cables (not shown). In other examples, the host <NUM> can be any suitable processor, logic circuit, or combination thereof, whether implemented as a single circuit (e.g., integrated circuit or IC) or as multiple circuits. In one example, the host PCB <NUM> provides DP_OUT and DM_OUT connections from the controller IC <NUM> to the host processor <NUM> and the USB controller <NUM> provides DM_IN and DP_IN terminals to connect to D+ and D- lines of the connector <NUM> that allow the host processor <NUM> to send and receive data packets. The controller IC <NUM> also provides a ground terminal GND for connection to a ground line of the USB cable <NUM>. In certain examples, no host processor <NUM> is provided, the port interface does not use the D+ and D- lines of the connector <NUM>, and the DM_IN and DP_IN terminals are unused or can be omitted. In certain examples, the port controller <NUM> implements communications with a connected USB device along one or more configuration channel lines <NUM> to exchange data with a port manager circuit <NUM>.

The port controllers <NUM> each include a communications interface circuit <NUM> to communicate with a port manager circuit <NUM> over a communications connection in normal mode. In one example, the port manager <NUM> communicates with the host processor <NUM>, and directs or controls operation of the connected USB port controllers <NUM> for messaging exchange along the communications connection. In another implementation, the port manager circuit <NUM> is included in the host circuit <NUM>. In yet another implementation, the port manager circuit <NUM> and the port controller circuit are in the same IC. In yet another implementation, multiple port controllers are in the same IC. In the illustrated example, an I2C serial bus connection is provided, including a serial clock line <NUM> (SCL) and a serial data line (SDA). The port controller <NUM> in this example provides an I2C interface circuit <NUM>, which is selectively powered down during low power mode operation. The port manager circuit <NUM> in one example operates as a communication master, and the port controller ICs <NUM> each operate as slaves in a master-slave communications configuration using the I2C bus lines <NUM> and <NUM> to communicate with one another. In particular, the port manager <NUM> can provide message packets to the bus. The connected port controllers <NUM> are each assigned a unique address, and each port controller <NUM> evaluates an address field of a received message packet to determine it is the intended recipient. Using this configuration, the port manager <NUM> in certain examples can write data to, and read data from, registers <NUM>-<NUM> of each individual port controller IC <NUM> in order to exchange data to control certain operations of the port controllers <NUM>.

The port controller <NUM> also includes a low power mode control circuit <NUM> with a communications interface circuit <NUM>. The control circuit <NUM> can be any suitable logic circuit, whether programmable or otherwise, to implement advanced power mode and port mode operation of the port controller <NUM> as detailed further herein. The control circuit <NUM> in one example includes a state machine <NUM>, which can be implemented by execution of firmware or program instructions, or by dedicated logic circuitry in various examples. The control circuit <NUM> also includes a timer circuit <NUM>, an alert register <NUM> (ALERT), a role control register <NUM> (ROLE CONTROL), and a command register <NUM> (COMMAND), which are used as an interface with the port manager circuit <NUM>.

The control circuit <NUM> controls power modes of the port controller <NUM>. In one example, low power control circuit <NUM> controls the power circuit <NUM> to selectively implement a first power mode (NORMAL mode) for normal operation of the USB port controller <NUM> or a second power mode (LP mode) for reduced power consumption by the USB port controller <NUM>. In one example, all or some of the illustrated the low power mode control circuit <NUM> components remain powered during operation in the second power mode, and some or all of the remaining circuitry of the port controller <NUM> is powered down in the second power mode. In one implementation, the low-power mode control circuitry <NUM> includes two segments, one including switching circuitry to operate switches S1 and S2 and a comparator circuit <NUM>, and only these circuits are powered up in the low-power mode. At the beginning of the normal mode operation, the I2C interface circuit <NUM> and the registers <NUM>-<NUM> and <NUM> become active. In this example, low power consumption is facilitated and only the circuits used to monitor the connection of a USB device (e.g., the pull up/down and comparator) are active. In one example, the power circuit <NUM> includes power conversion circuitry to provide power to various circuits within the port controller IC <NUM> under control of the power mode control circuit <NUM>. The port manager circuit <NUM> can direct the control circuit <NUM> to cause the port controller <NUM> to enter the low power mode by writing the command register <NUM>. In certain implementations, the port manager circuit <NUM> can also instruct the control circuit <NUM> to switch from the low-power mode to a normal power mode, although not a strict requirement of all implementations of the disclosed examples. The control circuit <NUM> is operatively coupled with the power circuit <NUM> by a connection <NUM>, such as to control selective shutdown or idling of certain circuits within the port controller <NUM> to implement a low power idle mode.

The control circuit <NUM> also controls "port modes" of the port controller <NUM>. In certain examples, the port modes are directed by the port manager circuit <NUM> using write operations to the role control register <NUM> of the control circuit <NUM>. The control circuit <NUM> provides control signals or command messaging via a connection <NUM> to allow the port manager circuit <NUM> to configure the power circuit <NUM> to selectively operate in a configured port mode. The configured port modes in one example include a first port mode (SOURCE port mode) in which the power circuit <NUM> delivers power to the power line <NUM> of the USB port connector <NUM>. In a second port mode (SINK port mode), the power circuit <NUM> receives power from the power line <NUM>. In a third port mode (DUAL ROLE POWER or DRP mode), the power circuit <NUM> refrains from delivering power to, or receiving power from, the power line <NUM> pending connection of a USB device to the connector <NUM>.

The port manager circuit <NUM> writes appropriate bits to the control circuit role control register <NUM> via the I2C interface circuit <NUM> to selectively control the interface of the associated USB port to implement a variety of different configurations. The USB-PD standards define four kinds of USB compatible devices, including provider-only, provider-consumer, consumer-provider, and consumer-only. Devices that are provider-only, provider-consumer, or consumer-providers may sometimes be in a source role to provide DC voltage on the VBUS line <NUM> for the far-end device to consume or sink. USB-C recognizes three kinds of USB devices: downward facing port (DFP), upward facing port (UFP), and dual-role port or dual-role power (DRP). In the absence of USB-PD messaging, the DFP is the source of power and the UFP is sinking the power. USB-C cables and connectors include the configuration channel (CC) line <NUM> or multiple configuration channel lines for power configuration and for baseband communications. USB-PD specifications provide baseband communications using Biphase Mark Coding (BMC) for message exchange over the configuration channel line <NUM>. USB-C systems use a Type-C plug with two configuration channel lines CC1 and CC2. Various aspects of this disclosure are described in connection with a single configuration channel line <NUM>, and these techniques can be applied with respect to multiple configuration channel lines in various implementations. The USB-PD specification defines a half-duplex packet-based communication link between ports connected via a USB-PD cable and connectors to exchange information that enables the two ports to communicate and negotiate the voltage and current provided from a source port to a sink port. The ports can negotiate to switch roles (source to sink and vice versa). The BMC communications on the CC lines is independent from the normal USB communications that go through D+ and D- lines of the USB cable. The configuration channel line or lines can be used for negotiating power transfer configurations of connected devices by way of analog signal levels. For example, up to <NUM> W of power can be delivered for USB Type-C cables without USB-PD messaging by controlling the DC voltage on the configuration channel line <NUM>. The nominal voltage of the configuration channel line <NUM> is determined by pull up current from the DFP device (e.g., using a pull up resistor RP or a current source) and a pull down resistor RD (or pull down current source) from the UFP device. The CC line voltage value can thus vary from <NUM> V to <NUM> V in many instances due to combinations of the pull up and pull down levels.

<FIG> shows further details of the example state machine <NUM> implemented by the control circuit <NUM>. The control circuit <NUM> detects an exit of the low-power mode due to noise on the communication lines <NUM> or <NUM> or other false triggering alarm, and puts the port controller <NUM> back into the low-power mode without further action by the port manager <NUM>. In the DRP port mode during the first (NORMAL) power mode, the state machine <NUM> toggles between an unattached. SRC state <NUM> and an unattached. SNK state <NUM>. In the unattached. SRC state <NUM>, the USB port controller <NUM> connects a pull-up resistor RP1 to a configuration channel line <NUM> of the USB port connector <NUM> by closing a switch S4 in <FIG> and normal mode comparator circuitry (not shown) monitors a voltage of the configuration channel line <NUM> to detect connection of a power sinking USB device to the USB port connector <NUM>. In the unattached. SNK state <NUM>, the USB port controller <NUM> closes a switch S3 to connect a relatively low resistance pull-down resistor RD1 to the configuration channel line <NUM> and the normal mode comparator circuitry monitors the communication channel line <NUM> to detect connection of a power sourcing USB device to the USB port connector <NUM> indicated by the configuration channel line voltage transitioning above a threshold. The switches S3 and S4 are single pole double throw such that only one is closed at time. In one example, the normal mode circuitry is capable of detecting configuration channel voltages as low as <NUM> V.

In the DRP port mode during low power mode operation of the port controller <NUM>, the state machine <NUM> toggles between the unattached. SRC state <NUM> in which the USB port controller <NUM> applies a different pull-up resistor RP2 (or current source) and monitors the configuration channel line <NUM> and a Disabled state <NUM> in which the USB port controller <NUM> applies a different pull-down resistor RD2 and monitors the configuration channel line <NUM> to detect connection of a power sourcing USB device to the USB port connector <NUM>. The low power control circuit <NUM> in one example includes a switching circuit <NUM> with a first switch S1 closed during the Disabled state <NUM> to connect RD2 to the configuration channel line <NUM>. In this configuration, a first low-power comparator circuit <NUM> compares the voltage CC of the configuration channel line <NUM> with a threshold voltage of VTH2 and provides a signal WAKE2 at a comparator output <NUM> indicating that the CC voltage has exceeded the threshold VTH2 indicating connection of a USB device to the port <NUM>-<NUM>.

The low-power circuitry <NUM> in one example also includes a switch S2 that is selectively closed during the low power mode operation in the unattached. SRC state <NUM>. Closing the switch S2 connects a second pull-up resistor RP2 between a supply voltage V+ and the configuration channel line <NUM>, as well as a further low power comparator <NUM> that compares the CC line voltage to a third threshold voltage VTH3. In this operating condition, the comparator <NUM> provide a signal WAKE3 at an output <NUM> to indicate that the CC voltage has fallen below the threshold voltage VTH3 indicating connection of a device port <NUM>-<NUM>. Moreover, the port controller <NUM> continues to operate in the configured port mode (e.g., SOURCE, SINK or DRP) after switching from the second power mode to the first power mode. In this manner, the port controllers <NUM> reduce power consumption of the host system <NUM> and allow idled port controllers <NUM> to quickly return to low power mode when a false triggering event occurs on the communications bus <NUM>, <NUM> or on the configuration channel line <NUM>. If a power sinking USB device is attached to the port connector <NUM> while the port controller state machine <NUM> is in the unattached. SRC state <NUM>, the state machine <NUM> moves to an AttachWait. SRC state <NUM> and then continues to implement the state-machine <NUM>. While in the Disabled state <NUM>, the state-machine <NUM> transitions to the unattached. SNK state <NUM> if the voltage on the control channel line <NUM> rises above the detection threshold set by VTH2. When alternately closing S1 and S2 to switch between connecting RP and RD to the CC line <NUM>, the voltage on the configuration channel line <NUM> will change from high to low or low to high, and the comparator circuits will ignore this expected transition so that neither the WAKE2 or WAKE3 signals cause the port controller <NUM> to exit the low power operating mode during the transition.

In one example, the low power mode control circuit <NUM> switches operation of the port controller <NUM> from the first power mode for normal operation of the port controller <NUM>, to a second power mode for reduced power consumption by the port controller <NUM> in response to the communications interface circuit <NUM> receiving a command (e.g., an I2CIdle command) from the port manager circuit <NUM>. The control circuit <NUM> switches operation of the USB port controller <NUM> from the second power mode back to the first power mode in response to detected activity on the communications connection <NUM>, <NUM>, or a detected connection of a USB device to the USB port connector <NUM>. Also, if the low power mode exit was caused by detected communications connection activity, the control circuit <NUM> starts a timer <NUM> and automatically switches operation of the port controller <NUM> back to the second power mode if no communications transaction addressed to the USB port controller <NUM> is received within a non-zero certain time after switching from the second power mode to the first power mode (e.g., when the timer <NUM> expires). In this manner, if the port manager circuit <NUM> does not drive either a read or write transaction before the timer <NUM> expires, the port controller <NUM> returns to the low-power mode. This allows the circuit <NUM> to quickly return to low power operation, including situations in which the low power mode exit was caused by noise on the communications lines <NUM> or <NUM>, and the port manager <NUM> is not trying to communicate with the port controller(s) <NUM>. If an actual communications transaction was attempted by the port manager <NUM>, the low-power I2C mode port controller <NUM> detects a rising and/or falling edge on the clock line <NUM> and/or the data line <NUM> and resumes normal power mode operation within <NUM> to be able to process another read or write from the port manager circuit <NUM>.

The example port controller IC <NUM> of <FIG> also provides reduced power for monitoring the configuration channel line <NUM> during low power mode operation using dedicated low power detection circuits to detect communications or attachment events for which the controller <NUM> exits the second power mode. In one example, the low-power circuitry <NUM> includes one or more edge detector circuits that operate in the second (low) power mode to identify rising edges in voltages of the lines <NUM> (clock) and <NUM> (data). In the example of <FIG>, the low-power circuitry <NUM> includes a comparator <NUM> that compares a voltage of the serial clock line SCL with a threshold voltage VTH1 to detect the rising or falling edge of the serial clock line. The comparator circuit <NUM> includes an output <NUM> operative in the second power mode LP to provide a communication detection signal WAKE1 in response to a detected signal edge of the communications connection <NUM>, <NUM>. In response to the communication detection signal WAKE1 indicating the detected signal edge of the communications connection <NUM>, <NUM>, the control circuit <NUM> switches operation of the port controller <NUM> from the second power mode to the first power mode.

The port controller <NUM> also includes dedicated low power attachment or connection detection circuitry that remains powered in the second power mode. The comparator <NUM> compares the voltage CC of the configuration channel line <NUM> to the reference voltage VTH2 in order to detect connection of a USB device to the USB port connector <NUM>. The comparator output <NUM> provides a port connection detection signal WAKE2 in response to the voltage CC of the configuration channel line <NUM> exceeding the threshold voltage VTH2. The port controller <NUM> also includes a bias control circuit <NUM> with switching circuitry controlled by one or more control signals on a control connection <NUM> to selectively pull up or pull down (e.g., bias) the voltage CC on the configuration channel line <NUM>. In one example, the bias circuit <NUM> implements a single pole, double throw switch shown as switches S1 and S2 in <FIG> for the low power operating mode. The normal mode circuitry of the port controller <NUM> closes the switch S3 in the unattached. SNK state <NUM> of <FIG> during normal power mode operation to connect a <NUM> KQ resistor RD1 between the configuration channel line <NUM> and a circuit ground reference GND. A connecting USB source device with provide a current to the configuration channel line <NUM>, causing the CC line voltage to be approximately <NUM> V.

In the low power mode, the control circuit <NUM> closes the switch S1 to connect a much larger resistor RD2 (e.g., <NUM> KQ or more, such as <NUM> KΩ) between the configuration channel line <NUM> and GND. The pull-down resistor RD2 has a resistance higher than a pull-down resistance applied in the first power mode. This larger pull-down resistance RD2 is applied in certain examples when the port controller <NUM> operates in the SINK port mode or while in the Disabled state <NUM> during DRP port mode operation in the second power mode. The resistor RD2 preferably has a resistance value large enough so that the configuration channel line <NUM> appears open to a connected USB source that is applying a pull-up resistor Rp at the other end of a USB cable. In certain examples, the pull-down resistor RD2 has a resistance value large enough so that it is not detected by the sourcing USB device connected on the other end of the cable, and by which the CC line voltage remains above a voltage vOpen. The voltage vOpen depends upon the strength of the pull-up Rp, but can be <NUM>. 6V or <NUM>. 6V in certain examples. Also, the larger resistance of RD2 increases the configuration channel line voltage CC when a power sourcing USB device connects to the port connector <NUM>. This facilitates use of a low cost simple comparator <NUM> with a threshold comparison voltage VTH significantly higher than <NUM> volts during the low power mode, to allow accurate detection of actual device connection while reducing the likelihood of false detections caused by noise on the configuration channel line <NUM>. The control circuit <NUM> is configured to switch the port controller <NUM> from the second power mode to the first power mode in response to the port connection detection signal WAKE2 from the comparator <NUM> indicating the voltage CC of the configuration channel line <NUM> exceeding the threshold voltage VTH2 in response to connection of a USB device to the USB port connector <NUM>.

<FIG> and <FIG> illustrate a method <NUM> to operate a USB port controller, which can be implemented in the above described port controllers <NUM>. The method <NUM> begins at <NUM> in the first (NORMAL) power mode in <FIG>. At <NUM>, the port controller <NUM> operates in a configured source, sink or DRP port mode according to a port mode commanded by the port manager <NUM>. At <NUM>, for a configured source port mode, a pull-up resistor RP is connected to the configuration channel line <NUM> (e.g., by the control circuit <NUM> closing the third switch S3 in <FIG>) or by connecting a current source (not shown) to the line <NUM>. For a configured sink port mode at <NUM>, the port controller <NUM> connects the <NUM> KQ pull down resistor (RD1 in <FIG>) to the configuration channel line <NUM>. At <NUM>, for a configured dual role power port mode, the port controller <NUM> toggles between the unattached. SRC state <NUM> and the unattached. SNK state <NUM> in <FIG>. The control circuit <NUM> determines at <NUM> whether an I2CIdle command has been received from the port manager circuit <NUM>. If not (NO at <NUM>), the method <NUM> continues the normal power mode operation as described above at <NUM>-<NUM>.

If an I2CIdle command has been received from the port manager circuit <NUM> (YES at <NUM> in <FIG>), the method <NUM> continues in <FIG>, including switching operation to a second power mode at <NUM> for reduced power consumption by the port controller <NUM>. In the second power mode, the port controller <NUM> implements low power operation at <NUM>, <NUM> or <NUM> according to the previously configured port mode set by the port manager circuit <NUM>. At <NUM>, for the source port mode, the power circuit <NUM> delivers power to the power line <NUM> and the bias circuit <NUM> connects the <NUM> KΩ pull-up resistor RP1 (or a current source, not shown) to the configuration channel line <NUM> via the switch S4. For the sink port mode at <NUM>, the power circuit <NUM> receives power from the power line <NUM> and the bias circuit <NUM> connects a <NUM> KS2 pull-down resistor RD2 to the configuration channel line <NUM> via the switch S1 in <FIG>. For the DRP port mode at <NUM>, the power circuit <NUM> refrains from delivering power to, or receiving power from, the power line <NUM> pending connection of the USB device to the USB port connector <NUM>, and toggles between the unattached. SRC and Disabled states <NUM> and <NUM>, where the bias circuit <NUM> connects the <NUM> KQ pull-down resistor RD2 to the configuration channel line <NUM> via the switch S1 in the Disabled state <NUM>.

The control circuit <NUM> determines at <NUM> whether port connection activity or I2C communications activity have been detected. If not (NO at <NUM>), the process <NUM> continues in the second power mode at <NUM>-<NUM>. If communications activity is detected at <NUM>, the method <NUM> proceeds to <NUM> including returning to the first power mode and continuing the configured port mode operation. The control circuit <NUM> starts a timer at <NUM>, and determines at <NUM> whether an I2C packet is received with a matching address before the timer expires. If not (NO at <NUM>), the control circuit <NUM> returns the port controller <NUM> to the low power mode automatically at <NUM>, and the process returns to <NUM>-<NUM> using the configured port mode as described above. Otherwise (YES at <NUM>), the port controller <NUM> responds to the I2C message and continues normal power mode operation at <NUM>-<NUM> in <FIG> as described above.

If a port attachment or connection is detected at <NUM> (YES at <NUM>), the port controller <NUM> returns to the first power mode at <NUM> according to the same configured port mode, and the control circuit <NUM> alerts the port manager circuit <NUM>, such as by writing an appropriate flag bit in the alert register <NUM> in <FIG>. When exiting the low power mode at <NUM>, the port controller <NUM> remains in the last port mode (e.g., source/sink) that it was in when it detected a port connection. For example, if the port controller <NUM> was applying RP2 in the low-power mode, the port controller <NUM> connects RP1 in the normal mode and then disconnects RP2, so that a practically seamless transition occurs. The port controller <NUM> similarly switches from connection of RD2 in the low power mode to connection of RD <NUM> in transitioning to the normal power mode. The process <NUM> then returns to <NUM>-<NUM> in <FIG> for normal mode operation as described above.

Claim 1:
A universal serial bus, USB, port controller (<NUM>-<NUM>, <NUM>-<NUM>) for interfacing a USB device through a USB port connector (<NUM>-<NUM>, <NUM>-<NUM>), comprising:
a communications interface circuit to communicate with a port manager circuit (<NUM>) over a communications connection; and
a control circuit configured to:
switch operation of the USB port controller (<NUM>-<NUM>, <NUM>-<NUM>) from a first power mode for normal operation of the USB port controller, to a second power mode (LP) for reduced power consumption by the USB port controller, in response to the communications interface circuit receiving a command (I2CIdle) from the port manager circuit (<NUM>),
switch operation of the USB port controller (<NUM>-<NUM>, <NUM>-<NUM>) from the second power mode to the first power mode in response to (i) detected activity on the communications connection, or (ii) a detected connection of a USB device to the USB port connector (<NUM>-<NUM>, <NUM>-<NUM>), and characterized in that
after switching from the second power mode to the first power mode in response to detected activity on the communications connection, to automatically switch operation of the USB port controller (<NUM>-<NUM>, <NUM>-<NUM>) back to the second power mode unless a communications transaction addressed to the USB port controller is received within a non-zero time after switching from the second power mode to the first power mode.