IP Library Granted Patent US 8,176,304
Granted Patent B2
US 8,176,304 · App. 12/256,250 · Granted May 8, 2012

Mechanism for performing function level reset in an I/O device

Assignee: Oracle America, Inc.
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 8,176,304
App. No.
12/256,250
Granted
May 8, 2012
Kind
B2
Abstract

An I/O device having function level reset functionality includes a host interface that may include a master reset unit, a plurality of client interfaces, each corresponding to one or more functions, and a plurality of hardware resources. Each hardware resource may be associated with a respective function. In response to receiving a reset request to reset a specific function, the master reset unit may provide to each client interface, a request signal corresponding to the reset request, and a signal identifying the specific function. Each client interface having an association with the specific function may initiate a reset operation of the associated hardware resources, and also provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operations of the hardware resources. The master reset unit provides a reset done signal for the specific function to the host interface.

Claims (52)

1. An input/output (I/O) device comprising:

a host interface configured to provide an I/O connection to a host device, wherein the host interface includes:

a master reset unit;

a plurality of client interfaces, each corresponding to one or more functions;

a plurality of hardware resources coupled to the host interface, wherein each hardware resource is associated with a respective function of the one or more functions;

wherein in response to receiving from the host device one or more reset requests to reset a specific function, the master reset unit is configured to provide a request signal corresponding to the one or more reset requests, and a signal identifying the specific function, to each of the plurality of client interfaces;

wherein each client interface having an association with the specific function is configured to initiate a reset operation of each of the associated hardware resources and to provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operation of each of the associated hardware resources;

wherein the master reset unit is configured to provide a reset done signal for the specific function to the host interface; and

wherein each client interface having an association with the specific function is further configured to provide a client acknowledge signal and a signal identifying the specific function to the master reset unit in response to receiving each of one or more reset requests.

2. An input/output (I/O) device comprising:

a host interface configured to provide an I/O connection to a host device, wherein the host interface includes:

a master reset unit;

a plurality of client interfaces, each corresponding to one or more functions;

a plurality of hardware resources coupled to the host interface, wherein each hardware resource is associated with a respective function of the one or more functions;

wherein in response to receiving from the host device one or more reset requests to reset a specific function, the master reset unit is configured to provide a request signal corresponding to the one or more reset requests, and a signal identifying the specific function, to each of the plurality of client interfaces;

wherein each client interface having an association with the specific function is configured to initiate a reset operation of each of the associated hardware resources and to provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operation of each of the associated hardware resources;

wherein the master reset unit is configured to provide a reset done signal for the specific function to the host interface; and

wherein the master reset unit is further configured to provide a master done acknowledge signal and a signal identifying the specific function to each client that provided a client reset done signal to the master reset unit.

3. A system comprising:

a host device;

an input/output (I/O) device coupled to the host device via an I/O interconnect, wherein the I/O device includes:

a host interface configured to provide an I/O connection for the I/O interconnect, wherein the host interface includes:

a master reset unit;

a plurality of client interfaces, each corresponding to one or more functions;

a plurality of hardware resources coupled to the host interface, wherein each hardware resource is associated with a respective function of the one or more functions;

wherein in response to receiving from the host device one or more reset requests to reset a specific function, the master reset unit is configured to provide a request signal corresponding to the one or more reset requests, and a signal identifying the specific function, to each of the plurality of client interfaces;

wherein each client interface having an association with the specific function is configured to initiate a reset operation of each of the associated hardware resources and to provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operation of each of the associated hardware resources;

wherein the master reset unit is configured to provide a reset done signal for the specific function to the host interface; and

wherein each client interface is further configured to wait to send the client reset done signal to the master reset unit until each associated subclient interface completes reset operations initiated to each of the associated hardware resources.

4. A system comprising:

a host device;

an input/output (I/O) device coupled to the host device via an I/O interconnect, wherein the I/O device includes:

a host interface configured to provide an I/O connection for the I/O interconnect, wherein the host interface includes:

a master reset unit;

a plurality of client interfaces, each corresponding to one or more functions;

a plurality of hardware resources coupled to the host interface, wherein each hardware resource is associated with a respective function of the one or more functions;

wherein in response to receiving from the host device one or more reset requests to reset a specific function, the master reset unit is configured to provide a request signal corresponding to the one or more reset requests, and a signal identifying the specific function, to each of the plurality of client interfaces;

wherein each client interface having an association with the specific function is configured to initiate a reset operation of each of the associated hardware resources and to provide a client reset done signal for the specific function to the master reset unit in response to completion of the reset operation of each of the associated hardware resources;

wherein the master reset unit is configured to provide a reset done signal for the specific function to the host interface; and

wherein the master reset unit is configured to send a master reset acknowledge signal and the signal identifying the specific function to the host interface in response to receiving the reset request.

5. A method for resetting individual functions within an input/output (I/O) device, the method comprising:

receiving from a requester, a reset request for a specific function of a plurality of functions, wherein each function is associated with one or more respective hardware resources;

providing a request signal corresponding to the reset request, and providing a signal corresponding to the specific function, to each of a plurality of client interfaces, wherein each client interface corresponds to one or more of the plurality functions;

each client interface having an association with the specific function is configured to initiating a reset operation of each of the associated hardware resources, and providing a client reset done signal for the specific function in response to each of the associated hardware resources completing the reset operation;

providing a reset done signal for the specific function; and

providing a master done acknowledge signal and a signal identifying the specific function to each client that provided a client reset done signal.

6. A method for resetting individual functions within an input/output (I/O) device, the method comprising:

receiving from a requester, a reset request for a specific function of a plurality of functions, wherein each function is associated with one or more respective hardware resources;

providing a request signal corresponding to the reset request, and providing a signal corresponding to the specific function, to each of a plurality of client interfaces, wherein each client interface corresponds to one or more of the plurality functions;

each client interface having an association with the specific function is configured to initiating a reset operation of each of the associated hardware resources, and providing a client reset done signal for the specific function in response to each of the associated hardware resources completing the reset operation;

providing a reset done signal for the specific function; and

each client interface waiting to send the client reset done signal until each associated subclient completes reset operations initiated to each of the associated hardware resources.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0171 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2008
From: PURI, RAHOUL; SRINIVASAN, ARVIND; YEUNG, LOUISE Y.; DIGNUM, MARCELINO M.; WATKINS, JOHN E.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 021724/0706 →
Continuity (1)
Related Publication 20100100717A1 · Apr 22, 2010