IP Library Granted Patent US 7,117,288
Granted Patent B2
US 7,117,288 · App. 10/692,620 · Granted Oct 3, 2006

USB dynamic service switch for dual processor architecture

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,117,288
App. No.
10/692,620
Granted
Oct 3, 2006
Kind
B2
Abstract

USB bus enumeration and configuration switching in a dual-processor architected device can result in loss of the inter-processor communication link. In order to solve this problem, an apparatus, architecture and method for simplifying the Universal Serial Bus (USB) service enumeration between two processors in a dual-processor architecture device are provided. A USB host ( 102 ) is connected to a first processor ( 201 ) of the dual-processor device ( 100 ) via a USB cable ( 104 ). The first processor ( 201 ) begins to enumerate services to the connected host ( 102 ). When the host sends a set_configuration request ( 405 ) to the device ( 100 ), the device determines whether the first processor ( 201 ) and the second processor ( 203 ) have the same configuration sets. The first processor ( 201 ) sends a set_configuration request to the second processor ( 203 ) to setup the requested services in the second processor. If the configuration sets are different then the first processor ( 201 ) sends one or more set_interface requests to the second processor ( 203 ) in which each request turns on a specific service in response.

Claims (22)

1. A Universal Serial Bus device comprising:

a first processor configured as a Universal Serial Bus device to provide a first set of services to an external host; and

a second processor, coupled to said first processor as a Universal Serial Bus host and coupled to a Universal Serial Bus device connector suitable for connection to said external host, configured to provide a second set of services to said external host, and configured to pass service data bi-directionally between said first processor and said external host for said first set of services,

wherein said first processor is further configured to have a plurality of normally open logical service switches, wherein said first set of services are unavailable to said second processor during bus enumeration from said first processor to said second processor while inter-processor communication services continue between said first and second processors.

2. The Universal Serial Bus device of claim 1 , wherein:

wherein at least one of said plurality of normally open logical service switches will close with respect to at least one of said first set of services in response to a request by said second processor.

3. A Universal Serial Bus device comprising:

a first processor configured as a Universal Serial Bus device to provide a first set of services to an external host; and

a second processor, coupled to said first processor as a Universal Serial Bus host and coupled to a Universal Serial Bus device connector suitable for connection to said external host, configured to provide a second set of services to said external host, and configured to pass service data bi-directionally between said first processor and said external host for said first set of services,

wherein said second processor is further configured to respond to a set configuration request from said external host by comparing configuration sets of said first processor and said second processor, transmitting a set interface request to said first processor if said configuration sets are different, and transmitting a configuration request to said first processor if said configuration sets are identical.

4. A method of Universal Serial Bus enumeration by a Universal Serial Bus device having a first processor and a second processor comprising:

connecting a host to said Universal Serial Bus device;

receiving, from said host, a set configuration request;

determining that said first processor and said second processor have the same configuration sets;

transmitting, by said second processor, a set configuration request to said first processor for the configuration of said second processor; and

closing, by said first processor, a logical switch to connect services to said second processor in response to said configuration request.

5. A method of Universal Serial Bus enumeration by a Universal Serial Bus device having a first processor and a second processor comprising:

connecting a host to said Universal Serial Bus device;

receiving from said host a set configuration request;

determining that said first processor and said second processor have different configuration sets;

transmitting by said second processor at least one set interface request to said first processor; and

closing, by said first processor, at least one logical switch to connect at least one service to said second processor in response to said at least one set interface request.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2014
From: MOTOROLA MOBILITY LLC
To: GOOGLE TECHNOLOGY HOLDINGS LLC
Reel/Frame 034449/0001 →
CHANGE OF NAME Recorded Oct 2, 2012
From: MOTOROLA MOBILITY, INC.
To: MOTOROLA MOBILITY LLC
Reel/Frame 029216/0282 →