e06114r0 Free Fall Feature Set To: T13 Technical committee From: Jim Hatfield Seagate Technology, Inc. 389 Disc Drive Longmont, CO 80503 Vox: 720-684-2120 Fax: 720-684-2722 Email: James.C.Hatfield@seagate.com Date: February 23, 2006 1 Introduction The purpose of this proposal is to define a standard feature set to detect, report and respond to free fall events. Change History: R0: Initial proposal Changes are proposed for these clauses of ATA8-ACS: ‘General Operational Requirements’ and these commands: DEVICE CONFIGURATION OVERLAY, IDENTIFY DEVICE, IDENTIFY PACKET DEVICE, SET FEATURES and SMART. 2 Free Fall Feature Set (to go in the ‘General Operational Requirements’ clause) This feature set is optional for both non-packet and packet devices. “Free fall” events may occur when a device is in motion. Some devices do not tolerate motion or shock very well, and this motion could cause catastrophic damage. This feature set defines a standard way for a free fall sensor (within a device) to work with a host in the presence of such events by defining how a device may report that it has the ability to detect and respond to these events how a host may enable and disable this feature set a method for the device to report that such an event has occurred how a device should respond to commands during and after a free fall event how a host may adjust the sensitivity of a particular device These commands are affected by this feature set: DEVICE CONFIGURATION OVERLAY, IDENTIFY DEVICE, IDENTIFY PACKET DEVICE, SET FEATURES and SMART. 2.1 Sensitivity Sensitivity is a very system-dependent quality, which may depend on the type of sensor, placement of the sensor within the device, other properties of the device, placement of the device within the host system, other properties of the host system, usage patterns of the end-user, etc. For these reasons, the actual definition of ‘sensitivity’ is not described in this document. Documentation and control of low-level parameters is left as a vendor-specific responsibility. However, within a given configuration, relative host-level control of gross sensitivity may be achieved through this feature set. February 23, 2006 page 1 of 5 Free Fall Feature Set 2.2 e06114r0 Delay Timer This feature set includes a programmable delay parameter. This is the minimum time to wait after detection of the free fall event before completing a command or reset processing (e.g. clearing BSY). This may cause some command completion time issues which the host system must be prepared to handle. 2.3 Setting and Reporting Configuration The feature set may be configured, enabled and disabled via the SET FEATURES command. Current configuration parameters may be obtained at any time via the IDENTIFY DEVICE or IDENTIFY PACKET DEVICE command. Support for this feature set may be disabled via the DEVICE CONFIGURATION OVERLAY command. 2.4 Reporting Event Occurrences A non-volatile SMART ‘attribute’ indicating the total number of free fall events detected over the lifetime of the device shall be updated for each detected free fall event. Attributes are not defined by T13. Attributes and threshholds are vendor-specific. 2.5 Reset Handling After a Power-on reset, the feature set is disabled by default. If a Power-on reset occurs after a free fall event was detected but before the delay expires, the drive shall ignore any prior event that may have been detected, and the device shall return to power-on defaults for this feature set. If a Hard Reset, Soft Reset, or Device Reset occurs after a free fall event was detected but before the delay expires, the drive shall respond as if a command had been sent. See clause 2.6. 2.6 Behavior after detecting a free fall event If a free fall event is detected during command or reset execution, or a command or reset is issued to the device between free fall event detection and the expiration of the programmable delay, the device shall determine if it is ‘safe’ to complete the command. If the device determines that it is not safe, it shall remain BSY for at least the programmable delay after the time that the device detected the fall. A device may detect additional free fall events before the delay timer expires. If another free fall event is detected before the delay timer expires, the delay shall be recalculated to be based on most recent detection time. During the event (i.e. from detection until the delay expires) a. the device shall keep BSY set to one if it is unsafe for the device to complete any necessary processing; b. the device may operate normally if it is safe to do so; c. the device may protect itself in a vendor-specific manner; d. the device shall update a non-volatile SMART attribute to indicate the total number of free fall events detected over the lifetime of the device. If no damage has occurred, then after the programmable delay expires, the device is expected to be in its pre-detection operational mode. February 23, 2006 page 2 of 5 Free Fall Feature Set 3 3.1 e06114r0 Command Changes IDENTIFY DEVICE / IDENTIFY PACKET DEVICE word TBD1 ‘supported features’ field A (1 bit) 1 = free fall feature set is supported word TBD2 ‘enabled features’ field B (1 bit) 1 = free fall feature set is enabled (This shall be cleared to zero if the feature set is not supported) word TBD3 ‘free fall feature set configuration’ bits 15:14 validity flag If the ‘free fall’ feature set is enabled, bit 15 shall be set to one bit 14 shall be cleared to zero bits 13:8 reserved bits 7:0 (8 bits) sensitivity level 00h the feature set is disabled, or is not supported 01h - FFh (actual meaning is vendor-specific, but the higher the number, the more sensitive is the device to detecting free fall events) word TBD4 ‘free fall feature set delay’ bits 15:0 configured value of the post-event wait time If the ‘free fall’ feature set is enabled (word TBD, field B), this word is valid; otherwise it is not valid. February 23, 2006 page 3 of 5 Free Fall Feature Set 3.2 3.2.1 e06114r0 DEVICE CONFIGURATION OVERLAY DCO IDENTIFY word TBD5, bit C (1 bit) 1 = reporting support for Free Fall feature set is allowed Word TBD5, bit C if set to one indicates that the device is allowed to report support for the Free Fall feature set. 3.2.2 DCO SET word TBD5, bit C (1 bit) 1 = reporting support for Free Fall feature set is allowed Word TBD5, bit C is cleared to zero to disable support for the Free Fall feature set and has the effect of clearing word TBD1 bit A to zero, and clearing word TBD2 bit B to zero, and clearing words TBD3 and TBD4 to zero in the IDENTIFY DEVICE or IDENTIFY PACKET DEVICE response. 3.3 3.3.1 SET FEATURES Enable/Disable Free Fall feature set Feature field = TBD6 ‘enable/disable free fall feature set’ Count field = sensitivity level 00h disable the feature set 01h - FFh enable the feature set, with the given sensitivity (actual meaning is vendor-specific, but the intention is that the higher the number, the more sensitive is the device to detecting free fall events) LBA Low = Post-event wait time (7:0) LBA Mid = Post-event wait time (15:8) LBA Hi = Reserved This command allows the host to configure parameters of the Free Fall feature set. If the Free Fall feature set is not supported, this command shall be aborted. The ‘sensitivity level’ is purely relative. The actual meanings of all non-zero values is vendor-specific, with the intention that increasing sensitivity level values imply greater sensitivity. When a non-zero sensitivity value is specified, the feature set is enabled, with the specified parameters. A subsequent IDENTIFY DEVICE (or IDENTIFY PACKET DEVICE) shall indicate word TBD2 bit B set to one, and words TBD3 and TBD4 updated to reflect the values selected here. A sensitivity value of 00h is used to disable the feature set. A subsequent IDENTIFY DEVICE or IDENTIFY PACKET DEVICE shall indicate: TBD2 bit B cleared to zero, and words TBD3 and TBD4 cleared to zero. The ‘Post-event wait time’ parameter indicates the minimum amount of time (in milliseconds) that the device is to wait after detecting that the free fall event began, before BSY it is allowed to be cleared . The range of this timer is 0 msec to 65.535 sec. February 23, 2006 page 4 of 5 Free Fall Feature Set 3.4 3.4.1 e06114r0 SMART READ DATA ‘attribute’ TBD6 value = lifetime number of free fall events detected threshhold = lifetime max number of free fall events allowed Note: T13 does not define any specific ‘attributes’. All attributes are defined outside of T13. Threshholds are vendor-specific. 3.4.2 RETURN STATUS (non-data transfer command) If a free fall event was detected, and attribute TBD6 has a “threshold exceeded” condition, then this command shall indicate that a ‘threshhold exceeded condition’ was detected by the device. February 23, 2006 page 5 of 5