US 7,613,843 B1
Activity indicator for mass storage device
Kayalvizhi Dhandapani, Norcross, Ga. (US); and Shibu Abraham, Duluth, Ga. (US)
Assigned to American Megatrends, Inc., Norcross, Ga. (US)
Filed on Jan. 13, 2006, as Appl. No. 11/332,448.
Int. Cl. G06F 3/00 (2006.01); G06F 13/00 (2006.01)
U.S. Cl. 710—8  [710/15; 710/18] 18 Claims
OG exemplary drawing
 
1. A computer-implemented method for providing an activity indicator for a mass storage device, the computer-implemented method comprising computer-implemented operations for:
receiving enclosure management data from a host bus adapter;
decoding the enclosure management data to determine whether the enclosure management data indicates that the mass storage device is active;
determining whether the decoded enclosure management data indicates that the mass storage device is active;
in response to determining that the decoded enclosure management data indicates that the mass storage device is active, setting a protocol variable to indicate that the decoded enclosure management data indicates that the mass storage device is active;
in response to determining that the decoded enclosure management data does not indicate that the mass storage device is active, resetting the protocol variable to indicate that the decoded enclosure management data does not indicate that the mass storage device is active;
upon resetting the protocol variable, receiving a drive activity signal from the mass storage device;
determining from the drive activity signal whether the mass storage device is active by sampling the drive activity signal to determine whether the drive activity signal is toggled between a first state indicating that the mass storage device is not connected and a second state indicating that the mass storage device is identified, the drive activity signal being active if the drive activity signal is toggled;
in response to determining that the drive activity signal indicates that the mass storage device is active, setting a ready variable to indicate that the drive activity signal indicates that the mass storage device is active;
in response to determining that the drive activity signal does not indicate that the mass storage device is active, resetting the ready variable to indicate that the drive activity signal does not indicate that the mass storage device is active;
determining whether the protocol variable is set to indicate that the decoded enclosure management data indicates that the mass storage device is active;
in response to determining that the protocol variable is set to indicate that the decoded enclosure management data indicates that the mass storage device is active, providing the activity indicator;
in response to determining that the protocol variable is not set to indicate that the decoded enclosure management data indicates that the mass storage device is active, determining whether the ready variable is set to indicate that the drive activity signal indicates that the mass storage device is active; and
in response to determining that the ready variable is set to indicate that the drive activity signal indicates that the mass storage device is active, providing the activity indicator.