home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
S2R10_C.ZIP
/
S2R10C07.SI
< prev
next >
Wrap
Text File
|
1990-03-09
|
259KB
|
5,202 lines
.RR--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!--!
.RM 78
.PL 62
.LM 1
.RM 78
.MT3
.MB4
.HM1
.FM1
.PO10
.CW10
.SR2
.UJ0
.OJ0
.UL1
.heAll Device Types 3/9/90
.foSCSI-2 draft proposed American National Standard 7-# Revision 10c
.pn 1
.cp 30
.aw off
.pm 0
7. All Device Types
.aw on
.pm 3
.cp 20
.aw off
.pm 0
7.1. Model for All Device Types
.aw on
.pm 3
ááThi≤ mode∞ describe≤ somσ oµ thσ genera∞ characteristic≤ expecteΣ oµ mos⌠ ì
SCS╔ devices« I⌠ i≤ no⌠ intendeΣ t∩ definσ an∙ requirement≤ no≥ i≤ i⌠ ì
intendeΣ t∩ alte≥ an∙ requirement≤ defineΣ elsewherσ iε thi≤ standard« ì
Sectioε ╢ oµ thi≤ standarΣ als∩ contain≤ mode∞ informatioε pertaininτ t∩ al∞ ì
devicσ types.
.cp 5
.pm 0
.lm 1
.aw off
7.1.1. SCS╔ Addresses
.pm 3
.aw on
ááTherσ arσ tw∩ level≤ oµ addresse≤ withiε thσ SCS╔ architecture║ thσ SCS╔ ì
devicσ addres≤ anΣ thσ logica∞ uni⌠ numbe≥ o≥ targe⌠ routinσ number.
.cp 5
.pm 0
.lm 1
.aw off
7.1.1.1. SCS╔ Devicσ Address
.pm 3
.aw on
ááSCS╔ device≤ occup∙ (i.e.¼ responΣ to⌐ onσ addres≤ oε thσ SCS╔ bus« ì
Generall∙ thσ SCS╔ devicσ provide≤ ß mean≤ (e.g.¼ switches¼ jumpers⌐ t∩ selec⌠ ì
onσ oµ thσ eigh⌠ availablσ addresse≤ (░ througΦ 7)« Thi≤ addres≤ i≤ useΣ ì
durinτ bu≤ arbitratioε anΣ selectioε o≥ reselectioε oµ SCS╔ devices« EacΦ ì
devicσ oε thσ SCS╔ bu≤ i≤ assigneΣ aε uniquσ address.
ááNormally¼ thσ SCS╔ devicσ addres≤ i≤ se⌠ wheε thσ systeφ i≤ configureΣ anΣ ì
i⌠ remain≤ statiπ thereafter« Somσ system≤ anΣ device≤ providσ vendo≥-ì
specifiπ mean≤ t∩ alte≥ thi≤ addres≤ a⌠ othe≥ times.
.cp 5
.pm 0
.lm 1
.aw off
7.1.1.2. Logica∞ Units
.pm 3
.aw on
ááEacΦ targe⌠ ha≤ onσ o≥ morσ logica∞ units¼ beginninτ witΦ logica∞ uni⌠ zero« ì
Therσ i≤ ß maximuφ oµ eigh⌠ logica∞ units« Thesσ logica∞ unit≤ arσ usuall∙ ì
mappeΣ directl∙ t∩ periphera∞ devices¼ bu⌠ the∙ ma∙ bσ ß portioε oµ ß ì
periphera∞ devicσ o≥ ma∙ comprisσ multiplσ periphera∞ devices.
ááAε initiato≥ caε determinσ whethe≥ ß targe⌠ implement≤ ß logica∞ uni⌠ b∙ ì
issuinτ aε INQUIR┘ commanΣ anΣ examininτ thσ returneΣ periphera∞ qualifie≥ anΣ ì
periphera∞ devicσ type.
ááThσ concep⌠ oµ ß logica∞ uni⌠ i≤ no⌠ defineΣ fo≥ aε initiator« (Aε SCS╔ ì
devicσ ma∙ implemen⌠ botΦ thσ initiato≥ rolσ anΣ thσ targe⌠ role« Iε thi≤ ì
casσ logica∞ unit(s⌐ arσ defineΣ onl∙ fo≥ thσ targe⌠ role.)
.cp 5
.pm 0
.lm 1
.aw off
7.1.1.3. Targe⌠ Routines
.pm 3
.aw on
ááAε optiona∞ featurσ oµ thσ SCS╔ architecturσ permit≤ eacΦ targe⌠ t∩ havσ onσ ì
o≥ morσ targe⌠ routines¼ beginninτ witΦ targe⌠ routinσ numbe≥ zero« Therσ i≤ ì
ß maximuφ oµ eigh⌠ targe⌠ routines« Thesσ targe⌠ routine≤ arσ processe≤ tha⌠ ì
executσ directl∙ oε thσ targe⌠ anΣ arσ no⌠ associateΣ witΦ ß particula≥ ì
logica∞ uni⌠ o≥ periphera∞ device« Targe⌠ routine≤ arσ addresseΣ usinτ thσ ì
LUNTA╥ bi⌠ oµ thσ IDENTIF┘ messagσ (seσ 5.6.7).
ááTarge⌠ routine≤ arσ principall∙ intendeΣ t∩ returε informatioε abou⌠ thσ ì
targe⌠ anΣ thσ onl∙ valiΣ command≤ arσ INQUIR┘ anΣ REQUES╘ SENSE.
.cp 6è.pm 0
.lm 1
.aw off
7.1.2. CommanΣ≤ ImplementeΣ b∙ al∞ SCS╔ Devices
.pm 3
.aw on
ááThi≤ standarΣ define≤ fou≥ command≤ tha⌠ al∞ SCS╔-▓ target≤ implement║ ì
INQUIRY¼ REQUES╘ SENSE¼ SEN─ DIAGNOSTIC¼ anΣ TES╘ UNI╘ READY« Thesσ command≤ ì
arσ useΣ t∩ configurσ thσ system¼ t∩ tes⌠ targets¼ anΣ t∩ returε importan⌠ ì
informatioε concerninτ error≤ anΣ exceptioε conditions.
.cp 5
.pm 0
.lm 1
.aw off
7.1.2.1. Usinτ thσ INQUIRY Command
.pm 3
.aw on
ááThσ INQUIR┘ commanΣ ma∙ bσ useΣ b∙ ß systeφ t∩ determinσ thσ configuratioε ì
oµ thσ SCS╔ bus« Targe⌠ device≤ responΣ witΦ informatioε tha⌠ include≤ thei≥ ì
typσ anΣ standarΣ leve∞ anΣ ma∙ includσ thσ vendor'≤ identification¼ mode∞ ì
numbe≥ anΣ othe≥ usefu∞ information« I⌠ i≤ recommendeΣ tha⌠ SCS╔ target≤ bσ ì
capablσ oµ returninτ thi≤ informatioε (o≥ whateve≥ par⌠ oµ i⌠ tha⌠ i≤ ì
available⌐ upoε completinτ powe≥-oε initialization« Aε SCS╔ devicσ ma∙ takσ ì
longe≥ t∩ ge⌠ certaiε portion≤ oµ thi≤ information¼ especiall∙ iµ i⌠ retrieve≤ ì
thσ informatioε froφ thσ medium.
.cp 5
.pm 0
.lm 1
.aw off
7.1.2.2. Usinτ thσ REQUES╘ SENS┼ Command
.pm 3
.aw on
ááWheneve≥ ß contingen⌠ allegiancσ conditioε (6.6⌐ i≤ established¼ thσ ì
initiato≥ tha⌠ receiveΣ thσ erro≥ shoulΣ issuσ ß REQUES╘ SENS┼ commanΣ t∩ ì
receivσ thσ sensσ datß describinτ wha⌠ causeΣ thσ contingen⌠ allegiancσ ì
condition« Iµ thσ initiato≥ issue≤ somσ othe≥ command¼ thσ sensσ datß i≤ ì
lost.
.cp 5
.pm 0
.lm 1
.aw off
7.1.2.3. Usinτ thσ SEN─ DIAGNOSTIC Command
.pm 3
.aw on
ááThσ SEN─ DIAGNOSTI├ commanΣ provide≤ ß mean≤ t∩ reques⌠ thσ targe⌠ t∩ ì
perforφ ß selµ test« Whilσ thσ tes⌠ i≤ targe⌠ specific¼ thσ mean≤ oµ ì
requestinτ thσ tes⌠ i≤ standardizeΣ anΣ thσ responsσ i≤ simpl∙ GOO─ statu≤ iµ ì
al∞ i≤ wel∞ o≥ CHEC╦ CONDITIO╬ statu≤ iµ thσ tes⌠ fails.
ááThσ SEN─ DIAGNOSTI├ commanΣ als∩ provide≤ othe≥ powerfu∞ feature≤ wheε useΣ ì
iε conjunctioε witΦ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ command¼ bu⌠ thi≤ ì
capabilit∙ i≤ optional.
.cp 5
.pm 0
.lm 1
.aw off
7.1.2.4. Usinτ thσ TES╘ UNI╘ READY Command
.pm 3
.aw on
ááThσ TES╘ UNI╘ READ┘ commanΣ i≤ usefu∞ iε tha⌠ i⌠ allow≤ aε initiato≥ t∩ pol∞ ì
ß logica∞ uni⌠ unti∞ i⌠ i≤ read∙ withou⌠ thσ neeΣ t∩ allocatσ spacσ fo≥ ì
returneΣ data« I⌠ i≤ especiall∙ usefu∞ t∩ checδ cartridgσ statu≤ oµ logica∞ ì
unit≤ witΦ removablσ media« Target≤ arσ expecteΣ t∩ responΣ promptl∙ t∩ ì
indicatσ thσ curren⌠ statu≤ oµ thσ devicσ (i.e.¼ ß targe⌠ shoulΣ avoiΣ length∙ ì
disconnection≤ iε aε attemp⌠ t∩ responΣ witΦ GOO─ status)«
.cp 20è.aw off
.pm 0
7.2. Commands for All Device Types
.aw on
.pm 3
ááThσ operatioε code≤ fo≥ command≤ tha⌠ appl∙ t∩ al∞ devicσ type≤ arσ listeΣ ì
iε Tablσ ╖-1.
.aw off
.pm 0
.cp
Table 7-1: Commands for All Device Types
==============================================================================
Operation
Command Name Code Type Section
------------------------------------------------------------------------------
CHANGE DEFINITION 40h O 7.2.1
COMPARE 39h O 7.2.2
COPY 18h O 7.2.3
COPY AND VERIFY 3Ah ╧ 7.2.4
INQUIRY 12h M 7.2.5
LOG SELECT 4Ch O 7.2.6
LOG SENSE 4Dh O 7.2.7
MODE SELECT(6) 15h Z 7.2.8
MODE SELECT(10) 55h Z 7.2.9
MODE SENSE(6) 1Ah Z 7.2.10
MODE SENSE(10) 5Ah Z 7.2.11
READ BUFFER 3Ch O 7.2.12
RECEIVE DIAGNOSTIC RESULTS 1Ch O 7.2.13
REQUEST SENSE 03h M 7.2.14
SEND DIAGNOSTIC 1Dh O 7.2.15
TEST UNIT READY 00h M 7.2.16
WRITE BUFFER 3Bh O 7.2.17
==============================================================================
Key║ ═ ╜ CommanΣ implementatioε i≤ mandatory.
O ╜ CommanΣ implementatioε i≤ optional.
Z ╜ CommanΣ implementatioε i≤ devicσ typσ specific.
.aw on
.cp 35è.aw off
.pm 0
7.2.1. CHANGE DEFINITION Command
Table 7-2: CHANGE DEFINITION Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (40h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved |
-----|-----------------------------------------------------------------------|
2 | Reserved | Save |
-----|-----------------------------------------------------------------------|
3 |Reserved| Definition Parameter |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | Reserved |
-----|-----------------------------------------------------------------------|
7 | Reserved |
-----|-----------------------------------------------------------------------|
8 | Parameter Data Length |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.pm 3
.aw on
ááThσ CHANG┼ DEFINITIO╬ commanΣ (Tablσ ╖-2⌐ modifie≤ thσ operatinτ definitioε ì
oµ thσ selecteΣ logica∞ uni⌠ o≥ targe⌠ witΦ respec⌠ t∩ command≤ froφ thσ ì
selectinτ initiato≥ o≥ fo≥ al∞ initiators«
áá┴ savσ contro∞ bi⌠ (Save⌐ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ shal∞ no⌠ savσ ì
thσ operatinτ definition« ┴ Savσ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ shal∞ ì
savσ thσ operatinτ definitioε t∩ noε-volatilσ memory«
ááThσ definitioε paramete≥ fielΣ i≤ defineΣ iε Tablσ ╖-3.
.cp 12
.aw off
.pm 0
Table 7-3: Definition Parameter Field
=================================================
Value Meaning of Definition Parameter
----¡ --------------------------------------¡
00h Usσ Curren⌠ Operating Definitioε
01h SCSI-1 Operating Definition
02h CCS Operating Definition
03h SCSI-2 Operating Definition
04-3Fh Reserved
40-7Fh Vendo≥ Specific
=================================================
.aw on
.pm 3
è.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ curren⌠ operatinτ definitioε paramete≥ value≤ ì
ááestablisΦ operatinτ definition≤ compatiblσ witΦ thσ appropriatσ SCS╔ ì
ááspecification« Vendo≥-specifiπ value≤ arσ availablσ fo≥ thosσ application≤ ì
ááwherσ morσ comple° operatioε definitioε change≤ arσ required« Definition≤ ì
áásupporteΣ b∙ ß devicσ arσ returneΣ iε thσ implementeΣ operatinτ definitioε ì
áápagσ (seσ 7.3.4.3).
.lm 1
ááThσ paramete≥ datß lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
paramete≥ datß tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ target« ┴ ì
paramete≥ datß lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ datß shal∞ bσ transferred« ì
Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ aε error« Paramete≥ datß length≤ ì
greate≥ thaε zer∩ indicatσ thσ numbe≥ oµ byte≤ oµ paramete≥ datß tha⌠ shal∞ bσ ì
transferred.
ááThσ paramete≥ datß i≤ vendo≥ specific.
.lm3
ááIMPLEMENTOR╙ NOTE║ Thσ paramete≥ datß ma∙ bσ useΣ t∩ specif∙ ß passworΣ t∩ ì
áávalidatσ aε operatinτ definitioε change«
.lm1
ááThσ CHANG┼ DEFINITIO╬ commanΣ cause≤ onσ oµ thσ operatinτ definitioε ì
modification≤ listeΣ below:
áá(1⌐ Changσ thσ operatinτ definitioε oµ ß logica∞ uni⌠ relativσ t∩ thσ ì
initiato≥ tha⌠ issueΣ thσ command« Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ ì
maintaininτ aε uniquσ operatinτ definitioε fo≥ eacΦ logica∞ uni⌠ relativσ t∩ ì
eacΦ initiato≥ iε thσ system.
.cp 5
áá(2⌐ Changσ thσ operatinτ definitioε oµ thσ targe⌠ relativσ t∩ thσ initiato≥ ì
tha⌠ issueΣ thσ command« Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ maintaininτ ì
aε uniquσ operatinτ definition¼ fo≥ eacΦ initiato≥ iε thσ system¼ tha⌠ applie≤ ì
t∩ al∞ logica∞ unit≤ oµ thσ target.
.cp 5
áá(3⌐ Thσ operatinτ definitioε oµ ß logica∞ uni⌠ relativσ t∩ al∞ initiator≤ iε ì
thσ system« Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ maintaininτ aε uniquσ ì
operatinτ definitioε fo≥ eacΦ logica∞ uni⌠ relativσ t∩ al∞ initiator≤ iε thσ ì
system.
.cp 5
áá(4⌐ Thσ operatinτ definitioε oµ thσ targe⌠ relativσ t∩ al∞ initiator≤ iε thσ ì
system« Iε thi≤ case¼ thσ targe⌠ i≤ capablσ oµ maintaininτ onl∙ onσ operatinτ ì
definition.
.lm 3
ááIMPLEMENTOR╙ NOTE:
áá(1⌐ Thi≤ standarΣ doe≤ no⌠ providσ ß direc⌠ mean≤ t∩ determinσ whicΦ oµ thσ ì
ááabovσ fou≥ method≤ ha≤ beeε implementeΣ b∙ thσ target« Aε indirec⌠ mean≤ oµ ì
áádetermininτ whicΦ methoΣ i≤ implementeΣ exist≤ iε tha⌠ thσ targe⌠ i≤ ì
áárequireΣ t∩ inforφ affecteΣ initiator≤ oµ operatinτ definitioε change≤ viß ì
ááthσ uni⌠ attentioε condition«
áá(2⌐ Case≤ (3⌐ anΣ (4)¼ above¼ ma∙ resul⌠ iε incompatibilitie≤ iµ therσ arσ ì
ááothe≥ initiator≤ iε thσ systeφ operateΣ belo≈ thσ SCS╔-▓ level«
.lm 1
.cp 5
ááThσ operatinτ definitioε i≤ modifieΣ afte≥ successfu∞ completioε oµ thσ ì
command« ┴ targe⌠ shal∞ conside≥ thσ commanΣ successfull∙ completeΣ wheε i⌠ ì
detect≤ thσ assertioε oµ thσ AC╦ signa∞ fo≥ thσ COMMAN─ COMPLET┼ message« Thσ ì
initiato≥ shoulΣ verif∙ thσ ne≈ operatinτ definitioε b∙ issuinτ aε INQUIR┘ ì
commanΣ requestinτ thσ implementeΣ operatinτ definitioε pagσ (seσ Tablσ ╖-75)«
ááI⌠ i≤ permissiblσ fo≥ aε SCS╔-▓ devicσ tha⌠ ha≤ it≤ definitioε changeΣ t∩ aε ì
SCS╔-▒ devicσ t∩ accep⌠ ß CHANG┼ DEFINITIO╬ command.
è
.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ methoΣ oµ changinτ thσ operatinτ definitioε i≤ ì
ááimplementatioε dependent« Somσ implementation≤ ma∙ requirσ thσ target'≤ ì
ááoperatinτ modσ bσ rσ-initializeΣ a≤ iµ ß powe≥-u≡ o≥ harΣ-rese⌠ haΣ ì
ááoccurred« Othe≥ implementation≤ ma∙ modif∙ onl∙ thosσ operatinτ definition≤ ì
áátha⌠ arσ affecteΣ b∙ thσ CHANG┼ DEFINITIO╬ command.
.lm 1
ááIµ thσ CHANG┼ DEFINITIO╬ commanΣ i≤ no⌠ executeΣ successfull∙ fo≥ an∙ ì
reason¼ thσ operatinτ definitioε shal∞ remaiε thσ samσ a≤ i⌠ wa≤ beforσ thσ ì
CHANG┼ DEFINITIO╬ commanΣ wa≤ attempted« Iµ i⌠ i≤ impossiblσ t∩ returε t∩ thσ ì
previou≤ operatinτ definition¼ aε uni⌠ attentioε conditioε shal∞ bσ generateΣ ì
b∙ thσ target«
.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ presen⌠ operatinτ definitioε oµ thσ targe⌠ ma∙ ì
ááalway≤ bσ interrogateΣ througΦ thσ INQUIR┘ command« Wheε aε SCS╔-▓ targe⌠ ì
ááha≤ it≤ operatinτ definitioε changeΣ t∩ CC╙ o≥ SCS╔-1¼ certaiε change≤ arσ ì
ááneedeΣ t∩ promotσ compatibilit∙ witΦ prσ-existinτ SCS╔-▒ initiators« Thσ ì
áárecommendeΣ change≤ arσ a≤ follows:
áá(1⌐ Thσ targe⌠ shoulΣ no⌠ initiatσ selection≤ t∩ othe≥ SCS╔ device≤ t∩ ì
áádeterminσ iµ an∙ initiator≤ suppor⌠ AEN« Thσ targe⌠ shoulΣ assumσ tha⌠ nonσ ì
ááarσ capablσ oµ receivinτ AE╬ anΣ no⌠ issuσ aε AEN.
áá(2⌐ Thσ targe⌠ shoulΣ no⌠ generatσ extendeΣ contigen⌠ allegiancσ condition≤ ì
ááb∙ issuinτ aε INITIAT┼ RECOVER┘ message.
áá(3⌐ Iµ ß REQUES╘ SENS┼ commanΣ witΦ aε allocatioε lengtΦ oµ zer∩ i≤ ì
ááreceived¼ thσ targe⌠ shoulΣ returε fou≥ byte≤ oµ sensσ data.
áá(4⌐ Iµ aε INQUIR┘ commanΣ i≤ received¼ thσ returneΣ datß shoulΣ havσ ì
ááappropriatσ value≤ iε thσ ANS╔ versioε anΣ responsσ datß forma⌠ fields« Thσ ì
ááfeature≤ supporteΣ bit≤ shoulΣ bσ zero.
áá(5⌐ ┴ changσ iε thσ operatinτ definitioε ma∙ changσ thσ vendo≥ identifier¼ ì
ááthσ devicσ type¼ thσ devicσ model¼ thσ SCS╔ implementatioε level¼ thσ ì
áácommanΣ set¼ anΣ an∙ othe≥ operatinτ characteristics«
.lm1
ááAfte≥ ß powe≥-oε conditioε o≥ ß harΣ RESE╘ condition¼ thσ targe⌠ shal∞ se⌠ ì
it≤ initia∞ operatinτ definitioε t∩ thσ las⌠ saveΣ value¼ iµ savinτ i≤ ì
implemented¼ o≥ it≤ defaul⌠ value¼ iµ savinτ i≤ no⌠ implemented.
.cp 35è.aw 0
.pm 0
7.2.2. COMPARE Command
Table 7-4: COMPARE Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (39h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved | Pad |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
- - -|- - Parameter List Length - -|
5 | (LSB) |
-----|-----------------------------------------------------------------------|
6 | |
- - -|- - Reserved - -|
8 | |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.aw 1
.pm 3
ááThσ COMPAR┼ commanΣ (Tablσ ╖-4⌐ provide≤ thσ mean≤ t∩ comparσ datß froφ onσ ì
logica∞ uni⌠ witΦ anothe≥ o≥ thσ samσ logica∞ uni⌠ iε ß manne≥ simila≥ t∩ thσ ì
COP┘ command«
ááThi≤ commanΣ function≤ iε thσ samσ manne≥ a≤ thσ COP┘ command¼ excep⌠ tha⌠ ì
thσ datß froφ thσ sourcσ i≤ compareΣ oε ß bytσ-b∙-bytσ basi≤ witΦ thσ datß ì
froφ thσ destination« Thσ paramete≥ lis⌠ transferreΣ t∩ thσ targe⌠ i≤ thσ ì
samσ a≤ fo≥ thσ COP┘ command« Thi≤ paramete≥ lis⌠ contain≤ thσ informatioε t∩ ì
identif∙ thσ logica∞ unit≤ involveΣ iε thσ comparisoε anΣ thσ lengtΦ oµ thσ ì
comparison« (Seσ 7.2.│ fo≥ additiona∞ informatioε abou⌠ thσ COP┘ command.)
ááIµ thσ comparisoε i≤ unsuccessful¼ thσ commanΣ shal∞ bσ terminateΣ witΦ ì
CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ MISCOMPARE« Thσ ì
remaininτ field≤ iε thσ sensσ datß shal∞ bσ se⌠ a≤ documenteΣ iε thσ COP┘ ì
command.
.cp 35è.aw off
.pm 0
7.2.3. COPY Command
Table 7-5: COPY Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (18h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved | Pad |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
- - -|- - Parameter List Length - -|
4 | (LSB) |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ COP┘ commanΣ (Tablσ ╖-5⌐ provide≤ ß mean≤ t∩ cop∙ datß froφ onσ logica∞ ì
uni⌠ t∩ anothe≥ o≥ thσ samσ logica∞ unit« Thσ logica∞ uni⌠ tha⌠ receive≤ anΣ ì
perform≤ thσ COP┘ commanΣ i≤ calleΣ thσ cop∙ manager« Thσ cop∙ manage≥ i≤ ì
responsiblσ fo≥ copyinτ datß froφ ß logica∞ uni⌠ (sourcσ device⌐ t∩ ß logica∞ ì
uni⌠ (destinatioε device)« Thesσ logica∞ unit≤ ma∙ residσ oε differen⌠ SCS╔ ì
device≤ o≥ thσ samσ SCS╔ devicσ (iε fac⌠ al∞ threσ ma∙ bσ thσ samσ logica∞ ì
unit)« Somσ SCS╔ device≤ tha⌠ implemen⌠ thi≤ commanΣ ma∙ no⌠ suppor⌠ copie≤ ì
t∩ o≥ froφ anothe≥ SCS╔ device¼ o≥ ma∙ no⌠ suppor⌠ thirΣ part∙ copie≤ (i.e.¼ ì
botΦ thσ sourcσ anΣ thσ destinatioε logica∞ unit≤ residσ oε othe≥ SCS╔ ì
devices).
ááThσ paΣ bi⌠ (7.2.3.7⌐ i≤ useΣ iε conjunctioε witΦ thσ Ca⌠ bi⌠ (7.2.3.7⌐ iε ì
thσ segmen⌠ descriptor≤ t∩ definσ wha⌠ actioε shoulΣ bσ takeε wheε ß segmen⌠ ì
oµ thσ cop∙ doe≤ no⌠ fi⌠ exactl∙ int∩ aε intege≥ numbe≥ oµ destinatioε blocks«
ááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
parameter≤ tha⌠ shal∞ bσ sen⌠ durinτ thσ DAT┴ OU╘ phasσ oµ thσ command« ┴ ì
paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ datß shal∞ bσ transferred« ì
Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ aε error.
ááThσ COP┘ paramete≥ lis⌠ (Tablσ ╖-6⌐ begin≤ witΦ ß fou≥-bytσ heade≥ tha⌠ ì
contain≤ thσ COP┘ functioε codσ anΣ priority« Followinτ thσ heade≥ i≤ onσ o≥ ì
morσ segmen⌠ descriptors«
.cp 30è.aw off
.pm 0
Table 7-6: COPY Parameter List
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | COPY Function Code | Priority |
-----|-----------------------------------------------------------------------|
1 | Vendor Specific |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
==============================================================================
| Segment Descriptor(s) |
==============================================================================
0 - | Segment Descriptor 0 |
xx | (See specific table for length.) |
-----|-----------------------------------------------------------------------|
| . |
| . |
| . |
-----|-----------------------------------------------------------------------|
0 - | Segment Descriptor n |
xx | (See specific table for length.) |
==============================================================================
.aw on
.pm 3
ááThσ COP┘ functioε codσ fielΣ define≤ ß specifiπ forma⌠ fo≥ thσ segmen⌠ ì
descriptors« Thσ COP┘ functioε code≤ arσ defineΣ iε Tablσ ╖-7« ┴ targe⌠ neeΣ ì
no⌠ suppor⌠ al∞ functioε code≤ fo≥ it≤ devicσ type.
ááThσ priorit∙ fielΣ oµ thσ COP┘ paramete≥ lis⌠ establishe≤ thσ relativσ ì
priorit∙ oµ thi≤ COP┘ commanΣ t∩ othe≥ command≤ beinτ executeΣ b∙ thσ samσ ì
target« Al∞ othe≥ command≤ arσ assumeΣ t∩ havσ ß priorit∙ oµ 1« Priority░ ì
i≤ thσ highes⌠ priorit∙ witΦ increasinτ value≤ indicatinτ lowe≥ priorities.
ááThσ segmen⌠ descripto≥ format≤ arσ determineΣ b∙ thσ COP┘ functioε code« ì
Thσ segmen⌠ descripto≥ forma⌠ useΣ fo≥ blocδ device≤ (i.e.¼ writσ-once¼ C─-ì
ROM¼ optica∞-memory¼ anΣ direc⌠-acces≤ devices⌐ shal∞ bσ thσ same« Thσ ì
segmen⌠ descripto≥ forma⌠ useΣ fo≥ streaφ device≤ (i.e.¼ printer¼ processor¼ ì
communications¼ anΣ sequentia∞-acces≤ devices)¼ shal∞ bσ thσ same« Thu≤ ß ì
cop∙ operatioε froφ ß writσ-oncσ devicσ t∩ ß printe≥ devicσ use≤ thσ samσ ì
segmen⌠ descripto≥ forma⌠ a≤ ß cop∙ operatioε froφ ß direc⌠-acces≤ devicσ t∩ ß ì
sequentia∞-acces≤ devicσ (seσ Tablσ ╖-7)« Thσ segmen⌠ descripto≥ format≤ arσ ì
describeΣ iε Table≤ ╖-╕ througΦ ╖-11« ┴ maximuφ oµ 25╢ segmen⌠ descriptor≤ ì
arσ permitted« Thσ segmen⌠ descriptor≤ arσ identifieΣ b∙ ascendinτ number≤ ì
beginninτ witΦ zero.
.cp18è.aw off
.pm 0
Table 7-7: COPY Function Codes
==============================================================================
Peripheral Device Type COPY Segmen⌠
---------------------- Function Descriptor
Source Destination Code Table Comment≤
------------------------------------------------------------------------------
Blocδ Devices Streaφ Device≤ 0 7-8
(Devicσ type≤ 0,4,5,7) (Devicσ type≤ 1,2,3,9)
Streaφ Device≤ Blocδ Devices 1 7-8 (Notσ 3⌐
(Devicσ type≤ 1,3,9) (Devicσ type≤ 0,4,5,7)
Blocδ Devices Blocδ Device≤ 2 7-9 (Notσ 3⌐
(Devicσ type≤ 0,4,5,7⌐ (Devicσ type≤ 0,4,5,7)
Streaφ Device≤ Streaφ Device≤ 3 7-10
(Devicσ type≤ 1,3,9) (Devicσ type≤ 1,2,3,9)
Sequential-Access Sequential-Access 4 7-11 Image Copy
(Devicσ type 1) (Devicσ type 1)
==============================================================================
.aw on
.pm 3
.lm 3
.pm 3
ááNOTES:
áá(1⌐ COP┘ functioε code≤ 05Φ ¡ 0FΦ arσ reserved.
áá(2⌐ COP┘ functioε code≤ 10Φ ¡ 1FΦ arσ vendo≥ specific.
áá(3⌐ Wheε usinτ thσ COMPAR┼ commanΣ thσ destinatioε blocδ devicσ ma∙ bσ ß C─-ì
ááRO═ devicσ o≥ aε optica∞-memor∙ devicσ tha⌠ use≤ reaΣ-onl∙ media«
.lm 1
.pm 3
.cp 10
.aw off
.pm 0
7.2.3.1. Errors Detected by the Managing SCSI Device
.pm 3
.aw on
ááTw∩ classe≤ oµ exceptioε condition≤ ma∙ occu≥ durinτ executioε oµ ß COP┘ ì
command« Thσ firs⌠ clas≤ consist≤ oµ thosσ exceptioε condition≤ detecteΣ b∙ ì
thσ SCS╔ devicσ tha⌠ receiveΣ thσ COP┘ commanΣ anΣ i≤ managinτ thσ executioε ì
oµ thσ command« Thesσ condition≤ includσ parit∙ error≤ whilσ transferrinτ thσ ì
COP┘ commanΣ anΣ statu≤ byte¼ invaliΣ parameter≤ iε thσ COP┘ command¼ invaliΣ ì
segmen⌠ descriptors¼ anΣ inabilit∙ oµ thσ SCS╔ devicσ controllinτ thσ COP┘ ì
function≤ t∩ continuσ operating« Iε thσ even⌠ oµ sucΦ aε exceptioε condition¼ ì
thσ SCS╔ devicσ managinτ thσ COP┘ shall:
áá(1⌐ Terminatσ thσ COP┘ commanΣ witΦ CHEC╦ CONDITIO╬ status.
áá(2⌐ Thσ valiΣ bi⌠ iε thσ sensσ datß shal∞ bσ se⌠ t∩ one« Thσ segmen⌠ numbe≥ ì
shal∞ contaiε thσ numbe≥ oµ thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ ì
thσ exceptioε conditioε i≤ detected« Thσ sensσ ke∙ shal∞ contaiε thσ sensσ ì
ke∙ codσ describinτ thσ exceptioε conditioε (i.e.¼ no⌠ COP┘ ABORTED)« Thσ ì
informatioε fielΣ shal∞ contaiε thσ differencσ betweeε thσ numbe≥ oµ block≤ ì
fielΣ iε thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ oµ thσ failurσ anΣ ì
thσ numbe≥ oµ block≤ successfull∙ copied« Thi≤ numbe≥ i≤ thσ residuσ oµ ì
unprocesseΣ block≤ remaininτ fo≥ thσ segmen⌠ descriptor.
.cp7
.aw off
.pm 0
7.2.3.2. Errors Detected by a Target
.pm 3
.aw on
ááThσ seconΣ clas≤ oµ error≤ consist≤ oµ exceptioε condition≤ detecteΣ b∙ thσ ì
SCS╔ devicσ transferrinτ datß a⌠ thσ reques⌠ oµ thσ SCS╔ devicσ managinτ thσ ì
transfer« Thσ SCS╔ devicσ managinτ thσ COP┘ commanΣ detect≤ exceptioε ì
condition≤ b∙ receivinτ CHEC╦ CONDITIO╬ statu≤ froφ onσ oµ thσ SCS╔ device≤ i⌠ ì
i≤ managing« I⌠ theε shal∞ recove≥ thσ sensσ datß associateΣ witΦ thσ ì
exceptioε condition.
.cp 4èááThσ SCS╔ devicσ managinτ thσ COP┘ commanΣ ma∙ als∩ bσ thσ sourcσ o≥ ì
destinatioε SCS╔ devicσ (o≥ both)« I⌠ shal∞ distinguisΦ betweeε ß failurσ oµ ì
thσ managemen⌠ oµ thσ COP┘ anΣ ß failurσ oµ thσ datß transfe≥ beinτ requested« ì
I⌠ shal∞ theε creatσ thσ appropriatσ sensσ datß internally.
.cp 10
ááAfte≥ recoverinτ thσ sensσ datß associateΣ witΦ thσ detecteΣ error¼ thσ SCS╔ ì
devicσ managinτ thσ COP┘ commanΣ shall:
áá(1⌐ Terminatσ thσ COP┘ commanΣ witΦ CHEC╦ CONDITIO╬ status.
áá(2⌐ Thσ valiΣ bi⌠ iε thσ sensσ datß shal∞ bσ se⌠ t∩ one« Thσ segmen⌠ numbe≥ ì
shal∞ contaiε thσ numbe≥ oµ thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ ì
thσ exceptioε conditioε i≤ detected« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ COP┘ ì
ABORTED« Thσ informatioε fielΣ shal∞ contaiε thσ differencσ betweeε thσ ì
numbe≥ oµ block≤ fielΣ iε thσ segmen⌠ descripto≥ beinτ processeΣ a⌠ thσ timσ ì
oµ thσ failurσ anΣ thσ numbe≥ oµ block≤ successfull∙ copied« Thi≤ numbe≥ i≤ ì
thσ residuσ oµ unprocesseΣ block≤ remaininτ fo≥ thσ segmen⌠ descriptor.
ááThσ firs⌠ bytσ oµ thσ commanΣ-specifiπ informatioε fielΣ shal∞ specif∙ thσ ì
startinτ bytσ number¼ relativσ t∩ thσ firs⌠ bytσ oµ sensσ data¼ oµ aε areß ì
tha⌠ contain≤ (unchanged⌐ thσ sourcσ logica∞ unit'≤ statu≤ bytσ anΣ sensσ ì
data« ┴ zer∩ valuσ indicate≤ tha⌠ n∩ statu≤ bytσ o≥ sensσ datß i≤ beinτ ì
returneΣ fo≥ thσ sourcσ logica∞ unit.
ááThσ seconΣ bytσ oµ thσ commanΣ-specifiπ informatioε fielΣ shal∞ specif∙ thσ ì
startinτ bytσ number¼ relativσ t∩ thσ firs⌠ bytσ oµ sensσ data¼ oµ aε areß ì
tha⌠ contain≤ (unchanged⌐ thσ destinatioε logica∞ unit'≤ statu≤ bytσ anΣ sensσ ì
data« ┴ zer∩ valuσ indicate≤ tha⌠ n∩ statu≤ bytσ o≥ sensσ datß i≤ beinτ ì
returneΣ fo≥ thσ destinatioε logica∞ unit.
.aw off
.pm 0
7.2.3.3. COPY Function Code 00h and 01h
.pm 3
.aw on
ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ COP┘ transfer≤ betweeε blocδ anΣ ì
streaφ device≤ i≤ specifieΣ iε Tablσ ╖-8« Thi≤ forma⌠ i≤ requireΣ fo≥ COP┘ ì
functioε code≤ 00Φ o≥ 01h« Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ ì
time≤ withiε thσ paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ ì
block.
.cp 22è.aw off
.pm 0
Table 7-8: Segment Descriptor for COPY Function Codes 00h and 01h
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Source Address |Reserved| Cat | Source LUN |
-----|-----------------------------------------------------------------------|
1 | Destination Address | Reserved | Destination LUN |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
-----|--- Stream Device Blocδ Length ---|
3 | (LSB) |
-----|-----------------------------------------------------------------------|
4 | (MSB) |
- - -|- - Block Device Number of Blocks - -|
7 | (LSB) |
-----|-----------------------------------------------------------------------|
8 | (MSB) |
- - -|- - Block Device Logical Block Address - -|
11 | (LSB) |
==============================================================================
.aw on
.pm 3
.cp 10
ááThσ sourcσ addres≤ anΣ sourcσ LU╬ field≤ specif∙ thσ SCS╔ bu≤ I─ anΣ logica∞ ì
uni⌠ oµ thσ devicσ t∩ cop∙ thσ datß froφ fo≥ thi≤ segmen⌠ oµ thσ COP┘ command« ì
Thσ destinatioε addres≤ anΣ destinatioε LU╬ field≤ specif∙ thσ SCS╔ bu≤ I─ anΣ ì
logica∞ uni⌠ t∩ cop∙ thσ datß t∩ fo≥ thi≤ segmen⌠ oµ thσ COP┘ command« Somσ ì
SCS╔ device≤ ma∙ no⌠ suppor⌠ thirΣ-part∙ COP┘ iε whicΦ thσ copyinτ SCS╔ devicσ ì
i≤ no⌠ thσ sourcσ o≥ destinatioε device« Somσ SCS╔ device≤ onl∙ suppor⌠ COP┘ ì
withiε thσ SCS╔ devicσ anΣ no⌠ t∩ othe≥ SCS╔ devices« Iµ aε unsupporteΣ COP┘ ì
operatioε i≤ requested¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ ì
statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ ì
sensσ codσ oµ INVALI─ FIEL─ I╬ PARAMETE╥ LIS╘ (seσ 7.2.3.1).
áá┴ catenatσ (Cat⌐ bi⌠ (optional⌐ oµ onσ indicate≤ tha⌠ thσ COP┘ manage≥ shal∞ ì
catenatσ thσ las⌠ sourcσ blocδ oµ ß segmen⌠ witΦ thσ firs⌠ sourcσ blocδ oµ thσ ì
nex⌠ segmen⌠ iµ thσ las⌠ sourcσ blocδ doe≤ no⌠ enΣ exactl∙ a⌠ thσ enΣ oµ thσ ì
destinatioε block« Thσ definitioε oµ ß ca⌠ bi⌠ oµ zer∩ depend≤ oε thσ settinτ ì
oµ thσ paΣ bi⌠ iε thσ commanΣ descripto≥ blocδ (seσ 7.2.3.7).
ááThσ streaφ devicσ blocδ-lengtΦ fielΣ specifie≤ thσ blocδ lengtΦ t∩ bσ useΣ ì
oε thσ streaφ devicσ logica∞ uni⌠ durinτ thi≤ segmen⌠ oµ thσ COP┘ command« Iµ ì
thσ SCS╔ devicσ managinτ thσ COP┘ know≤ thi≤ blocδ lengtΦ i≤ no⌠ supported¼ ì
thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ ì
shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ ì
I╬ PARAMETE╥ LIS╘ « Iµ thσ blocδ lengtΦ i≤ founΣ t∩ bσ invaliΣ whilσ executinτ ì
ß reaΣ o≥ writσ operatioε t∩ thσ streaφ device¼ thσ commanΣ shal∞ bσ ì
terminateΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ COP┘ ì
ABORTE─ (seσ 7.2.3.2).
.cp5èááThσ blocδ devicσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ block≤ iε ì
thσ curren⌠ segmen⌠ t∩ bσ copied« ┴ valuσ oµ zer∩ indicate≤ tha⌠ n∩ block≤ ì
shal∞ bσ transferreΣ iε thi≤ segment.
ááThσ blocδ devicσ logica∞ blocδ addres≤ fielΣ specifie≤ thσ startinτ logica∞ ì
blocδ addres≤ oε thσ logica∞ uni⌠ fo≥ thi≤ segment.
.cp 10
.aw off
.pm 0
7.2.3.4. COPY Function Code 02h
.pm 3
.aw on
ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ COP┘ transfer≤ amonτ blocδ ì
device≤ i≤ specifieΣ iε Tablσ ╖-9« Thi≤ forma⌠ i≤ requireΣ fo≥ COP┘ functioε ì
codσ 02h« Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ time≤ withiε thσ ì
paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ block.
.cp 27
.aw off
.pm 0
Table 7-9: Segment Descriptor for COPY Function Code 02h
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Source Address | DC | Cat | Source LUN |
-----|-----------------------------------------------------------------------|
1 | Destination Address | Reserved | Destination LUN |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | (MSB) |
- - -|- - Number of Blocks - -|
7 | (LSB) |
-----|-----------------------------------------------------------------------|
8 | (MSB) |
- - -|- - Source Logical Block Address - -|
11 | (LSB) |
-----|-----------------------------------------------------------------------|
12 | (MSB) |
- - -|- - Destination Logical Block Address - -|
15 | (LSB) |
==============================================================================
.aw on
.pm 3
ááSeσ 7.2.3.│ fo≥ definition≤ oµ thσ sourcσ address¼ thσ sourcσ LUN¼ thσ ì
destinatioε address¼ thσ destinatioε LUN¼ anΣ CA╘ fields.
.cp 3
áá┴ destinatioε coun⌠ (DC⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ numbe≥ oµ block≤ ì
fielΣ refer≤ t∩ thσ sourcσ logica∞ unit« ┴ D├ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
numbe≥ oµ block≤ fielΣ refer≤ t∩ thσ destinatioε logica∞ unit«
.cp 3
ááThσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ block≤ t∩ bσ transferreΣ ì
t∩ o≥ froφ (dependinτ oε thσ D├ bit⌐ thσ blocδ devicσ durinτ thi≤ segment« ┴ ì
valuσ oµ zer∩ indicate≤ tha⌠ n∩ block≤ shal∞ bσ transferred.
ááThσ sourcσ logica∞ blocδ addres≤ fielΣ specifie≤ thσ startinτ logica∞ blocδ ì
addres≤ oε thσ sourcσ blocδ device«
è.cp2
ááThσ destinatioε logica∞ blocδ addres≤ fielΣ specifie≤ thσ startinτ logica∞ ì
blocδ addres≤ oε thσ destinatioε blocδ device.
.aw off
.pm 0
7.2.3.5. COPY Function Code 03h
.aw on
.pm 3
ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ COP┘ transfer≤ amonτ streaφ ì
device≤ i≤ specifieΣ b∙ Tablσ ╖-10« Thi≤ forma⌠ i≤ requireΣ fo≥ COP┘ functioε ì
codσ 03h« Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ time≤ withiε thσ ì
paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ block.
.cp 27
.aw off
.pm 0
Table 7-10: Segment Descriptor for COPY Function Code 03h
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Source Address | DC | Cat | Source LUN |
-----|-----------------------------------------------------------------------|
1 | Destination Address | Reserved | Destination LUN |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | (MSB) |
-----|--- Source Block Length ---|
5 | (LSB) |
-----|-----------------------------------------------------------------------|
6 | (MSB) |
-----|--- Destination Block Length ---|
7 | (LSB) |
-----|-----------------------------------------------------------------------|
8 | (MSB) |
- - -|- - Number of Blocks - -|
11 | (LSB) |
==============================================================================
.aw on
.pm 3
ááSeσ 7.2.3.│ fo≥ definition≤ oµ thσ sourcσ address¼ thσ sourcσ LUN¼ thσ ì
destinatioε address¼ thσ destinatioε LUN¼ anΣ CA╘ fields.
áá┴ destinatioε coun⌠ (DC⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ numbe≥ oµ block≤ ì
fielΣ refer≤ t∩ thσ sourcσ logica∞ unit« ┴ D├ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
numbe≥ oµ block≤ fielΣ refer≤ t∩ thσ destinatioε logica∞ unit«
ááThσ sourcσ blocδ lengtΦ fielΣ specifie≤ thσ blocδ-lengtΦ oµ thσ sourcσ ì
devicσ fo≥ thi≤ segmen⌠ oµ thσ COPY« ┴ zer∩ iε thi≤ fielΣ indicate≤ variablσ ì
blocδ-length« Fo≥ noε-zer∩ values¼ thi≤ fielΣ shal∞ matcΦ thσ logica∞ unit'≤ ì
actua∞ blocδ-length«
ááIµ blocδ-lengtΦ mismatche≤ arσ detecteΣ prio≥ t∩ thσ beginninτ oµ thσ reaΣ ì
operatioε b∙ thσ SCS╔ devicσ managinτ thσ COPY¼ thσ commanΣ shal∞ bσ ì
terminateΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
PARAMETE╥ LIS╘ (seσ 7.2.3.1)«
è.cp 4
ááIµ thσ mismatche≤ arσ detecteΣ durinτ thσ reaΣ operatioε b∙ thσ COP┘ ì
manager¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ status« Thσ ì
sensσ ke∙ shal∞ bσ se⌠ t∩ COP┘ ABORTE─ (seσ 7.2.3.2)« anΣ thσ additiona∞ ì
sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
.cp 4
ááThσ destinatioε blocδ-lengtΦ fielΣ specifie≤ thσ blocδ lengtΦ t∩ bσ useΣ oε ì
thσ destinatioε logica∞ uni⌠ durinτ thσ COPY« Destinatioε blocδ lengtΦ ì
mismatche≤ arσ handleΣ iε aε analogou≤ manne≥ a≤ sourcσ blocδ lengtΦ ì
mismatches.
.cp 3
ááThσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ block≤ t∩ bσ transferreΣ ì
t∩ o≥ froφ (dependinτ oε thσ D├ bit⌐ thσ devicσ durinτ thi≤ segment« ┴ valuσ ì
oµ zer∩ indicate≤ tha⌠ n∩ block≤ shal∞ bσ transferred.
.aw off
.pm 0
7.2.3.6. COPY Function Code 04h
.aw on
.pm 3
ááThσ forma⌠ fo≥ thσ segmen⌠ descriptor≤ fo≥ imagσ COP┘ transfer≤ betweeε ì
sequentia∞-acces≤ device≤ i≤ specifieΣ iε Tablσ ╖-11« Thi≤ forma⌠ i≤ requireΣ ì
fo≥ COP┘ functioε codσ 04h« Thσ segmen⌠ descripto≥ ma∙ bσ repeateΣ u≡ t∩ 25╢ ì
time≤ withiε thσ paramete≥ lis⌠ lengtΦ specifieΣ iε thσ commanΣ descripto≥ ì
block.
.cp 32
.aw off
.pm 0
Table 7-11: Segment Descriptor for COPY Function Code 04h
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Source Address | Reserved | Source LUN |
-----|-----------------------------------------------------------------------|
1 | Destination Address | Reserved | Destination LUN |
-----|-----------------------------------------------------------------------|
2 | Count |
-----|-----------------------------------------------------------------------|
3 | |
- - -|- - Reserved - -|
7 | |
-----|-----------------------------------------------------------------------|
8 | |
- - -|- - Vendor Specific - -|
11 | |
==============================================================================
.aw on
.pm 3
ááSeσ 7.2.3.│ fo≥ definition≤ oµ thσ sourcσ address¼ thσ sourcσ LUN¼ thσ ì
destinatioε address¼ thσ destinatioε LUN¼ anΣ CA╘ fields.
.cp 11èááThσ imagσ modσ COP┘ commanΣ copie≤ aε exac⌠ imagσ oµ thσ sourcσ devicσ ì
mediuφ t∩ thσ destinatioε devicσ medium¼ beginninτ a⌠ thei≥ curren⌠ positions« ì
Thσ cop∙ functioε terminate≤ wheε thσ sourcσ device:
áá(1⌐ encounter≤ aε enΣ-oµ-partitioε a≤ defineΣ b∙ thσ sourcσ device
áá(2⌐ encounter≤ aε enΣ-oµ-datß a≤ defineΣ b∙ thσ sourcσ devicσ (i.e.¼ BLAN╦ ì
CHEC╦ sensσ key)
áá(3⌐ ha≤ copieΣ thσ numbe≥ oµ consecutivσ filemark≤ specifieΣ iε thσ coun⌠ ì
fielΣ froφ thσ sourcσ devicσ t∩ thσ destinatioε device
áá(4⌐ ha≤ copieΣ thσ numbe≥ oµ consecutivσ setmark≤ specifieΣ iε thσ coun⌠ ì
fielΣ froφ thσ sourcσ devicσ t∩ thσ destinatioε device¼ iµ thσ RSmδ bi⌠ iε thσ ì
devicσ configuratioε pagσ (seσ 9.3.3.1⌐ i≤ one«
.cp 6
áá┴ coun⌠ fielΣ oµ zer∩ indicate≤ tha⌠ thσ COP┘ commanΣ shal∞ no⌠ terminatσ ì
duσ t∩ an∙ numbe≥ oµ consecutivσ filemark≤ o≥ setmarks« Othe≥ erro≥ o≥ ì
exceptioε condition≤ (e.g.¼ earl∙-warninτ enΣ-oµ-partitioε oε thσ destinatioε ì
device⌐ ma∙ causσ thσ COP┘ commanΣ t∩ terminatσ prio≥ t∩ completion« Iε sucΦ ì
cases¼ i⌠ i≤ no⌠ possiblσ t∩ calculatσ ß residue¼ s∩ thσ informatioε fielΣ iε ì
thσ sensσ datß shal∞ bσ se⌠ t∩ zero.
.cp 7
.aw off
.pm 0
7.2.3.7. Copie≤ WitΦ Unequa∞ Blocδ Lengths
.aw on
.pm 3
ááWheε copyinτ datß betweeε tw∩ device≤ witΦ unequa∞ blocδ lengths¼ i⌠ i≤ ì
possiblσ fo≥ thσ las⌠ sourcσ blocδ t∩ no⌠ completel∙ fil∞ thσ las⌠ destinatioε ì
blocδ fo≥ onσ o≥ morσ segment≤ iε thσ COP┘ command« Tw∩ optiona∞ bit≤ arσ ì
defineΣ t∩ assis⌠ iε controllinτ thσ cop∙ manager'≤ action≤ iε thi≤ ì
circumstance« Thσ PaΣ bi⌠ (iε thσ commanΣ descripto≥ block⌐ anΣ thσ Ca⌠ bi⌠ ì
(iε eacΦ applicablσ segmen⌠ descriptor⌐ arσ defineΣ iε Tablσ ╖-12.
.cp18
.aw off
.pm 0
.cp
Table 7-12: Pad and Cat Bit Definition
==============================================================================
Pad Cat COPY Manager's Action
---- ---- -------------------------------------------------------------------
.aw on
.pm 3
.lm 12
áá0 0 Oε inexac⌠ segments¼ i⌠ i≤ devicσ specifiπ whethe≥ thσ COP┘ manage≥ ì
áááááááááááreject≤ thσ COP┘ commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ ILLEGA╠ ì
áááááááááááREQUES╘ sensσ key¼ thσ COP┘ manage≥ write≤ o≥ accept≤ shor⌠ block≤ ì
ááááááááááá(variablσ-blocδ modσ oε sequentia∞-acces≤ devices)¼ o≥ thσ COP┘ ì
ááááááááááámanage≥ add≤ paΣ character≤ (00h⌐ t∩ thσ destinatioε blocδ o≥ ì
ááááááááááástrip≤ paΣ character≤ froφ thσ sourcσ block.
áá1 0 Oε inexac⌠ segments¼ thσ COP┘ manage≥ shal∞ adΣ paΣ character≤ ì
ááááááááááá(00h⌐ t∩ thσ destinatioε blocδ t∩ completel∙ fil∞ thσ blocδ o≥ i⌠ ì
áááááááááááshal∞ stri≡ paΣ character≤ froφ thσ sourcσ block¼ alway≤ stoppinτ ì
áááááááááááa⌠ thσ enΣ oµ ß completσ block.
ááX 1 Thσ COP┘ manage≥ shal∞ alway≤ writσ o≥ reaΣ completσ blocks« Oε ì
áááááááááááinexac⌠ segments¼ thσ remainde≥ oµ thσ blocδ contain≤ datß froφ thσ ì
ááááááááááánex⌠ segment« Thi≤ codσ i≤ no⌠ valiΣ iε thσ las⌠ segmen⌠ oµ thσ ì
áááááááááááCOP┘ command.
.pm 0
.lm 1
==============================================================================
.lm 3
ááIMPLEMENTOR╙ NOTE║ Usσ oµ paΣ character≤ i≤ intendeΣ t∩ assis⌠ iε managinτ ì
ááCOP┘ command≤ betweeε device≤ oµ differen⌠ blocδ length≤ wherσ partia∞-blocδ ì
ááresidue≤ ma∙ occur« Thσ initiato≥ whicΦ issueΣ thσ COP┘ commanΣ i≤ ì
ááresponsiblσ fo≥ managemen⌠ oµ thesσ paΣ area≤ (i.e.¼ rememberinτ wherσ the∙ ìèááare)« Onσ possiblσ methoΣ i≤ t∩ writσ thσ COP┘ paramete≥ lis⌠ informatioε ì
áát∩ thσ destinatioε mediuφ prio≥ t∩ issuinτ thσ COP┘ commanΣ fo≥ backu≡ anΣ ì
áát∩ reaΣ thi≤ informatioε prio≥ t∩ issuinτ thσ COP┘ commanΣ fo≥ restore.
.lm 1
.cp 35
.aw off
.pm 0
7.2.4. COPY AND VERIFY Command
Table 7-13: COPY AND VERIFY Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (3Ah) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved | BytChk | Pad |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
- - -|- - Parameter List Length - -|
5 | (LSB) |
-----|-----------------------------------------------------------------------|
6 | |
- - -|- - Reserved - -|
8 | |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.aw on
.pm 3
ááThσ COP┘ AN─ VERIF┘ commanΣ (Tablσ ╖-13⌐ perform≤ thσ samσ functioε a≤ thσ ì
COP┘ command¼ excep⌠ tha⌠ ß verificatioε oµ thσ datß writteε t∩ thσ ì
destinatioε logica∞ uni⌠ i≤ performeΣ afte≥ thσ datß i≤ written« Thσ ì
paramete≥ lis⌠ transferreΣ t∩ thσ targe⌠ i≤ thσ samσ a≤ fo≥ thσ COP┘ command« ì
Thi≤ paramete≥ lis⌠ contain≤ thσ informatioε t∩ identif∙ thσ logica∞ unit≤ ì
involveΣ iε thσ cop∙ anΣ thσ lengtΦ oµ thσ copy« Seσ 7.2.│ fo≥ additiona∞ ì
informatioε abou⌠ thσ COP┘ command.
áá┴ bytσ checδ (BytChk⌐ bi⌠ oµ zer∩ cause≤ ß mediuφ verificatioε t∩ bσ ì
performeΣ witΦ n∩ datß comparison« ┴ BytChδ bi⌠ oµ onσ cause≤ ß bytσ-b∙-bytσ ì
comparσ oµ datß writteε oε thσ destinatioε mediuφ anΣ thσ datß transferreΣ ì
froφ thσ sourcσ medium« Iµ thσ comparσ i≤ unsuccessfu∞ fo≥ an∙ reason¼ thσ ì
cop∙ manage≥ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ì
MISCOMPARE« Thσ remaininτ field≤ iε thσ sensσ datß shal∞ bσ se⌠ a≤ documenteΣ ì
iε thσ COP┘ command.
.cp 35è.aw off
.pm 0
7.2.5. INQUIRY Command
Table 7-14: INQUIRY Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (12h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved ⁿ EVPD |
-----|-----------------------------------------------------------------------|
2 | Pagσ Code |
-----|-----------------------------------------------------------------------|
3 | ReserveΣ |
-----|-----------------------------------------------------------------------|
4 | Allocation Length |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ INQUIR┘ commanΣ (Tablσ ╖-14⌐ request≤ tha⌠ informatioε regardinτ ì
parameter≤ oµ thσ targe⌠ anΣ it≤ attacheΣ periphera∞ device(s⌐ bσ sen⌠ t∩ thσ ì
initiator« Aε optioε allow≤ thσ initiato≥ t∩ reques⌠ additiona∞ informatioε ì
abou⌠ thσ targe⌠ o≥ logica∞ uni⌠ (seσ 7.2.5.2).
.cp6
ááAε enablσ vita∞ produc⌠ datß (EVPD⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ì
shal∞ returε thσ optiona∞ vita∞ produc⌠ datß specifieΣ b∙ thσ pagσ codσ field« ì
Iµ thσ targe⌠ doe≤ no⌠ suppor⌠ vita∞ produc⌠ datß anΣ thi≤ bi⌠ i≤ se⌠ t∩ one¼ ì
thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ì
ILLEGA╠ REQUES╘ anΣ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ CDB.
.cp5
ááAε EVP─ bi⌠ oµ zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ returε thσ standarΣ ì
INQUIR┘ data« Iµ thσ pagσ codσ fielΣ i≤ no⌠ zero¼ thσ targe⌠ shal∞ returε ì
CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ aε ì
additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ CDB.
.cp 2
ááThσ pagσ codσ fielΣ specifie≤ whicΦ pagσ oµ vita∞ produc⌠ datß informatioε ì
thσ targe⌠ shal∞ returε (seσ 7.3.4).
.c≡ 4
ááThσ INQUIR┘ commanΣ shal∞ returε CHEC╦ CONDITIO╬ statu≤ onl∙ wheε thσ targe⌠ ì
canno⌠ returε thσ requesteΣ INQUIR┘ data«
.cp 5
.lm 3
ááIMPLEMENTOR╙ NOTE║ I⌠ i≤ recommendeΣ tha⌠ thσ INQUIR┘ datß bσ returneΣ eveε ì
ááthougΦ thσ periphera∞ devicσ ma∙ no⌠ bσ read∙ fo≥ othe≥ commands.
.lm 1
.cp 5
ááIµ aε INQUIR┘ commanΣ i≤ receiveΣ froφ aε initiato≥ witΦ ß pendinτ uni⌠ ì
attentioε conditioε (i.e.¼ beforσ thσ targe⌠ report≤ CHEC╦ CONDITIO╬ status)¼ ì
thσ targe⌠ shal∞ perforφ thσ INQUIR┘ commanΣ anΣ shal∞ no⌠ clea≥ thσ uni⌠ ì
attentioε conditioε (seσ 6.9).
.cp 4è.lm 3
ááIMPLEMENTOR╙ NOTES:
áá(1⌐ Thσ INQUIR┘ commanΣ i≤ typicall∙ useΣ b∙ thσ initiato≥ afte≥ ß rese⌠ o≥ ì
áápowe≥-u≡ conditioε t∩ determinσ thσ devicσ type≤ fo≥ systeφ configuration« ì
ááT∩ minimizσ delay≤ afte≥ ß rese⌠ o≥ powe≥-u≡ conditioε thσ standarΣ INQUIR┘ ì
áádatß shoulΣ bσ availablσ withou⌠ incurrinτ an∙ mediß acces≤ delays« Iµ thσ ì
áátarge⌠ doe≤ storσ somσ oµ thσ INQUIR┘ datß oε thσ devicσ i⌠ ma∙ returε zero≤ ì
ááo≥ ASCI╔ space≤ (20h⌐ iε thosσ field≤ unti∞ thσ datß i≤ availablσ froφ thσ ì
áádevice.
áá(2⌐ Thσ INQUIR┘ datß ma∙ changσ a≤ thσ targe⌠ execute≤ it≤ initializatioε ì
áásequencσ o≥ iε responsσ t∩ ß CHANG┼ DEFINITIO╬ command« Fo≥ example¼ thσ ì
áátarge⌠ ma∙ contaiε ß minimuφ commanΣ se⌠ iε it≤ noε-volatilσ memor∙ anΣ ma∙ ì
ááloaΣ it≤ fina∞ firmwarσ froφ thσ devicσ wheε i⌠ become≤ ready« Afte≥ i⌠ ha≤ ì
ááloadeΣ thσ firmwarσ i⌠ ma∙ suppor⌠ morσ option≤ anΣ thereforσ returε ì
áádifferen⌠ supporteΣ option≤ informatioε iε thσ INQUIR┘ data.
.lm 1
.cp 10
.pm 0
.aw off
7.2.5.1. Standard INQUIRY Data
.pm 3
.aw on
ááThσ standarΣ INQUIR┘ datß (Tablσ ╖-15⌐ contain≤ 3╢ requireΣ bytes¼ followeΣ ì
b∙ ß variablσ numbe≥ oµ vendo≥-specifiπ parameters« Byte≤ 5╢ througΦ 95¼ iµ ì
returned¼ arσ reserveΣ fo≥ futurσ standardization«
.cp 50èááThσ standarΣ INQUIR┘ datß forma⌠ i≤ showε iε Tablσ ╖-15.
.cp 48
.pm 0
.aw off
Table 7-15: Standard INQUIRY Data Format
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Peripheral Qualifier | Peripheral Device Type |
-----|-----------------------------------------------------------------------|
1 | RMB | Device-Typσ Modifier |
-----|-----------------------------------------------------------------------|
2 | ISO Version | ECMA Version | ANSI-Approved Version |
-----|-----------------------------------------------------------------------|
3 | AENC | TrmIOP ⁿ Reserved | Response Data Format |
-----|-----------------------------------------------------------------------|
4 | Additional Length (n-4) |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | Reserved |
-----|-----------------------------------------------------------------------|
7 | RelAdr | WBus32 | WBus16 | Sync | Linked |Reservσdⁿ CmdQue ⁿ SftRσ |
-----|-+---------------------------------------------------------------------|
8 | (MSB) |
- - -|- - Vendor Identification - -|
15 | (LSB) |
-----|-+---------------------------------------------------------------------|
16 | (MSB) |
- - -|- - Product Identification - -|
31 | (LSB) |
-----|-+---------------------------------------------------------------------|
32 | (MSB) |
- - -|- - Product Revision Level - -|
35 | (LSB) |
-----|-+---------------------------------------------------------------------|
36 | |
- - -|- - Vendor Specific - -|
55 | |
-----|-+---------------------------------------------------------------------|
56 | |
- - -|- - Reserved - -|
95 | |
============================================================================== ì
| Vendor-Specific Parameters |
==============================================================================
96 to| Vendor-Specific |
n | Parameter Bytes |
==============================================================================
.aw1
.pm3
.cp6èááThσ periphera∞ qualifie≥ anΣ periphera∞ devicσ-typσ field≤ identif∙ thσ ì
devicσ currentl∙ connecteΣ t∩ thσ logica∞ unit« Iµ thσ targe⌠ i≤ no⌠ capablσ ì
oµ supportinτ ß devicσ oε thi≤ logica∞ unit¼ thi≤ fielΣ shal∞ bσ se⌠ t∩ 7FΦ ì
(periphera∞ qualifie≥ se⌠ t∩ 011Γ anΣ periphera∞ devicσ typσ se⌠ t∩ 1Fh)« Thσ ì
periphera∞ qualifie≥ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ devicσ typσ ì
i≤ defineΣ iε Tablσ ╖-17.
.cp 30
.aw off
.pm 0
Table 7-16: Peripheral Qualifier
==============================================================================
Qualifier Description
--------¡ ----------------------------------------------------------------
.aw on
.pm 3
.lm 15
áá000b Thσ specifieΣ periphera∞ devicσ typσ i≤ currentl∙ connecteΣ t∩ ì
ááááááááááááááthi≤ logica∞ unit« Iµ thσ targe⌠ canno⌠ determinσ whethe≥ o≥ ì
ááááááááááááááno⌠ ß physica∞ devicσ i≤ currentl∙ connecteΣ i⌠ shal∞ als∩ usσ ì
ááááááááááááááthi≤ periphera∞ qualifie≥ wheε returninτ thσ INQUIR┘ data« ì
ááááááááááááááNote║ Thi≤ periphera∞ qualifie≥ doe≤ no⌠ impl∙ tha⌠ thσ devicσ ì
áááááááááááááái≤ read∙ fo≥ acces≤ b∙ thσ initiator.
áá001b Thσ targe⌠ i≤ capablσ oµ supportinτ thσ specifieΣ periphera∞ ì
áááááááááááááádevicσ typσ oε thi≤ logica∞ unit¼ howeve≥ thσ physica∞ devicσ i≤ ì
ááááááááááááááno⌠ currentl∙ connecteΣ t∩ thi≤ logica∞ unit.
áá010b Reserved
áá011b Thσ targe⌠ i≤ no⌠ capablσ oµ supportinτ ß physica∞ devicσ oε ì
ááááááááááááááthi≤ logica∞ unit« Fo≥ thi≤ periphera∞ qualifie≥ thσ periphera∞ ì
áááááááááááááádevicσ typσ shal∞ bσ se⌠ t∩ 1FΦ t∩ providσ compatibilit∙ witΦ ì
áááááááááááááápreviou≤ version≤ oµ SCSI« Al∞ othe≥ periphera∞ devicσ typσ ì
áááááááááááááávalue≤ arσ reserveΣ fo≥ thi≤ periphera∞ qualifier.
áá1XXb Vendo≥ specific
.lm 1
.pm 0
==============================================================================
.aw on
.pm 3
.cp 20
.aw off
.pm 0
Table 7-17: Peripheral Device Type
==============================================================================
Code Description
----------¡ ---------------------------------------------------------------
.aw on
.pm 3
.lm 16
áá00h Direc⌠-acces≤ devicσ (e.g.¼ magnetiπ disk)
áá01h Sequentia∞-acces≤ devicσ (e.g.¼ magnetiπ tape)
áá02h Printe≥ device
áá03h Processo≥ device
áá04h Writσ-oncσ devicσ (e.g.¼ somσ optica∞ disks)
áá05h C─-RO═ device
áá06h Scanne≥ device
áá07h Optica∞ memor∙ devicσ (e.g.¼ somσ optica∞ disks)
áá08h Mediuφ Change≥ devicσ (e.g.¼ jukeboxes⌐
áá09h Communication≤ device
áá0Ah - 0Bh DefineΣ b∙ AS├ IT╕ (Graphiπ Art≤ Prσ-Pres≤ Devices)
áá0Ch - 1Eh Reserved
áá1Fh Unknowε o≥ n∩ devicσ type
.lm 1
.pm 0
==============================================================================
.aw on
.pm 3
è
.cp 2
áá┴ removablσ mediuφ (RMB⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ mediuφ i≤ no⌠ ì
removable« ┴ RM┬ bi⌠ oµ onσ indicate≤ tha⌠ thσ mediuφ i≤ removable.
.cp 3
ááThσ devicσ-typσ modifie≥ fielΣ wa≤ defineΣ iε SCS╔-▒ t∩ permi⌠ vendo≥-ì
specifiπ qualificatioε code≤ oµ thσ devicσ type« Thi≤ fielΣ i≤ retaineΣ fo≥ ì
compatibilit∙ witΦ SCS╔-1« Target≤ tha⌠ d∩ no⌠ suppor⌠ thi≤ fielΣ shoulΣ ì
returε ß valuσ oµ zero.
.cp 5
ááThσ usagσ oµ noε-zer∩ codσ value≤ iε thσ IS╧ versioε anΣ ECM┴ versioε field≤ ì
arσ defineΣ b∙ thσ Internationa∞ Organizatioε fo≥ Standardizatioε anΣ thσ ì
Europeaε Compute≥ Manufacturer≤ Association¼ respectively« ┴ zer∩ codσ valuσ ì
iε thesσ field≤ shal∞ indicatσ tha⌠ thσ targe⌠ doe≤ no⌠ claiφ compliancσ t∩ ì
thσ IS╧ versioε oµ SCS╔ (IS╧ I╙ 9316⌐ o≥ thσ ECM┴ versioε oµ SCS╔ (ECM┴-111)« ì
I⌠ i≤ possiblσ t∩ claiφ compliancσ t∩ morσ thaε onσ oµ thesσ SCS╔ standards.
.cp 5
ááThσ ANS╔-approveΣ versioε fielΣ indicate≤ thσ implementeΣ versioε oµ thi≤ ì
standarΣ anΣ i≤ defineΣ iε Tablσ ╖-18.
.cp 11
.aw off
.pm 0
Table 7-18: ANSI-Approved Version
==============================================================================
Code Description
------------------------------------------------------------------------------
.aw on
.pm 4
.lm 12
ááá0h Thσ devicσ migh⌠ o≥ migh⌠ no⌠ compl∙ t∩ aε ANS╔-approveΣ standard.
ááá1h Thσ devicσ complie≤ t∩ ANS╔ X3.13▒-198╢ (SCS╔-1).
ááá2h Thσ devicσ complie≤ t∩ thi≤ versioε oµ SCSI« Thi≤ codσ i≤ reserveΣ ì
ááááááááááát∩ designatσ thi≤ standarΣ upoε approva∞ b∙ ANSI.
ááá3h - 7h Reserved
.lm 1
.pm 0
==============================================================================
.aw on
.pm 3
.cp 5
ááThσ asynchronou≤ even⌠ notificatioε capabilit∙ (AENC⌐ bi⌠ indicate≤ tha⌠ thσ ì
devicσ support≤ thσ asynchronou≤ even⌠ notificatioε capabilit∙ a≤ defineΣ iε ì
6.5.5«
.lm3
áá(1⌐ Processo≥ devicσ-typσ definition║ Aε AEN├ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
ááprocesso≥ devicσ i≤ capablσ oµ acceptinτ asynchronou≤ even⌠ notifications« ì
ááAε AEN├ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ processo≥ devicσ doe≤ no⌠ suppor⌠ ì
ááasynchronou≤ even⌠ notifications.
áá(2⌐ Al∞ othe≥ devicσ-types║ Thi≤ bi⌠ i≤ reserved.
.lm1
áá┴ terminatσ I/╧ proces≤ (TrmIOP⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ ì
support≤ thσ TERMINAT┼ I/╧ PROCES╙ messagσ a≤ defineΣ iε 5.6.22« ┴ valuσ oµ ì
zer∩ indicate≤ tha⌠ thσ devicσ doe≤ no⌠ suppor⌠ thσ TERMINAT┼ I/╧ PROCES╙ ì
message.
.cp5
áá┴ responsσ datß forma⌠ valuσ oµ zer∩ indicate≤ thσ INQUIR┘ datß forma⌠ i≤ a≤ ì
specifieΣ iε SCS╔-1« ┴ responsσ datß forma⌠ valuσ oµ onσ indicate≤ ì
compatibilit∙ witΦ somσ product≤ tha⌠ werσ designeΣ prio≥ t∩ thσ developmen⌠ ì
oµ thi≤ standarΣ (i.e.¼ CCS)« ┴ responsσ datß forma⌠ valuσ oµ tw∩ indicate≤ ì
tha⌠ thσ datß shal∞ bσ iε thσ forma⌠ specifieΣ iε thi≤ standard« Responsσ ì
datß forma⌠ value≤ greate≥ thaε tw∩ arσ reserved.
.cp 5èááThσ additiona∞ lengtΦ fielΣ shal∞ specif∙ thσ lengtΦ iε byte≤ oµ thσ ì
parameters« Iµ thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ to∩ ì
smal∞ t∩ transfe≥ al∞ oµ thσ parameters¼ thσ additiona∞ lengtΦ shal∞ no⌠ bσ ì
adjusteΣ t∩ reflec⌠ thσ truncation.
.cp 5
áá┴ relativσ addressinτ (RelAdr⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
thσ relativσ addressinτ modσ fo≥ thi≤ logica∞ unit« Iµ thi≤ bi⌠ i≤ se⌠ t∩ onσ ì
thσ linkeΣ commanΣ (Linked⌐ bi⌠ shal∞ als∩ bσ se⌠ t∩ onσ sincσ relativσ ì
addressinτ caε onl∙ bσ useΣ witΦ linkeΣ commands« ┴ RelAd≥ bi⌠ oµ zer∩ ì
indicate≤ thσ devicσ doe≤ no⌠ suppor⌠ relativσ addressinτ fo≥ thi≤ logica∞ ì
unit.
áá┴ widσ bu≤ 3▓ (WBus32⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ 3▓-bi⌠ ì
widσ datß transfers« ┴ valuσ oµ zer∩ indicate≤ tha⌠ thσ devicσ doe≤ no⌠ ì
suppor⌠ 3▓-bi⌠ widσ datß transfers.
áá┴ widσ bu≤ 1╢ (WBus16⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ 1╢-bi⌠ ì
widσ datß transfers« ┴ valuσ oµ zer∩ indicate≤ tha⌠ thσ devicσ doe≤ no⌠ ì
suppor⌠ 1╢-bi⌠ widσ datß transfers.
.lm 3
ááNOTE║ Iµ thσ value≤ oµ botΦ thσ WBus1╢ anΣ WBus3▓ bit≤ arσ zer∩ thσ devicσ ì
ááonl∙ support≤ ╕-bi⌠ widσ datß transfers.
.lφ 1
áá┴ synchronou≤ transfe≥ (Sync⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
synchronou≤ datß transfer« ┴ valuσ oµ zer∩ indicate≤ thσ devicσ doe≤ no⌠ ì
suppor⌠ synchronou≤ datß transfer.
áá┴ linkeΣ commanΣ (Linked⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
linkeΣ command≤ fo≥ thi≤ logica∞ unit« ┴ valuσ oµ zer∩ indicate≤ thσ devicσ ì
doe≤ no⌠ suppor⌠ linkeΣ command≤ fo≥ thi≤ logica∞ unit.
.cp2
áá┴ commanΣ queuinτ (CmdQue⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ devicσ support≤ ì
taggeΣ commanΣ queuinτ fo≥ thi≤ logica∞ unit« ┴ valuσ oµ zer∩ indicate≤ thσ ì
devicσ doe≤ no⌠ suppor⌠ taggeΣ commanΣ queuinτ fo≥ thi≤ logica∞ unit.
áá┴ sof⌠ rese⌠ (SftRe⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ devicσ respond≤ t∩ thσ ì
RESE╘ conditioε witΦ thσ harΣ RESE╘ alternativσ (seσ 5.2.2.1)« ┴ SftRσ bi⌠ oµ ì
onσ indicate≤ tha⌠ thσ devicσ respond≤ t∩ thσ RESE╘ conditioε witΦ thσ sof⌠ ì
RESE╘ alternativσ (seσ 5.2.2.2).
.cp 6
ááASCI╔ datß field≤ shal∞ contaiε onl∙ graphiπ code≤ (i.e.¼ codσ value≤ 20Φ ì
througΦ 7Eh)« Lef⌠-aligneΣ field≤ shal∞ placσ an∙ unuseΣ byte≤ a⌠ thσ enΣ oµ ì
thσ fielΣ (highes⌠ offset⌐ anΣ thσ unuseΣ byte≤ shal∞ bσ filleΣ witΦ spacσ ì
character≤ (20h)« Righ⌠-aligneΣ field≤ shal∞ placσ an∙ unuseΣ byte≤ a⌠ thσ ì
star⌠ oµ thσ fielΣ (lowes⌠ offset⌐ anΣ thσ unuseΣ byte≤ shal∞ bσ filleΣ witΦ ì
spacσ character≤ (20h).
.cp 3
ááThσ vendo≥ identificatioε fielΣ contain≤ eigh⌠ byte≤ oµ ASCI╔ datß ì
identifyinτ thσ vendo≥ oµ thσ product« Thσ datß shal∞ bσ lef⌠ aligneΣ withiε ì
thi≤ field«
.cp 6è.lm 3
ááNOTE║ I⌠ i≤ intendeΣ tha⌠ thi≤ fielΣ providσ ß uniquσ vendo≥ identificatioε ì
ááoµ thσ manufacture≥ oµ thσ SCS╔ device« Iε thσ absencσ oµ ß forma∞ ì
ááregistratioε procedure¼ X3T9.▓ maintain≤ ß lis⌠ oµ vendo≥ identificatioε ì
áácode≤ iε use« Vendor≤ arσ requesteΣ t∩ voluntaril∙ submi⌠ thei≥ ì
ááidentificatioε code≤ t∩ X3T9.▓ t∩ preven⌠ duplicatioε oµ code≤ (seσ Appendi° ì
ááJ).
.lm 1
.cp 2
ááThσ produc⌠ identificatioε fielΣ contain≤ sixteeε byte≤ oµ ASCI╔ datß a≤ ì
defineΣ b∙ thσ vendor« Thσ datß shal∞ bσ lef⌠-aligneΣ withiε thi≤ field.
.cp 2
ááThσ produc⌠ revisioε leve∞ fielΣ contain≤ fou≥ byte≤ oµ ASCI╔ datß a≤ ì
defineΣ b∙ thσ vendor« Thσ datß shal∞ bσ lef⌠-aligneΣ withiε thi≤ field.
.cp 10
.aw off
.pm 0
7.2.5.2. Vital Product Data
.pm 3
.aw on
ááImplementatioε oµ vita∞ produc⌠ datß i≤ optional« Thσ informatioε returneΣ ì
consist≤ oµ configuratioε datß (e.g.¼ vendo≥ identification¼ produc⌠ ì
identification¼ model¼ seria∞ number)¼ manufacturinτ datß (e.g.¼ plan⌠ anΣ ì
datσ oµ manufacture)¼ fielΣ replaceablσ uni⌠ datß anΣ othe≥ vendo≥¡ o≥ devicσ-ì
specifiπ data«
ááThσ initiato≥ request≤ thσ vita∞ produc⌠ datß informatioε b∙ settinτ thσ ì
EVP─ bi⌠ t∩ onσ anΣ specifyinτ thσ pagσ codσ oµ thσ desireΣ vita∞ produc⌠ datß ì
(seσ Tablσ ╖-72)« Iµ thσ targe⌠ doe≤ no⌠ implemen⌠ thσ requesteΣ pagσ i⌠ ì
shal∞ returε CHEC╦ CONDITIO╬ status« Thσ ß sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ CDB.
.cp 20
.lm 3
ááIMPLEMENTOR╙ NOTES║
.pm 0
áá(1⌐ I⌠ i≤ recommendeΣ tha⌠ thσ targe⌠ havσ thσ abilit∙ t∩ executσ thσ ì
ááINQUIR┘ commanΣ eveε wheε ß devicσ erro≥ occur≤ whicΦ prohibit≤ norma∞ ì
áácommanΣ execution« Iε sucΦ ß case¼ CHEC╦ CONDITIO╬ statu≤ woulΣ bσ returneΣ ì
ááfo≥ command≤ othe≥ thaε INQUIR┘ o≥ REQUES╘ SENSE« Thσ sensσ datß returneΣ ì
ááma∙ contaiε thσ fielΣ replaceablσ uni⌠ code« Thσ vita∞ produc⌠ datß woulΣ ì
áábσ obtaineΣ fo≥ thσ failinτ devicσ usinτ thσ INQUIR┘ command.
áá(2⌐ Thi≤ standarΣ define≤ ß forma⌠ whicΦ allow≤ devicσ-independen⌠ initiato≥ ì
áásoftwarσ t∩ displa∙ thσ vita∞ produc⌠ datß returneΣ b∙ thσ INQUIR┘ command« ì
ááFo≥ example¼ thσ initiato≥ ma∙ displa∙ thσ datß associateΣ fo≥ thσ fielΣ ì
ááreplaceablσ uni⌠ returneΣ iε thσ sensσ data« Thσ content≤ oµ thσ datß ma∙ ì
áábσ vendo≥-specific╗ thereforσ i⌠ ma∙ no⌠ bσ usablσ withou⌠ detaileΣ ì
ááinformatioε abou⌠ thσ device.
.cp5
áá(3⌐ Thi≤ standarΣ doe≤ no⌠ definσ thσ locatioε o≥ methoΣ oµ storinτ thσ ì
áávita∞ produc⌠ data« Thσ retrieva∞ oµ thσ datß ma∙ requirσ completioε oµ ì
ááinitializatioε operation≤ withiε thσ devicσ whicΦ ma∙ inducσ delay≤ beforσ ì
ááthσ datß i≤ availablσ t∩ thσ initiator« Timσ-critica∞ requirement≤ arσ aε ì
ááimplementatioε consideratioε anΣ arσ no⌠ addresseΣ iε thi≤ standard.
.pm 3
.lm 1
.cp35è.aw off
.pm 0
7.2.6. LOG SELECT Command
Table 7-19: LOG SELECT Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (4Ch) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved ⁿ PCR | SP |
-----|-----------------------------------------------------------------------|
2 | P├ | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | Reserved |
-----|-----------------------------------------------------------------------|
7 | (MSB) |
-----|--- Paramete≥ List LengtΦ ---|
8 | (LSB) |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.pm 3
.aw on
ááThσ LO╟ SELEC╘ commanΣ (Tablσ ╖-19⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ t∩ ì
managσ statistica∞ informatioε maintaineΣ b∙ thσ devicσ abou⌠ thσ devicσ o≥ ì
it≤ logica∞ units« Target≤ tha⌠ implemen⌠ thσ LO╟ SELEC╘ commanΣ shal∞ als∩ ì
implemen⌠ thσ LO╟ SENS┼ command« Structure≤ iε thσ forφ oµ loτ parameter≤ ì
withiε loτ page≤ arσ defineΣ a≤ ß wa∙ t∩ managσ thσ loτ data« Thσ LO╟ SELEC╘ ì
commanΣ provide≤ fo≥ sendinτ zer∩ o≥ morσ loτ page≤ durinτ ß DAT┴ OU╘ phase« ì
Thi≤ standarΣ define≤ thσ forma⌠ oµ thσ loτ pages¼ bu⌠ doe≤ no⌠ definσ thσ ì
exac⌠ condition≤ anΣ event≤ whicΦ arσ logged.
áá┴ paramete≥ codσ rese⌠ (PCR⌐ bi⌠ oµ onσ anΣ ß paramete≥ lis⌠ lengtΦ oµ zer∩ ì
shal∞ causσ al∞ implementeΣ parameter≤ t∩ bσ se⌠ t∩ thσ targe⌠-defineΣ defaul⌠ ì
value≤ (e.g.¼ zero)« Iµ thσ PC╥ bi⌠ i≤ onσ anΣ ß thσ paramete≥ lis⌠ lengtΦ i≤ ì
greate≥ thaε zer∩ thσ commanΣ i≤ terminateΣ witΦ CHEC╦ CONDITIO╬ status« Thσ ì
sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ ì
bσ se⌠ t∩ INVALI─ FIEL─ I╬ CDB« ┴ PC╥ bi⌠ oµ zer∩ specifie≤ tha⌠ thσ loτ ì
parameter≤ shal∞ no⌠ bσ reset.
.cp 5
áá┴ savσ parameter≤ (SP⌐ bi⌠ oµ onσ indicate≤ tha⌠ afte≥ performinτ thσ ì
specifieΣ LO╟ SELEC╘ operatioε thσ targe⌠ shal∞ savσ t∩ noε-volatilσ memor∙ ì
al∞ parameter≤ identifieΣ a≤ savablσ b∙ thσ D╙ bi⌠ iε thσ loτ pagσ (seσ ì
7.3.2)« ┴ S╨ bi⌠ oµ zer∩ specifie≤ tha⌠ parameter≤ shal∞ no⌠ bσ saved.
.cp 7èááSavinτ oµ loτ parameter≤ i≤ optiona∞ anΣ indicateΣ fo≥ eacΦ loτ paramete≥ b∙ ì
thσ D╙ bi⌠ iε thσ page« Loτ parameter≤ ma∙ bσ saveΣ a⌠ vendo≥-specifiπ time≤ ì
subjec⌠ t∩ thσ TS─ bi⌠ (seσ 7.3.2⌐ iε thσ loτ parameter« Iµ thσ targe⌠ doe≤ ì
no⌠ implemen⌠ saveΣ parameter≤ fo≥ an∙ loτ paramete≥ anΣ thσ S╨ bi⌠ i≤ se⌠ t∩ ì
one¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ì
ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ì
INVALI─ FIEL─ I╬ CDB«
.cp 3
ááI⌠ i≤ no⌠ aε erro≥ t∩ se⌠ thσ S╨ bi⌠ t∩ onσ anΣ t∩ se⌠ thσ D╙ bi⌠ oµ ß loτ ì
paramete≥ t∩ one« Iε thi≤ case¼ thσ paramete≥ valuσ fo≥ tha⌠ loτ paramete≥ i≤ ì
no⌠ saved.
.cp 2
ááThσ pagσ contro∞ (PC⌐ fielΣ define≤ thσ typσ oµ paramete≥ value≤ t∩ bσ ì
selected« Thσ pagσ contro∞ fielΣ i≤ defineΣ iε Table╖-20.
.aw off
.pm 0
.cp 10
Table 7-20: Page Control Field
============================================================
Type of Parameter Values
Value LO╟ SENS┼ LO╟ SELECT
----- ------------------------¡ --------------------------
00b Curren⌠ Threshold Values ThresholΣ Values
01b Curren⌠ Cumulative Values Cumulativσ Values
10b Defaul⌠ ThresholΣ Value≤ Defaul⌠ ThresholΣ Values
11b Defaul⌠ Cumulativσ Value≤ Defaul⌠ Cumulativσ Values
============================================================
.aw on
.pm 3
.lm1
ááThσ curren⌠ cumulativσ value≤ ma∙ bσ updateΣ b∙ thσ targe⌠ o≥ b∙ thσ ì
initiato≥ usinτ thσ LO╟ SELEC╘ commanΣ t∩ reflec⌠ thσ cumulativσ numbe≥ oµ ì
event≤ experienceΣ b∙ thσ target« Field≤ iε thσ paramete≥ contro∞ bytσ ì
(7.3.2⌐ oµ eacΦ loτ paramete≥ contro∞ thσ updatinτ anΣ savinτ oµ thσ curren⌠ ì
cumulativσ parameters«
.cp 3
ááThσ targe⌠ shal∞ se⌠ thσ curren⌠ thresholΣ parameter≤ t∩ thσ defaul⌠ ì
thresholΣ value≤ iε responsσ t∩ ß LO╟ SELEC╘ commanΣ witΦ thσ P├ fielΣ se⌠ t∩ ì
10Γ anΣ thσ paramete≥ lis⌠ lengtΦ fielΣ se⌠ t∩ zero.
.cp 3
ááThσ targe⌠ shal∞ se⌠ al∞ cumulativσ parameter≤ t∩ thei≥ defaul⌠ value≤ iε ì
responsσ t∩ ß LO╟ SELEC╘ commanΣ witΦ thσ P├ fielΣ se⌠ t∩ 11Γ anΣ thσ ì
paramete≥ lis⌠ lengtΦ fielΣ se⌠ t∩ zero«
.cp 8
ááThσ curren⌠ thresholΣ valuσ caε onl∙ bσ modifieΣ b∙ thσ initiato≥ viß thσ ì
LO╟ SELEC╘ command« Iµ thσ initiato≥ attempt≤ t∩ changσ curren⌠ thresholΣ ì
value≤ tha⌠ arσ no⌠ availablσ o≥ no⌠ implementeΣ fo≥ tha⌠ loτ parameter¼ theε ì
thσ targe⌠ shal∞ terminatσ thσ LO╟ SELEC╘ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ ì
thσ sensσ ke∙ se⌠ t∩ ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ì
INVALI─ FIEL─ I╬ PARAMETE╥ LIST« Thσ savinτ oµ curren⌠ thresholΣ parameter≤ ì
anΣ thσ criteriß fo≥ thσ curren⌠ thresholΣ beinτ me⌠ arσ controlleΣ b∙ bit≤ iε ì
thσ paramete≥ contro∞ bytσ (7.3.2)«
.lm3
ááIMPLEMENTOR╙ NOTE║ Page≤ o≥ loτ parameter≤ tha⌠ arσ no⌠ availablσ ma∙ becomσ ì
ááavailablσ a⌠ somσ late≥ timσ (e.g.¼ afte≥ thσ devicσ ha≤ becomσ ready).
.lm1
.cp 10èááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
paramete≥ lis⌠ tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ targe⌠ ì
durinτ thσ DAT┴ OU╘ phase« ┴ paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ ì
page≤ shal∞ bσ transferred« Thi≤ conditioε shal∞ no⌠ bσ considereΣ aε error« ì
Iµ thσ initiato≥ send≤ pagσ code≤ o≥ paramete≥ code≤ withiε thσ paramete≥ lis⌠ ì
tha⌠ arσ reserveΣ o≥ no⌠ implementeΣ b∙ thσ target¼ thσ targe⌠ shal∞ terminatσ ì
thσ LO╟ SELEC╘ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ ì
se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
PARAMETE╥ LIST.
.cp 4
ááIµ ß paramete≥ lis⌠ lengtΦ result≤ iε thσ truncatioε oµ an∙ loτ parameter¼ ì
thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ì
ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ì
INVALI─ FIEL─ I╬ CDB«
ááThσ initiato≥ shoulΣ senΣ page≤ iε ascendinτ orde≥ b∙ pagσ codσ valuσ iµ ì
multiplσ page≤ arσ sen⌠ durinτ ß DAT┴ OU╘ phase« Iµ multiplσ loτ parameter≤ ì
withiε ß pagσ arσ sen⌠ durinτ thσ DAT┴ OU╘ phasσ theε the∙ shoulΣ bσ sen⌠ iε ì
ascendinτ orde≥ b∙ paramete≥ codσ value« Thσ targe⌠ shal∞ returε CHEC╦ ì
CONDITIO╬ statu≤ iµ thσ initiato≥ send≤ page≤ ou⌠ oµ orde≥ o≥ paramete≥ code≤ ì
ou⌠ oµ order« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ ì
additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
.lm3
ááIMPLEMENTOR╙ NOTE║ Initiator≤ shoulΣ issuσ LO╟ SENS┼ command≤ prio≥ t∩ ì
ááissuinτ LO╟ SELEC╘ command≤ t∩ determinσ supporteΣ page≤ anΣ pagσ lengths.
.lm1
.cp 6
ááThσ targe⌠ ma∙ providσ independen⌠ set≤ oµ loτ parameter≤ fo≥ eacΦ logica∞ ì
uni⌠ o≥ fo≥ eacΦ combinatioε oµ logica∞ unit≤ anΣ initiators« Iµ thσ targe⌠ ì
doe≤ no⌠ suppor⌠ independen⌠ set≤ oµ loτ parameter≤ anΣ an∙ loτ parameter≤ arσ ì
changeΣ tha⌠ affec⌠ othe≥ initiators¼ theε thσ targe⌠ shal∞ generatσ aε uni⌠ ì
attentioε conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ LO╟ ì
SELEC╘ commanΣ (seσ 6.9)« Thi≤ uni⌠ attentioε conditioε i≤ returneΣ witΦ aε ì
additiona∞ sensσ codσ oµ LO╟ PARAMETER╙ CHANGED.
.cp 5
ááIµ thσ initiato≥ send≤ ß loτ paramete≥ tha⌠ i≤ no⌠ supporteΣ b∙ thσ target¼ ì
thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ se⌠ thσ ì
sensσ ke∙ t∩ ILLEGA╠ REQUEST¼ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ INVALI─ ì
FIEL─ I╬ PARAMETE╥ LIST.
.cp 25è.aw off
.pm 0
7.2.7. LOG SENSE Command
Table 7-21: LOG SENSE Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (4Dh) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved ⁿ PPC | SP |
-----|-----------------------------------------------------------------------|
2 | PC | Page Code |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | (MSB) |
-----|--- Paramete≥ Pointe≥ ---|
6 | (LSB) |
-----|-----------------------------------------------------------------------|
7 | (MSB) |
-----|--- Allocation Length ---|
8 | (LSB) |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.pm 3
.aw on
ááThσ LO╟ SENS┼ commanΣ (Tablσ ╖-21⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ t∩ ì
retrievσ statistica∞ informatioε maintaineΣ b∙ thσ devicσ abou⌠ thσ devicσ o≥ ì
it≤ logica∞ units« I⌠ i≤ ß complementar∙ commanΣ t∩ thσ LO╟ SELEC╘ command.
ááThσ paramete≥ pointe≥ contro∞ (PPC⌐ bi⌠ control≤ thσ typσ oµ parameter≤ ì
requesteΣ froφ thσ target:
.cp4
áá(1⌐ ┴ PP├ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ shal∞ returε ß loτ pagσ witΦ ì
paramete≥ codσ value≤ whicΦ havσ changeΣ sincσ thσ las⌠ LO╟ SELEC╘ o≥ LO╟ ì
SENS┼ command« Thσ targe⌠ shal∞ returε onl∙ thosσ paramete≥ code≤ followinτ ì
thσ paramete≥ pointe≥ field.
áá(2⌐ ┴ PP├ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ loτ paramete≥ requesteΣ froφ thσ ì
targe⌠ shal∞ begiε witΦ thσ paramete≥ codσ specifieΣ iε thσ paramete≥ pointe≥ ì
fielΣ anΣ returε thσ numbe≥ oµ byte≤ specifieΣ b∙ thσ allocatioε lengtΦ fielΣ ì
iε ascendinτ orde≥ oµ paramete≥ code≤ froφ thσ specifieΣ loτ page« ┴ PP├ bi⌠ ì
oµ zer∩ anΣ ß paramete≥ pointe≥ fielΣ oµ zer∩ shal∞ causσ al∞ availablσ loτ ì
parameter≤ fo≥ thσ specifieΣ loτ pagσ t∩ bσ returneΣ t∩ thσ initiato≥ subjec⌠ ì
t∩ thσ specifieΣ allocatioε length.
.cp 5
ááSavinτ parameter≤ i≤ aε optiona∞ functioε oµ thσ LO╟ SENS┼ command« Iµ thσ ì
targe⌠ doe≤ no⌠ implemen⌠ savinτ loτ parameter≤ anΣ iµ thσ savσ parameter≤ ì
(SP⌐ bi⌠ i≤ one¼ theε thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ status¼ se⌠ thσ ì
sensσ ke∙ t∩ ILLEGA╠ REQUEST¼ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ INVALI─ ì
FIEL─ I╬ CDB«
è.cp 5
áá┴ S╨ bi⌠ oµ zer∩ indicate≤ thσ targe⌠ shal∞ perforφ thσ specifieΣ LO╟ SENS┼ ì
commanΣ anΣ shal∞ no⌠ savσ an∙ loτ parameters« Iµ savinτ loτ parameter≤ i≤ ì
implemented¼ ß S╨ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ shal∞ perforφ thσ ì
specifieΣ LO╟ SENS┼ commanΣ anΣ shal∞ savσ al∞ loτ parameter≤ identifieΣ a≤ ì
savablσ b∙ thσ D╙ bi⌠ (7.3.2⌐ t∩ ß noε-volatilσ vendo≥-specifiπ location«
ááThσ pagσ contro∞ (PC⌐ fielΣ define≤ thσ typσ oµ paramete≥ value≤ t∩ bσ ì
selecteΣ (seσ 7.2.╢ fo≥ thσ definitioε oµ thσ pagσ contro∞ field)« Thσ ì
paramete≥ value≤ returneΣ b∙ ß LO╟ SENS┼ commanΣ arσ determineΣ a≤ follows:
áá(1⌐ Thσ specifieΣ paramete≥ value≤ a⌠ thσ las⌠ updatσ (iε responsσ t∩ ß LO╟ ì
SELEC╘ o≥ LO╟ SENS┼ commanΣ o≥ donσ automaticall∙ b∙ thσ targe⌠ fo≥ cumulativσ ì
values).
áá(2⌐ Thσ saveΣ value≤ iµ aε updatσ ha≤ no⌠ occurreΣ sincσ thσ las⌠ powe≥-on¼ ì
harΣ RESE╘ condition¼ o≥ BU╙ DEVIC┼ RESE╘ messagσ anΣ saveΣ parameter≤ arσ ì
implemented.
áá(3⌐ Thσ defaul⌠ value≤ iµ aε updatσ ha≤ no⌠ occurreΣ sincσ thσ las⌠ powe≥-ì
on¼ harΣ RESE╘ condition¼ o≥ BU╙ DEVIC┼ RESE╘ messagσ anΣ saveΣ value≤ arσ no⌠ ì
availablσ o≥ no⌠ implemented.
.lm 1
ááThσ pagσ codσ fielΣ identifie≤ whicΦ pagσ oµ datß i≤ beinτ requesteΣ (seσ ì
Tablσ ╖-53)« Iµ thσ pagσ codσ i≤ reserveΣ o≥ no⌠ implemented¼ thσ targe⌠ ì
shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ ì
bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ ì
I╬ CDB«
ááThσ paramete≥ pointe≥ fielΣ allow≤ thσ initiato≥ t∩ reques⌠ paramete≥ datß ì
beginninτ froφ ß specifiπ paramete≥ codσ t∩ thσ maximuφ allocatioε lengtΦ o≥ ì
thσ maximuφ paramete≥ codσ supporteΣ b∙ thσ target¼ whicheve≥ i≤ less« Iµ thσ ì
valuσ oµ thσ paramete≥ pointe≥ fielΣ i≤ large≥ thaε thσ larges⌠ availablσ ì
paramete≥ codσ tha⌠ caε bσ returneΣ b∙ thσ targe⌠ oε thσ specifieΣ page¼ thσ ì
targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ ì
shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ ì
INVALI─ FIEL─ I╬ CDB«
ááLoτ parameter≤ withiε thσ specifieΣ loτ pagσ shal∞ bσ transferreΣ iε ì
ascendinτ orde≥ accordinτ t∩ paramete≥ code.
.cp 35è.aw off
.pm 0
7.2.8. MODE SELECT(6) Command
Table 7-22: MODE SELECT(6) Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (15h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | PF | Reserved | SP |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Parameter List Length |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ MOD┼ SELECT(6⌐ commanΣ (Tablσ ╖-22⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ ì
t∩ specif∙ medium¼ logica∞ unit¼ o≥ periphera∞ devicσ parameter≤ t∩ thσ ì
target« Target≤ tha⌠ implemen⌠ thσ MOD┼ SELEC╘ commanΣ shal∞ als∩ implemen⌠ ì
thσ MOD┼ SENS┼ command« Initiator≤ shoulΣ issuσ MOD┼ SENS┼ prio≥ t∩ MOD┼ ì
SELEC╘ t∩ determinσ supporteΣ pages¼ pagσ lengths¼ anΣ othe≥ parameters.
ááIµ ß targe⌠ support≤ saveΣ pages¼ i⌠ ma∙ savσ onl∙ onσ cop∙ oµ thσ pagσ fo≥ ì
eacΦ logica∞ uni⌠ anΣ havσ i⌠ appl∙ t∩ al∞ initiator≤ o≥ i⌠ ma∙ savσ separatσ ì
copie≤ fo≥ eacΦ initiato≥ fo≥ eacΦ logica∞ unit« Iµ separatσ copie≤ arσ ì
saved¼ thσ targe⌠ shal∞ maintaiε separatσ curren⌠ value≤ fo≥ eacΦ I_T_╠ nexus« ì
Page≤ whicΦ arσ commoε t∩ al∞ initiator≤ arσ no⌠ requireΣ t∩ havσ multiplσ ì
copies«
ááIµ aε initiato≥ send≤ ß MOD┼ SELEC╘ commanΣ tha⌠ change≤ an∙ parameter≤ tha⌠ ì
appl∙ t∩ othe≥ initiators¼ thσ targe⌠ shal∞ generatσ ß uni⌠ attentioε ì
conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ MOD┼ SELEC╘ ì
commanΣ (seσ 6.9)« Thσ targe⌠ shal∞ se⌠ thσ additiona∞ sensσ codσ t∩ MOD┼ ì
PARAMETER╙ CHANGED«
ááThσ targe⌠ ma∙ providσ fo≥ independen⌠ set≤ oµ parameter≤ fo≥ eacΦ attacheΣ ì
logica∞ uni⌠ o≥ fo≥ eacΦ combinatioε oµ logica∞ uni⌠ anΣ initiator« Iµ ì
independen⌠ set≤ oµ parameter≤ arσ implemented¼ anΣ ß thirΣ part∙ reservatioε ì
i≤ requesteΣ thσ targe⌠ transfer≤ thσ se⌠ oµ parameter≤ iε effec⌠ fo≥ thσ ì
initiato≥ oµ thσ RESERV┼ commanΣ t∩ thσ parameter≤ useΣ fo≥ command≤ froφ thσ ì
thirΣ part∙ devicσ (seσ 8.2.12.│ anΣ 9.2.10.1).
.cp5
áá┴ pagσ forma⌠ (PF⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ MOD┼ SELEC╘ parameter≤ arσ ì
a≤ specifieΣ iε SCS╔-1¼ (i.e.¼ al∞ parameter≤ afte≥ thσ blocδ descriptor≤ arσ ì
vendo≥-specific« ┴ P╞ bi⌠ oµ onσ indicate≤ tha⌠ thσ MOD┼ SELEC╘ parameter≤ ì
followinτ thσ heade≥ anΣ blocδ descriptor(s⌐ arσ structureΣ a≤ page≤ oµ ì
relateΣ parameter≤ anΣ arσ a≤ specifieΣ iε thi≤ standard.
è.cp 12
áá┴ savσ page≤ (SP⌐ bi⌠ oµ zer∩ indicate≤ thσ targe⌠ shal∞ perforφ thσ ì
specifieΣ MOD┼ SELEC╘ operation¼ anΣ shal∞ no⌠ savσ an∙ pages« ┴ S╨ bi⌠ oµ ì
onσ indicate≤ tha⌠ thσ targe⌠ shal∞ perforφ thσ specifieΣ MOD┼ SELEC╘ ì
operation¼ anΣ shal∞ savσ t∩ ß noε-volatilσ vendo≥-specifiπ locatioε al∞ thσ ì
savablσ page≤ includinτ an∙ sen⌠ durinτ thσ DAT┴ OU╘ phase« Thσ S╨ bi⌠ i≤ ì
optional¼ eveε wheε modσ page≤ arσ supporteΣ b∙ thσ target« Page≤ whicΦ arσ ì
saveΣ arσ identifieΣ b∙ thσ paramete≥ savablσ bi⌠ tha⌠ i≤ returneΣ iε thσ pagσ ì
heade≥ b∙ thσ MOD┼ SENS┼ commanΣ (seσ 7.2.10.4)« Iµ thσ targe⌠ doe≤ no⌠ ì
implemen⌠ saveΣ page≤ anΣ thσ S╨ bi⌠ i≤ se⌠ t∩ one¼ thσ commanΣ shal∞ bσ ì
terminateΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
REQUEST¼ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ INVALI─ FIEL─ I╬ CDB.
ááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ MOD┼ ì
SELEC╘ paramete≥ lis⌠ tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ ì
targe⌠ durinτ thσ DAT┴ OU╘ phase« ┴ paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ ì
tha⌠ n∩ datß shal∞ bσ transferred« Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ ì
aε error« ┴ paramete≥ lis⌠ lengtΦ tha⌠ result≤ iε thσ truncatioε oµ an∙ ì
descriptor¼ heade≥ o≥ pagσ oµ parameter≤ shal∞ causσ thσ targe⌠ t∩ terminatσ ì
thσ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ì
ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ PARAMETE╥ LIS╘ ì
LENGT╚ ERROR«
ááThσ paramete≥ lis⌠ fo≥ thσ MOD┼ SELEC╘ anΣ MOD┼ SENS┼ command≤ i≤ defineΣ iε ì
7.3.3« Part≤ oµ eacΦ paramete≥ lis⌠ arσ uniquel∙ defineΣ fo≥ eacΦ devicσ-ì
type«
.lm 3
ááIMPLEMENTOR╙ NOTE║ Iε somσ situation≤ wherσ therσ i≤ ß conflic⌠ betweeε thσ ì
ááinformatioε iε thσ commanΣ descripto≥ blocδ anΣ thσ informatioε iε thσ ì
ááparamete≥ list¼ onσ oµ severa∞ additiona∞ sensσ code≤ ma∙ apply« A≤ ß ì
ááguide¼ INVALI─ FIEL─ I╬ CD┬ o≥ PARAMETE╥ LIS╘ LENGT╚ ERRO╥ shoulΣ bσ useΣ iµ ì
ááthσ erro≥ i≤ detecteΣ prio≥ t∩ an∙ operation≤ tha⌠ alte≥ thσ logica∞ unit'≤ ì
áámodσ parameters« INVALI─ FIEL─ I╬ PARAMETE╥ LIS╘ shoulΣ bσ useΣ iµ thσ ì
áálogica∞ unit'≤ modσ parameter≤ havσ beeε altered«
.lm 1
.cp3
ááThσ targe⌠ shal∞ terminatσ thσ MOD┼ SELEC╘ commanΣ witΦ CHEC╦ CONDITIO╬ ì
status¼ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ anΣ se⌠ thσ additiona∞ sensσ codσ ì
t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIS╘ fo≥ thσ followinτ conditions:
áá(1⌐ Iµ thσ initiato≥ attempt≤ t∩ changσ an∙ fielΣ tha⌠ i≤ no⌠ changeablσ a≤ ì
reporteΣ b∙ thσ target« Iε thi≤ case¼ n∩ parameter≤ shal∞ bσ changeΣ b∙ thi≤ ì
command.
áá(2⌐ Iµ thσ initiato≥ attempt≤ t∩ senΣ aε unsupporteΣ valuσ o≥ ß noε-zer∩ ì
valuσ t∩ ß reserveΣ fielΣ iε thσ MOD┼ SELEC╘ header¼ blocδ descriptor¼ o≥ an∙ ì
pagσ header.
áá(3⌐ Iµ aε initiato≥ attempt≤ t∩ senΣ ß pagσ witΦ ß lengtΦ no⌠ equa∞ t∩ thσ ì
paramete≥ lengtΦ reporteΣ fo≥ tha⌠ pagσ b∙ thσ MOD┼ SENS┼ command.
áá(4⌐ Iµ thσ initiato≥ attempt≤ t∩ senΣ ß valuσ fo≥ ß paramete≥ tha⌠ i≤ ì
outsidσ thσ rangσ supporteΣ b∙ thσ targe⌠ anΣ roundinτ i≤ no⌠ implementeΣ fo≥ ì
tha⌠ parameter.
.cp9èááIµ thσ initiato≥ send≤ ß valuσ fo≥ ß paramete≥ tha⌠ i≤ outsidσ thσ rangσ ì
supporteΣ b∙ thσ targe⌠ anΣ roundinτ i≤ implementeΣ fo≥ tha⌠ parameter¼ thσ ì
targe⌠ ma∙ either:
áá(1⌐ rounΣ thσ paramete≥ t∩ aε acceptablσ valuσ anΣ terminatσ thσ commanΣ a≤ ì
describeΣ iε 6.5.4.
áá(2⌐ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ thσ sensσ ke∙ se⌠ t∩ ì
ILLEGA╠ REQUEST¼ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
PARAMETE╥ LIST.
.cp 35
.aw off
.pm 0
7.2.9. MODE SELECT(10) Command
.aw0
.pm0
Table 7-23: MODE SELECT(10) Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (55h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | PF ⁿ ReserveΣ | SP |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | Reserved |
-----|-----------------------------------------------------------------------|
7 | (MSB) |
-----|--- Parameter List Length ---|
8 | (LSB) |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.aw on
.pm 3
ááThσ MOD┼ SELECT(10⌐ commanΣ (Tablσ ╖-23⌐ provide≤ ß mean≤ fo≥ thσ initiato≥ ì
t∩ specif∙ medium¼ logica∞ unit¼ o≥ periphera∞ devicσ parameter≤ t∩ thσ ì
target« Seσ thσ MOD┼ SELECT(6⌐ commanΣ (7.2.8⌐ fo≥ ß descriptioε oµ thσ ì
field≤ iε thi≤ command« Initiator≤ shoulΣ issuσ MOD┼ SENS┼ prio≥ t∩ MOD┼ ì
SELEC╘ t∩ determinσ supporteΣ pages¼ pagσ lengths¼ anΣ othe≥ parameters.
ááTarget≤ tha⌠ implemen⌠ thσ MOD┼ SELECT(10⌐ commanΣ shal∞ als∩ implemen⌠ thσ ì
MOD┼ SENSE(10⌐ command«
.cp 25è.aw off
.pm 0
7.2.10. MODE SENSE(6) Command
Table 7-24: MODE SENSE(6) Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (1Ah) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number |Reserved| DBD | Reserved |
-----|-----------------------------------------------------------------------|
2 | PC | Page Code |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Allocation Length |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ MOD┼ SENSE(6⌐ commanΣ (Tablσ ╖-24⌐ provide≤ ß mean≤ fo≥ ß targe⌠ t∩ ì
repor⌠ parameter≤ t∩ thσ initiator« I⌠ i≤ ß complementar∙ commanΣ t∩ thσ MOD┼ ì
SELECT(6⌐ command«
áá┴ disablσ blocδ descriptor≤ (DBD⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ ma∙ ì
returε zer∩ o≥ morσ blocδ descriptor≤ iε thσ returneΣ MOD┼ SENS┼ datß (seσ ì
7.3.3)¼ a⌠ thσ target'≤ discretion« ┴ DB─ bi⌠ oµ onσ specifie≤ tha⌠ thσ ì
targe⌠ shal∞ no⌠ returε an∙ blocδ descriptor≤ iε thσ returneΣ MOD┼ SENS┼ data.
ááThσ pagσ contro∞ (PC⌐ fielΣ define≤ thσ typσ oµ paramete≥ value≤ t∩ bσ ì
returned« Thσ pagσ contro∞ fielΣ i≤ defineΣ iε Table╖-25.
.aw off
.pm 0
.cp 10
Table 7-25: Page Control Field
================================================
Bit 7 Bit 6 Type of Parameter Values Section
----- ----- ------------------------ --------
0 0 Current Values 7.2.10.1
0 1 Changeable Values 7.2.10.2
1 0 Default Values 7.2.10.3
1 1 Saved Values 7.2.10.4
================================================
.aw on
.pm 3
.cp 15èááThσ pagσ codσ specifie≤ whicΦ pagσ o≥ page≤ t∩ return« Pagσ codσ usagσ i≤ ì
defineΣ iε Tablσ ╖-26.
.aw off
.pm 0
.cp 15
Table 7-26: Page Code Usage for All Devices
==========================================================
Page Code Description
--------¡ ----------------------------------------------
00h Vendo≥ Specific (does not require page format)
01h - 1Fh See specific device-types
20h - 3Eh Vendo≥ Specific (page format required)
3Fh Return all pages
==========================================================
.aw on
.pm 3
ááAε initiato≥ ma∙ reques⌠ an∙ onσ o≥ al∞ oµ thσ supporteΣ page≤ oµ ß target« ì
Iµ aε initiato≥ attempt≤ ß MOD┼ SENS┼ commanΣ witΦ ß pagσ codσ valuσ no⌠ ì
implementeΣ b∙ thσ target¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ ì
shal∞ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ t∩ ì
INVALI─ FIEL─ I╬ CDB«
áá┴ pagσ codσ oµ 3FΦ indicate≤ tha⌠ al∞ page≤ implementeΣ b∙ thσ targe⌠ shal∞ ì
bσ returneΣ t∩ thσ initiator« Pagσ 00h¼ iµ implemented¼ shal∞ bσ returneΣ ì
afte≥ al∞ othe≥ pages« Target≤ tha⌠ implemen⌠ morσ thaε 25╢ byte≤ oµ modσ ì
pagσ paramete≥ datß anΣ blocδ descriptor≤ shal∞ returε CHEC╦ CONDITIO╬ statu≤ ì
t∩ ß MOD┼ SENSE(6⌐ reques⌠ oµ 3FΦ iε thσ pagσ codσ field« Thσ sensσ ke∙ shal∞ ì
bσ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ ì
INVALI─ FIEL─ I╬ CDB«
.lm 3
ááIMPLEMENTOR╙ NOTES║
áá(1⌐ Target≤ tha⌠ suppor⌠ morσ thaε 25╢ byte≤ oµ blocδ descriptor≤ anΣ ì
ááparamete≥ page≤ shoulΣ conside≥ implementinτ thσ MOD┼ SELECT(10⌐ anΣ MOD┼ ì
ááSENSE(10⌐ commands« Target≤ migh⌠ no⌠ suppor⌠ aε entirσ modσ pagσ a≤ ì
áádefineΣ iε thi≤ standard« Typically¼ thσ modσ page≤ arσ returneΣ iε ì
ááascendinτ orde≥ (excep⌠ fo≥ pagσ 00h).
áá(2⌐ ┴ targe⌠ tha⌠ receive≤ ß MOD┼ SENS┼ commanΣ witΦ ß P├ fielΣ anΣ ß pagσ ì
áácodσ fielΣ oµ zer∩ shoulΣ returε ß modσ paramete≥ heade≥ anΣ blocδ ì
áádescripto≥ (iµ applicable)« Thi≤ allow≤ fo≥ compatibilit∙ witΦ existinτ ì
ááSCS╔-▒ initiators.
.lm 1
ááThσ paramete≥ lis⌠ fo≥ MOD┼ SELEC╘ anΣ MOD┼ SENS┼ i≤ defineΣ iε 7.3.3« ì
Part≤ oµ thσ paramete≥ list≤ arσ specificall∙ defineΣ fo≥ eacΦ devicσ type«
.cp 5
.aw off
.pm 0
7.2.10.1. Current Values
.aw on
.pm 3
áá┴ P├ fielΣ valuσ oµ 0Φ request≤ thσ targe⌠ t∩ returε thσ curren⌠ paramete≥ ì
value≤ fo≥ thσ specifieΣ pagσ codσ fo≥ thσ logica∞ unit« Thσ curren⌠ value≤ ì
returneΣ are:
áá(1⌐ Thσ parameter≤ se⌠ iε thσ las⌠ successfu∞ MOD┼ SELEC╘ command.
áá(2⌐ Thσ saveΣ value≤ iµ ß MOD┼ SELEC╘ commanΣ ha≤ no⌠ beeε executeΣ sincσ ì
thσ las⌠ powe≥-on¼ harΣ RESE╘ condition¼ o≥ BU╙ DEVIC┼ RESE╘ message.
áá(3⌐ Thσ defaul⌠ value≤ iµ saveΣ value≤ arσ no⌠ availablσ o≥ no⌠ supported.
.cp 7è.aw off
.pm 0
7.2.10.2. Changeable Values
.aw on
.pm 3
áá┴ P├ fielΣ valuσ oµ 1Φ request≤ thσ targe⌠ t∩ returε thσ changeablσ ì
paramete≥ masδ fo≥ thσ pagσ codσ specified« Thσ pagσ requesteΣ shal∞ bσ ì
returneΣ containinτ informatioε tha⌠ indicate≤ whicΦ parameter≤ arσ ì
changeable« Al∞ bit≤ oµ parameter≤ tha⌠ arσ changeablσ shal∞ bσ se⌠ t∩ one« ì
Al∞ bit≤ oµ parameter≤ tha⌠ arσ targe⌠ defineΣ (no⌠ changeablσ b∙ thσ ì
initiator⌐ shal∞ bσ se⌠ t∩ zero.
.lm 3
ááNOTE║ Aε attemp⌠ t∩ changσ ß targe⌠-defineΣ paramete≥ (viß MOD┼ SELECT⌐ ì
ááresult≤ iε aε erro≥ conditioε (seσ 7.2.8).
.lm 1
.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ initiato≥ shoulΣ issuσ ß MOD┼ SENS┼ commanΣ witΦ thσ ì
ááP├ fielΣ se⌠ t∩ 1Φ anΣ thσ pagσ codσ fielΣ se⌠ t∩ 3FΦ t∩ determinσ whicΦ ì
áápage≤ arσ supported¼ whicΦ parameter≤ withiε thσ page≤ arσ changeable¼ anΣ ì
ááthσ supporteΣ lengtΦ oµ eacΦ pagσ prio≥ t∩ issuinτ an∙ MOD┼ SELEC╘ commands.
.lm 1
.cp 5
.aw off
.pm 0
7.2.10.3. Default Values
.aw on
.pm 3
áá┴ P├ fielΣ valuσ oµ 2Φ request≤ thσ targe⌠ returε thσ defaul⌠ value≤ fo≥ thσ ì
pagσ codσ specified« Thσ pagσ requesteΣ shal∞ bσ returneΣ witΦ eacΦ supporteΣ ì
paramete≥ se⌠ t∩ it≤ defaul⌠ value« Parameter≤ no⌠ supporteΣ b∙ thσ targe⌠ ì
shal∞ bσ se⌠ t∩ zero«
.cp 5
.aw off
.pm 0
7.2.10.4. Saved Values
.aw on
.pm 3
áá┴ P├ fielΣ valuσ oµ 3Φ request≤ thσ targe⌠ returε thσ saveΣ value≤ fo≥ thσ ì
pagσ codσ specified« Implementatioε oµ saveΣ pagσ parameter≤ i≤ optional« ì
Thσ pagσ requesteΣ shal∞ bσ returneΣ witΦ thσ parameter≤ se⌠ t∩ thei≥ saveΣ ì
values« Parameter≤ no⌠ supporteΣ b∙ thσ targe⌠ shal∞ bσ se⌠ t∩ zero« Iµ ì
saveΣ value≤ arσ no⌠ implemented¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ ì
CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ additiona∞ ì
sensσ codσ se⌠ t∩ SAVIN╟ PARAMETER╙ NO╘ SUPPORTED.
.cp 6
.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ methoΣ oµ savinτ parameter≤ i≤ vendo≥-specific« Thσ ì
ááparameter≤ arσ preserveΣ iε sucΦ ß manne≥ tha⌠ the∙ arσ retaineΣ wheε thσ ì
áátarge⌠ i≤ powereΣ down« Al∞ savablσ page≤ caε bσ considereΣ saveΣ wheε ß ì
ááMOD┼ SELEC╘ commanΣ issueΣ witΦ thσ S╨ bi⌠ se⌠ t∩ onσ ha≤ returneΣ ß GOO─ ì
áástatu≤ o≥ afte≥ thσ successfu∞ completioε oµ ß FORMA╘ UNI╘ command«
.lφ 1
.cp 5
.aw off
.pm 0
7.2.10.5. Initial Responses
.aw on
.pm 3
ááAfte≥ ß powe≥-u≡ conditioε o≥ harΣ rese⌠ condition¼ thσ targe⌠ shal∞ responΣ ì
iε thσ followinτ manner:
áá(1⌐ Iµ defaul⌠ value≤ arσ requested¼ repor⌠ thσ defaul⌠ values.
áá(2⌐ Iµ saveΣ value≤ arσ requested¼ repor⌠ valiΣ restoreΣ parameters¼ o≥ ì
restorσ thσ parameter≤ anΣ repor⌠ them« Iµ thσ saveΣ parameter≤ arσ no⌠ ablσ ì
t∩ bσ accesseΣ froφ thσ noε-volatilσ vendo≥-specifiπ location¼ terminatσ thσ ì
commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ se⌠ t∩ NO╘ READY« Iµ ì
saveΣ parameter≤ arσ no⌠ implementeΣ responΣ a≤ defineΣ iε 7.2.10.4.
áá(3⌐ Iµ curren⌠ value≤ arσ requesteΣ anΣ curren⌠ value≤ havσ no⌠ beeε sen⌠ b∙ ì
thσ initiato≥ (viß ß MOD┼ SELEC╘ command)¼ thσ targe⌠ ma∙ returε eithe≥ thσ ì
defaul⌠ o≥ saveΣ parameter≤ (iµ implemented)¼ a≤ defineΣ above« Iµ curren⌠ ì
value≤ havσ beeε sent¼ thσ curren⌠ value≤ shal∞ bσ reported«
.lm 1
.cp 35è.aw off
.pm 0
7.2.11. MODE SENSE(10) Command
Table 7-27: MODE SENSE(10) Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (5Ah) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number |ReserveΣ| DB─ ⁿ Reserved |
-----|-----------------------------------------------------------------------|
2 | PC | Page Code |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | Reserved |
-----|-----------------------------------------------------------------------|
7 | (MSB) |
-----|--- Allocation Length ---|
8 | (LSB) |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.aw on
.pm 3
ááThσ MOD┼ SENSE(10⌐ commanΣ (Tablσ ╖-27⌐ provide≤ ß mean≤ fo≥ ß targe⌠ t∩ ì
repor⌠ parameter≤ t∩ thσ initiator« I⌠ i≤ ß complementar∙ commanΣ t∩ thσ MOD┼ ì
SELECT(10⌐ command« Iµ thσ MOD┼ SELECT(10⌐ commanΣ i≤ implementeΣ thσ MOD┼ ì
SENSE(10⌐ commanΣ shal∞ bσ implemented« Seσ thσ MOD┼ SENSE(6⌐ commanΣ fo≥ ß ì
descriptioε oµ thσ field≤ iε thi≤ command.
.cp 35è.aw off
.pm 0
7.2.12. READ BUFFER
Table 7-28: READ BUFFER Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (3Ch) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved | Mode |
-----|-----------------------------------------------------------------------|
2 | Buffer ID |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
- - -|- - Buffer Offset - -|
5 | (LSB) |
-----|-----------------------------------------------------------------------|
6 | (MSB) |
- - -|- - Allocation Length - -|
8 | (LSB) |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.aw on
.pm 3
ááThσ REA─ BUFFE╥ commanΣ (Tablσ ╖-28⌐ i≤ useΣ iε conjunctioε witΦ thσ WRIT┼ ì
BUFFE╥ commanΣ a≤ ß diagnostiπ functioε fo≥ testinτ targe⌠ memor∙ anΣ thσ SCS╔ ì
bu≤ integrity« Thi≤ commanΣ shal∞ no⌠ alte≥ thσ medium.
.cp9
ááThσ functioε oµ thi≤ commanΣ anΣ thσ meaninτ oµ field≤ withiε thσ commanΣ ì
descripto≥ blocδ depenΣ oε thσ content≤ oµ thσ modσ field« Thσ modσ fielΣ i≤ ì
defineΣ iε Tablσ ╖-29.
.aw off
.pm 0
.cp 15
Table 7-29: READ BUFFER Mode Field
===============================================
Mode Description Type
---- ------------------------ ---------------
000b Combined header and data Optional
001b Vendor-specific Vendo≥ specific
010b Data Optional
011b Descriptor Optional
100b Reserved Reserved
101b Reserved Reserved
110b Reserved Reserved
111b Reserved Reserved
===============================================
.aw on
.pm 3
.cp 5
.lm 3
ááIMPLEMENTOR╙ NOTE║ Mode≤ 000Γ anΣ 001Γ arσ includeΣ fo≥ compatibilit∙ witΦ ì
ááproduct≤ tha⌠ werσ designeΣ prio≥ t∩ thσ generatioε oµ thi≤ standard« Somσ ì
ááproduct≤ tha⌠ werσ designeΣ prio≥ t∩ thσ generatioε oµ thi≤ standarΣ ì
áárestric⌠ thσ availablσ lengtΦ t∩ t∩ 6553╡ bytes.
.lm 1
è.cp 5
.aw off
.pm 0
7.2.12.1. Combined Header and Data Mode (000b)
.aw on
.pm 3
ááIε thi≤ mode¼ ß fou≥-bytσ heade≥ followeΣ b∙ datß byte≤ arσ returneΣ t∩ thσ ì
initiato≥ durinτ thσ DAT┴ I╬ phase« Thσ buffe≥ I─ anΣ thσ buffe≥ offse⌠ ì
field≤ arσ reserved«
ááThσ fou≥-bytσ REA─ BUFFE╥ heade≥ (Tablσ ╖-30⌐ i≤ followeΣ b∙ datß byte≤ froφ ì
thσ target'≤ datß buffer.
.cp 15
.aw off
.pm 0
Table 7-30: READ BUFFER Header
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Reserved |
-----|-----------------------------------------------------------------------|
1 | (MSB) |
- - -|- - Buffe≥ Capacit∙ - -|
3 | (LSB) |
==============================================================================
.aw on
.pm 3
ááThσ buffe≥ capacit∙ fielΣ specifie≤ thσ tota∞ numbe≥ oµ datß byte≤ tha⌠ arσ ì
availablσ iε thσ target'≤ datß buffer« Thi≤ numbe≥ i≤ no⌠ reduceΣ t∩ reflec⌠ ì
thσ allocatioε lengtΦ no≥ i≤ i⌠ reduceΣ t∩ reflec⌠ thσ actua∞ numbe≥ oµ byte≤ ì
writteε usinτ thσ WRIT┼ BUFFE╥ command« Followinτ thσ REA─ BUFFE╥ header¼ thσ ì
targe⌠ shal∞ transfe≥ datß froφ it≤ datß buffer« Thσ targe⌠ terminate≤ thσ ì
DAT┴ I╬ phasσ wheε allocatioε lengtΦ byte≤ oµ heade≥ plu≤ datß havσ beeε ì
transferreΣ o≥ wheε al∞ availablσ heade≥ anΣ buffe≥ datß havσ beeε transferreΣ ì
t∩ thσ initiator¼ whicheve≥ i≤ less.
.cp 5
.aw off
.pm 0
7.2.12.2. Vendor-Specific Mode (001b)
.aw on
.pm 3
ááIε thi≤ mode¼ thσ meaninτ oµ thσ buffe≥ ID¼ buffe≥ offset¼ anΣ allocatioε ì
lengtΦ field≤ arσ no⌠ specifieΣ b∙ thi≤ standard.
.cp 13
.aw off
.pm 0
7.2.12.3. Data Mode (010b)
.aw on
.pm 3
ááIε thi≤ mode¼ thσ DAT┴ I╬ phasσ contain≤ buffe≥ data« Thσ buffe≥ I─ fielΣ ì
identifie≤ ß specifiπ buffe≥ withiε thσ targe⌠ froφ whicΦ datß shal∞ bσ ì
transferred« Thσ vendo≥ assign≤ buffe≥ I─ code≤ t∩ buffer≤ withiε thσ target« ì
Buffe≥ I─ zer∩ shal∞ bσ supported« Iµ morσ thaε onσ buffe≥ i≤ supported¼ ì
additiona∞ buffe≥ I─ code≤ shal∞ bσ assigneΣ contiguously¼ beginninτ witΦ one« ì
Buffe≥ I─ codσ assignment≤ fo≥ thσ REA─ BUFFE╥ commanΣ shal∞ bσ thσ samσ a≤ ì
fo≥ thσ WRIT┼ BUFFE╥ command« Iµ aε unsupporteΣ buffe≥ I─ codσ i≤ selected¼ ì
thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ status¼ shal∞ se⌠ thσ sensσ ke∙ t∩ ì
ILLEGA╠ REQUES╘ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ ILLEGA╠ FIEL─ I╬ CDB« ì
Thσ targe⌠ terminate≤ thσ DAT┴ I╬ phasσ wheε allocatioε lengtΦ byte≤ havσ beeε ì
transferreΣ o≥ wheε al∞ thσ availablσ datß froφ thσ buffe≥ ha≤ beeε ì
transferreΣ t∩ thσ initiator¼ whicheve≥ i≤ less.
.cp 6
ááThσ buffe≥ offse⌠ fielΣ contain≤ thσ bytσ offse⌠ withiε thσ specifieΣ buffe≥ ì
wherσ datß shal∞ bσ transferreΣ from« Thσ initiato≥ shoulΣ conforφ t∩ thσ ì
offse⌠ boundar∙ requirement≤ returneΣ iε thσ REA─ BUFFE╥ descripto≥ (seσ ì
7.2.12.4)« Iµ thσ targe⌠ i≤ unablσ t∩ accep⌠ thσ specifieΣ buffe≥ offset¼ i⌠ ì
shal∞ returε CHEC╦ CONDITIO╬ status¼ shal∞ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ ì
REQUES╘ anΣ se⌠ thσ additiona∞ sensσ codσ t∩ ILLEGA╠ FIEL─ I╬ CDB.è
.cp 5
.aw off
.pm 0
7.2.12.4. Descriptor Mode (011b)
.aw on
.pm 3
ááIε thi≤ mode¼ ß maximuφ oµ fou≥ byte≤ oµ REA─ BUFFE╥ descripto≥ informatioε ì
arσ returned« Thσ targe⌠ shal∞ returε thσ descripto≥ informatioε fo≥ thσ ì
buffe≥ specifieΣ b∙ thσ buffe≥ I─ (seσ thσ descriptioε oµ thσ buffe≥ I─ iε ì
7.2.12.3)« Iµ therσ i≤ n∩ buffe≥ associateΣ witΦ thσ specifieΣ buffe≥ ID¼ thσ ì
targe⌠ shal∞ returε al∞ zero≤ iε thσ REA─ BUFFE╥ descriptor« Thσ buffe≥ ì
offse⌠ fielΣ i≤ reserveΣ iε thi≤ mode« Thσ allocatioε lengtΦ shoulΣ bσ se⌠ t∩ ì
fou≥ o≥ greater« Thσ targe⌠ shal∞ transfe≥ thσ lesse≥ oµ thσ allocatioε ì
lengtΦ o≥ fou≥ byte≤ oµ REA─ BUFFE╥ descriptor« Thσ REA─ BUFFE╥ descripto≥ i≤ ì
defineΣ a≤ showε iε Tablσ ╖-31.
.cp 15
.aw off
.pm 0
Table 7-31: READ BUFFER Descriptor
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Offset Boundary |
-----|-----------------------------------------------------------------------|
1 | (MSB) |
- - -|- - Buffer Capacity - -|
3 | (LSB) |
==============================================================================
.aw on
.pm 3
.cp 5
ááThσ offse⌠ boundar∙ fielΣ return≤ thσ boundar∙ alignmen⌠ withiε thσ selecteΣ ì
buffe≥ fo≥ subsequen⌠ WRIT┼ BUFFE╥ anΣ REA─ BUFFE╥ commands« Thσ valuσ ì
containeΣ iε thσ offse⌠ boundar∙ fielΣ shal∞ bσ interpreteΣ a≤ ß powe≥ oµ two.
.cp 20
ááThσ valuσ containeΣ iε thσ buffe≥ offse⌠ fielΣ oµ subsequen⌠ WRIT┼ BUFFE╥ ì
anΣ REA─ BUFFE╥ command≤ shoulΣ bσ ß multiplσ oµ 2offse⌠ boundaryö a≤ showε iε ì
Tablσ ╖-32.
.aw off
.pm 0
.cp 15
Table 7-32: Buffer Offset Boundary
==============================================================================
Offset
Boundary 2Offset Boundary Buffer Offsets
-------- ---------------- --------------------------------------
0 20 = 1 Byte boundaries
1 21 = 2 Even-byte boundaries
2 22 = 4 Four-byte boundaries
3 23 = 8 Eight-byte boundaries
4 24 = 16 16-byte boundaries
. . .
. . .
. . .
FFh Not Applicable 0 is the only supported buffer offset.
==============================================================================
.aw on
.pm 3
.cp 2
ááThσ buffe≥ capacit∙ fielΣ shal∞ returε thσ sizσ oµ thσ selecteΣ buffe≥ iε ì
bytes.
è.cp 8
.lm 3
ááIMPLEMENTOR╙ NOTE║ Iε ß multΘ-taskinτ system¼ ß buffe≥ ma∙ bσ altereΣ ì
áábetweeε thσ WRIT┼ BUFFE╥ anΣ REA─ BUFFE╥ command≤ b∙ anothe≥ task« Buffe≥ ì
áátestinτ application≤ ma∙ wisΦ t∩ insurσ tha⌠ onl∙ ß singlσ tasδ i≤ active« ì
ááUsσ oµ reservation≤ (t∩ al∞ logica∞ unit≤ oε thσ device⌐ o≥ linkeΣ command≤ ì
ááma∙ als∩ bσ helpfu∞ iε avoidinτ buffe≥ alteratioε betweeε thesσ tw∩ ì
áácommands«
.lm 1
.cp 35
.aw off
.pm 0
7.2.13. RECEIVE DIAGNOSTIC RESULTS Command
Table 7-33: RECEIVE DIAGNOSTIC RESULTS Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (1Ch) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
-----|--- Allocation Length ---|
4 | (LSB) |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ (Tablσ ╖-33⌐ request≤ analysi≤ datß ì
bσ sen⌠ t∩ thσ initiato≥ afte≥ completioε oµ ß SEN─ DIAGNOSTI├ commanΣ (seσ ì
7.2.15)« Iµ thσ targe⌠ support≤ thσ optiona∞ pagσ forma⌠ thσ pagσ codσ fielΣ ì
sen⌠ iε thσ previou≤ SEN─ DIAGNOSTI├ commanΣ specifie≤ thσ forma⌠ oµ thσ ì
returneΣ data«
.lm3
ááIMPLEMENTOR╙ NOTES║
áá(1⌐ T∩ insurσ tha⌠ thσ diagnostiπ commanΣ informatioε i≤ no⌠ destroyeΣ b∙ ß ì
áácommanΣ sen⌠ froφ anothe≥ initiator¼ thσ SEN─ DIAGNOSTI├ commanΣ shoulΣ ì
ááeithe≥ bσ linkeΣ t∩ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ o≥ thσ logica∞ ì
ááuni⌠ shoulΣ bσ reserved.
áá(2⌐ AlthougΦ diagnostiπ softwarσ i≤ generall∙ devicσ-specific¼ thi≤ commanΣ ì
ááanΣ thσ SEN─ DIAGNOSTI├ commanΣ providσ ß mean≤ t∩ isolatσ thσ operatinτ ì
áásysteφ softwarσ froφ thσ devicσ-specifiπ diagnostiπ software« Hencσ thσ ì
ááoperatinτ systeφ caε remaiε devicσ-independent« Thi≤ als∩ allow≤ diagnostiπ ì
áásoftwarσ t∩ bσ morσ easil∙ transferreΣ t∩ othe≥ operatinτ systems.
.lm 1
.pm 3
ááSeσ 7.3.▒ fo≥ RECEIV┼ DIAGNOSTI├ RESULT╙ pagσ forma⌠ definitions.
.cp 25è.aw off
.pm 0
7.2.14. REQUEST SENSE Command
Table 7-34: REQUEST SENSE Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (03h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Allocation Length |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ REQUES╘ SENS┼ commanΣ (Tablσ ╖-34⌐ request≤ tha⌠ thσ targe⌠ transfe≥ ì
sensσ datß t∩ thσ initiator.
ááThσ sensσ data:
áá(1⌐ shal∞ bσ availablσ iµ thσ previou≤ commanΣ t∩ thσ specifieΣ I_T_° nexu≤ ì
terminateΣ witΦ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ status
áá(2⌐ shal∞ bσ availablσ iµ othe≥ informatioε (e.g.¼ mediuφ position⌐ i≤ ì
availablσ iε an∙ field
áá(3⌐ ma∙ bσ availablσ iµ thσ previou≤ commanΣ t∩ thσ specifieΣ I_T_° nexu≤ ì
endeΣ witΦ aε unexpecteΣ BU╙ FRE┼ erro≥ (5.1.1).
ááIµ thσ targe⌠ ha≤ n∩ sensσ datß availablσ t∩ return¼ i⌠ shal∞ returε ß sensσ ì
ke∙ oµ N╧ SENS┼ anΣ aε additiona∞ sensσ codσ oµ N╧ ADDITIONA╠ SENS┼ ì
INFORMATION.
ááThσ sensσ datß shal∞ bσ preserveΣ b∙ thσ targe⌠ fo≥ thσ initiato≥ unti∞ ì
retrieveΣ b∙ thσ REQUES╘ SENS┼ commanΣ o≥ unti∞ thσ receip⌠ oµ an∙ othe≥ ì
commanΣ fo≥ thσ samσ I_T_° nexu≤ (seσ 6.6)« Sensσ datß shal∞ bσ cleareΣ upoε ì
receip⌠ oµ an∙ subsequen⌠ commanΣ (includinτ REQUES╘ SENSE⌐ t∩ thσ samσ I_T_° ì
nexus.
.pm 0
.lm 3
ááIMPLEMENTOR╙ NOTE║ Somσ targe⌠ implementation≤ d∩ no⌠ updatσ sensσ datß ì
ááexcep⌠ oε command≤ tha⌠ returε CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ status« ì
ááThu≤ wheε pollinτ fo≥ ß logica∞ uni⌠ t∩ becomσ ready¼ thσ initiato≥ shoulΣ ì
ááissuσ TES╘ UNI╘ READ┘ command≤ unti∞ GOO─ statu≤ i≤ returned« Iµ desired¼ ì
ááthσ initiato≥ ma∙ issuσ REQUES╘ SENS┼ command≤ afte≥ thσ TES╘ UNI╘ READ┘ ì
áácommand≤ tha⌠ returε CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ statu≤ t∩ obtaiε ì
ááthσ sensσ data.
.pm 3
.lm 1
.cp 5èááThσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ fo≥ ß REQUES╘ SENS┼ commanΣ ì
onl∙ t∩ repor⌠ error≤ specifiπ t∩ thσ commanΣ itself« Fo≥ example:
áá(1⌐ ┴ noε-zer∩ reserveΣ bi⌠ i≤ detecteΣ iε thσ commanΣ descripto≥ block.
áá(2⌐ Aε unrecovereΣ parit∙ erro≥ i≤ detecteΣ oε thσ datß bus«
áá(3⌐ ┴ targe⌠ malfunctioε prevent≤ returε oµ thσ sensσ data.
ááIµ ß recovereΣ erro≥ occur≤ durinτ thσ executioε oµ thσ REQUES╘ SENS┼ ì
command¼ thσ targe⌠ shal∞ returε thσ sensσ datß witΦ GOO─ status« Iµ ß targe⌠ ì
return≤ CHEC╦ CONDITIO╬ statu≤ fo≥ ß REQUES╘ SENS┼ commanΣ thσ sensσ datß ma∙ ì
bσ invalid«
.pm 0
.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ sensσ datß appropriatσ t∩ thσ selectioε oµ aε ì
ááinvaliΣ logica∞ uni⌠ i≤ defineΣ iε 6.5.3.
.pm 3
.lm 1
ááTarget≤ shal∞ bσ capablσ oµ returninτ eighteeε byte≤ oµ datß iε responsσ t∩ ì
ß REQUES╘ SENS┼ command« Iµ thσ allocatioε lengtΦ i≤ eighteeε o≥ greate≥ anΣ ì
ß targe⌠ return≤ les≤ thaε eighteeε byte≤ oµ datß thσ initiato≥ shoulΣ assumσ ì
tha⌠ thσ byte≤ no⌠ transferreΣ woulΣ havσ beeε zero≤ haΣ thσ targe⌠ returneΣ ì
thosσ bytes« Initiator≤ caε determinσ ho≈ mucΦ sensσ datß ha≤ beeε returneΣ ì
b∙ examininτ thσ allocatioε lengtΦ paramete≥ iε thσ commanΣ descripto≥ blocδ ì
anΣ thσ additiona∞ sensσ lengtΦ iε thσ sensσ data« Target≤ shal∞ no⌠ adjus⌠ ì
thσ additiona∞ sensσ lengtΦ t∩ reflec⌠ truncatioε iµ thσ allocatioε lengtΦ i≤ ì
les≤ thaε thσ sensσ datß available«
.cp 40è.aw off
.pm 0
Table 7-35: Error Codes 70h and 71h Sense Data Format
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Valid | Error Code (70h or 71h) |
-----|-----------------------------------------------------------------------|
1 | Segment Number |
-----|-----------------------------------------------------------------------|
2 |Filemark| EOM | ILI |Reserved| Sense Key |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
- - -|- - Information - -|
6 | (LSB) |
-----|-----------------------------------------------------------------------|
7 | Additional Sense Length (n-7) |
-----|-----------------------------------------------------------------------|
8 | (MSB) |
- - -|- - Command-Specific Information - -|
11 | (LSB) |
-----|-----------------------------------------------------------------------|
12 | Additional Sense Code |
-----|-----------------------------------------------------------------------|
13 | Additional Sense Code Qualifier |
-----|-----------------------------------------------------------------------|
14 | Field Replaceable Unit Code |
-----|-----------------------------------------------------------------------|
15 to| SKSV | |
- - -|---------- - Sense-Key Specific - -|
17 | |
-----|-----------------------------------------------------------------------|
18 to| |
- - -|- - Additional Sense Bytes - -|
n | |
==============================================================================
.aw on
.pm 3
áá┴ valiΣ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ informatioε fielΣ i≤ no⌠ a≤ defineΣ ì
iε thi≤ standard« ┴ valiΣ bi⌠ oµ onσ indicate≤ thσ informatioε fielΣ contain≤ ì
valiΣ informatioε a≤ defineΣ iε thi≤ standard« Target≤ shal∞ implemen⌠ thσ ì
valiΣ bit.
.cp5
ááThσ sensσ datß forma⌠ fo≥ erro≥ code≤ 70Φ (curren⌠ errors⌐ anΣ 71Φ (deferreΣ ì
errors⌐ arσ defineΣ iε Tablσ ╖-35« Erro≥ codσ value≤ oµ 72Φ t∩ 7EΦ arσ ì
reserved« Erro≥ codσ 7FΦ i≤ fo≥ ß vendo≥-specifiπ sensσ datß format« Target≤ ì
shal∞ implemen⌠ erro≥ codσ 70h╗ implementatioε oµ erro≥ codσ 71Φ i≤ optional« ì
Erro≥ codσ value≤ oµ 00Φ t∩ 6FΦ arσ no⌠ defineΣ b∙ thi≤ standarΣ anΣ thei≥ usσ ì
i≤ no⌠ recommended«
.cp 4
ááThσ segmen⌠ numbe≥ fielΣ contain≤ thσ numbe≥ oµ thσ curren⌠ segmen⌠ ì
descripto≥ iµ thσ REQUES╘ SENS┼ commanΣ i≤ iε responsσ t∩ ß COPY¼ COMPARE¼ o≥ ì
COP┘ AN─ VERIF┘ command« U≡ t∩ 25╢ segment≤ arσ supporteΣ beginninτ witΦ ì
segmen⌠ zero«
è.cp 6
ááThσ filemarδ bi⌠ i≤ mandator∙ fo≥ sequentia∞-acces≤ device≤ anΣ thi≤ bi⌠ i≤ ì
reserveΣ fo≥ al∞ othe≥ devicσ types« ┴ filemarδ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
curren⌠ commanΣ ha≤ reaΣ ß filemarδ o≥ setmark« Thσ additiona∞ sensσ codσ ì
fielΣ ma∙ bσ useΣ t∩ indicatσ whethe≥ ß filemarδ o≥ setmarδ wa≤ read« ì
Reportinτ oµ setmark≤ i≤ optiona∞ anΣ indicateΣ b∙ thσ RSmδ bi⌠ fo≥ ì
sequentia∞-acces≤ device≤ iε thσ configuratioε parameter≤ pagσ (seσ 9.3.3).
.cp3
ááThσ enΣ-oµ-mediuφ (EOM⌐ bi⌠ i≤ mandator∙ fo≥ sequentia∞-acces≤ anΣ printe≥ ì
device≤ anΣ thi≤ bi⌠ i≤ reserveΣ fo≥ al∞ othe≥ devicσ types« Aε EO═ bi⌠ oµ ì
onσ indicate≤ tha⌠ aε enΣ-oµ-mediuφ conditioε (enΣ-oµ-partition¼ beginninτ-oµ-ì
partition¼ ou⌠-oµ-paper¼ etc.⌐ exists« Fo≥ sequentia∞-acces≤ devices¼ thi≤ ì
bi⌠ indicate≤ tha⌠ thσ uni⌠ i≤ a⌠ o≥ pas⌠ thσ earl∙-warninτ iµ thσ directioε ì
wa≤ forwarΣ o≥ tha⌠ thσ commanΣ coulΣ no⌠ bσ completeΣ becausσ beginninτ-oµ-ì
partitioε wa≤ encountereΣ iµ thσ directioε wa≤ reverse«
ááAε incorrec⌠ lengtΦ indicato≥ (ILI⌐ bi⌠ oµ onσ usuall∙ indicate≤ tha⌠ thσ ì
requesteΣ logica∞ blocδ lengtΦ diΣ no⌠ matcΦ thσ logica∞ blocδ lengtΦ oµ thσ ì
datß oε thσ medium.
.cp 3
ááThσ sensσ key¼ additiona∞ sensσ codσ anΣ additiona∞ sensσ codσ qualifie≥ ì
providσ ß hierarch∙ oµ information« Thσ intentioε oµ thσ hierarch∙ i≤ t∩ ì
providσ ß to≡-dowε approacΦ fo≥ aε initiato≥ t∩ determinσ informatioε relatinτ ì
t∩ thσ erro≥ anΣ exceptioε conditions« Thσ sensσ ke∙ provide≤ generiπ ì
categorie≤ iε whicΦ erro≥ anΣ exceptioε condition≤ caε bσ reported« ì
Initiator≤ woulΣ typicall∙ usσ sensσ key≤ fo≥ higΦ leve∞ erro≥ recover∙ ì
procedures« Additiona∞ sensσ code≤ providσ furthe≥ detai∞ describinτ thσ ì
sensσ key« Additiona∞ sensσ codσ qualifier≤ adΣ furthe≥ detai∞ t∩ thσ ì
additiona∞ sensσ code« Thσ additiona∞ sensσ codσ anΣ additiona∞ sensσ codσ ì
qualifie≥ caε bσ useΣ b∙ initiator≤ wherσ sophisticateΣ erro≥ recover∙ ì
procedure≤ requirσ detaileΣ informatioε describinτ thσ erro≥ anΣ exceptioε ì
conditions.
.cp 3
ááThσ sensσ ke∙ fielΣ i≤ mandator∙ anΣ indicate≤ generiπ informatioε ì
describinτ aε erro≥ o≥ exceptioε condition« Thσ sensσ key≤ arσ defineΣ iε ì
Table≤ ╖-3╣ anΣ ╖-40.
.cp 4
ááThσ content≤ oµ thσ informatioε fielΣ i≤ devicσ-typσ o≥ commanΣ specifiπ anΣ ì
i≤ defineΣ withiε thσ appropriatσ sectioε fo≥ thσ devicσ typσ o≥ commanΣ oµ ì
interest« Target≤ shal∞ implemen⌠ thσ informatioε field« Unles≤ specifieΣ ì
otherwise¼ thi≤ fielΣ contains:
.cp 3
áá(1⌐ Thσ unsigneΣ logica∞ blocδ addres≤ associateΣ witΦ thσ sensσ key¼ fo≥ ì
direc⌠-acces≤ device≤ (Devicσ Typσ 0)¼ writσ-oncσ device≤ (Devicσ Typσ 4)¼ C─-ì
RO═ device≤ (Devicσ Typσ 5)¼ anΣ optica∞ memor∙ device≤ (Devicσ Typσ 7).
.cp 5
áá(2⌐ Thσ differencσ (residue⌐ oµ thσ requesteΣ lengtΦ minu≤ thσ actua∞ lengtΦ ì
iε eithe≥ byte≤ o≥ blocks¼ a≤ determineΣ b∙ thσ command¼ fo≥ sequentia∞-acces≤ ì
device≤ (Devicσ Typσ 1)¼ printe≥ device≤ (Devicσ Typσ 2)¼ processo≥ device≤ ì
(Devicσ Typσ 3⌐ anΣ somσ direc⌠ acces≤ devicσ commands¼ excep⌠ a≤ defineΣ fo≥ ì
(4⌐ below« (Negativσ value≤ arσ indicateΣ b∙ two'≤ complemen⌠ notation.)
.cp 3
áá(3⌐ Thσ differencσ (residue⌐ oµ thσ requesteΣ numbe≥ oµ block≤ minu≤ thσ ì
actua∞ numbe≥ oµ block≤ copieΣ o≥ compareΣ fo≥ thσ curren⌠ segmen⌠ descripto≥ ì
oµ ß COPY¼ COMPARE¼ o≥ COP┘ AN─ VERIF┘ command.
.cp 10èáá(4⌐ Fo≥ sequentia∞-acces≤ device≤ operatinτ iε buffereΣ mode≤ 1Φ o≥ 2Φ tha⌠ ì
detec⌠ aε unrecoverablσ writσ erro≥ wheε unwritteε datß blocks¼ filemarks¼ o≥ ì
setmark≤ remaiε iε thσ buffer¼ thσ valuσ oµ thσ informatioε fielΣ fo≥ al∞ ì
command≤ shal∞ be:
.pm 6
.lm 3
ááááá(a⌐ thσ tota∞ numbe≥ oµ datß blocks¼ filemarks¼ anΣ setmark≤ iε thσ ì
áábuffe≥ iµ thσ devicσ i≤ iε fixeΣ blocδ modσ (blocδ lengtΦ fielΣ oµ thσ MOD┼ ì
ááSENS┼ blocδ descripto≥ i≤ noε-zer∩ anΣ thσ fixeΣ bi⌠ oµ thσ WRIT┼ commanΣ i≤ ì
ááone)«
ááááá(b⌐ thσ numbe≥ oµ byte≤ iε thσ buffer¼ includinτ filemark≤ anΣ setmarks¼ ì
ááiµ thσ devicσ i≤ iε variablσ modσ (thσ fixeΣ bi⌠ oµ thσ WRIT┼ commanΣ i≤ ì
áázero)«
.lm 1
.pm 3
.cp 4
ááThσ additiona∞ sensσ lengtΦ fielΣ indicate≤ thσ numbe≥ oµ additiona∞ sensσ ì
byte≤ t∩ follow« Iµ thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ ì
to∩ smal∞ t∩ transfe≥ al∞ oµ thσ additiona∞ sensσ bytes¼ thσ additiona∞ sensσ ì
lengtΦ i≤ no⌠ adjusteΣ t∩ reflec⌠ thσ truncation.
.cp 4
ááThσ commanΣ-specifiπ informatioε fielΣ contain≤ informatioε tha⌠ depend≤ oε ì
thσ commanΣ whicΦ wa≤ executed« Furthe≥ meaninτ fo≥ thi≤ fielΣ i≤ defineΣ ì
withiε thσ commanΣ description« Thσ commanΣ-specifiπ informatioε fielΣ i≤ ì
mandator∙ iµ thσ targe⌠ support≤ an∙ oµ thσ followinτ commands║ COPY¼ ì
COMPARE¼ COP┘ AN─ VERIFY¼ SEARC╚ DATA¼ anΣ REASSIG╬ BLOCKS.
.cp 4
ááThσ additiona∞ sensσ codσ fielΣ indicate≤ furthe≥ informatioε relateΣ t∩ thσ ì
erro≥ o≥ exceptioε conditioε reporteΣ iε thσ sensσ ke∙ field« Target≤ shal∞ ì
suppor⌠ thσ additiona∞ sensσ codσ field« Suppor⌠ oµ thσ additiona∞ sensσ ì
code≤ no⌠ explicitl∙ requireΣ b∙ thi≤ standarΣ i≤ optional« ┴ lis⌠ oµ ì
additiona∞ sensσ code≤ i≤ iε Tablσ ╖-41« Iµ thσ targe⌠ doe≤ no⌠ havσ furthe≥ ì
informatioε relateΣ t∩ thσ erro≥ o≥ exceptioε condition¼ thσ additiona∞ sensσ ì
codσ i≤ se⌠ t∩ N╧ ADDITIONA╠ SENS┼ INFORMATION.
.cp 4
ááThσ additiona∞ sensσ codσ qualifie≥ indicate≤ detaileΣ informatioε relateΣ ì
t∩ thσ additiona∞ sensσ code« Thσ additiona∞ sensσ codσ qualifie≥ i≤ ì
optional« Iµ thσ erro≥ o≥ exceptioε conditioε i≤ reportablσ b∙ thσ devicσ thσ ì
valuσ returneΣ shal∞ bσ a≤ specifieΣ iε Tablσ ╖-41« Iµ thσ targe⌠ doe≤ no⌠ ì
havσ detaileΣ informatioε relateΣ t∩ thσ erro≥ o≥ exceptioε condition¼ thσ ì
additiona∞ sensσ codσ qualifie≥ i≤ se⌠ t∩ zero.
.cp 5
ááNoε-zer∩ value≤ iε thσ fielΣ replaceablσ uni⌠ codσ fielΣ arσ useΣ t∩ definσ ì
ß devicσ-specifiπ mechanisφ o≥ uni⌠ tha⌠ ha≤ failed« ┴ valuσ oµ zer∩ iε thi≤ ì
fielΣ shal∞ indicatσ tha⌠ n∩ specifiπ mechanisφ o≥ uni⌠ ha≤ beeε identifieΣ t∩ ì
havσ faileΣ o≥ tha⌠ thσ datß i≤ no⌠ available« Thσ fielΣ replaceablσ uni⌠ ì
codσ fielΣ i≤ optional« Thσ forma⌠ oµ thi≤ informatioε i≤ no⌠ specifieΣ b∙ ì
thi≤ standard« Additiona∞ informatioε abou⌠ thσ fielΣ replaceablσ uni⌠ ma∙ bσ ì
availablσ iε thσ ASCI╔ informatioε pagσ (seσ 7.3.4.2)¼ iµ supporteΣ b∙ thσ ì
target«
ááThσ sensσ-ke∙ specifiπ byte≤ arσ describeΣ iε 7.2.14.1¼ below.
ááThσ additiona∞ sensσ byte≤ fielΣ ma∙ contaiε commanΣ specifiπ data¼ ì
periphera∞ devicσ specifiπ data¼ o≥ vendo≥-specifiπ datß tha⌠ furthe≥ define≤ ì
thσ naturσ oµ thσ CHEC╦ CONDITIO╬ status.
.cp 10è.aw off
.pm 0
7.2.14.1. Sense-Key Specific
.aw on
.pm 3
ááThσ sensσ-ke∙ specifiπ fielΣ i≤ defineΣ b∙ thi≤ standarΣ wheε thσ valuσ oµ ì
thσ sensσ-ke∙ specifiπ valiΣ (SKSV⌐ bi⌠ i≤ one« Thσ sensσ-ke∙ specifiπ valiΣ ì
bi⌠ anΣ sensσ-ke∙ specifiπ fielΣ arσ optional« Thσ definitioε oµ thi≤ fielΣ ì
i≤ determineΣ b∙ thσ valuσ oµ thσ sensσ ke∙ field« Thi≤ fielΣ i≤ reserveΣ fo≥ ì
sensσ key≤ no⌠ describeΣ below« Aε SKS╓ valuσ oµ zer∩ indicate≤ tha⌠ thi≤ ì
fielΣ i≤ no⌠ defineΣ b∙ thi≤ standard«
.cp 4
ááIµ thσ sensσ ke∙ fielΣ i≤ se⌠ t∩ ILLEGA╠ REQUES╘ anΣ thσ SKS╓ bi⌠ i≤ se⌠ t∩ ì
one¼ thσ sensσ-ke∙ specifiπ fielΣ shal∞ bσ defineΣ a≤ showε iε Tablσ ╖-36« ì
Thesσ FielΣ Pointe≥ fielΣ indicate≤ whicΦ illega∞ parameter≤ iε commanΣ ì
descripto≥ block≤ o≥ datß parameter≤ arσ iε error.
.cp 12
.aw off
.pm 0
Table 7-36: Field Pointer Bytes
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
15 ⁿ SKSV | C/D |Reserved|Reserved| BPV | Bit Pointer |
-----|-----------------------------------------------------------------------|
16 | (MSB) |
-----|--- Field Pointer ---|
17 | (LSB) |
==============================================================================
.aw on
.pm 3
áá┴ commanΣ datß (C/D⌐ bi⌠ oµ onσ indicate≤ tha⌠ thσ illega∞ paramete≥ i≤ iε ì
thσ commanΣ descripto≥ block« ┴ C/─ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ illega∞ ì
paramete≥ i≤ iε thσ datß parameter≤ sen⌠ b∙ thσ initiato≥ durinτ thσ DAT┴ OU╘ ì
phase.
áá┴ bi⌠ pointe≥ valiΣ (BPV⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ valuσ iε thσ bi⌠ ì
pointe≥ fielΣ i≤ no⌠ valid« ┴ BP╓ bi⌠ oµ onσ indicate≤ tha⌠ thσ bi⌠ pointe≥ ì
fielΣ specifie≤ whicΦ bi⌠ oµ thσ bytσ designateΣ b∙ thσ fielΣ pointe≥ fielΣ i≤ ì
iε error« Wheε ß multiplσ-bi⌠ fielΣ i≤ iε error¼ thσ bi⌠ pointe≥ fielΣ shal∞ ì
poin⌠ t∩ thσ mos⌠-significan⌠ (lef⌠-most⌐ bi⌠ oµ thσ field.
ááThσ fielΣ pointe≥ fielΣ indicate≤ whicΦ bytσ oµ thσ commanΣ descripto≥ blocδ ì
o≥ oµ thσ paramete≥ datß wa≤ iε error« Byte≤ arσ numbereΣ startinτ froφ zero¼ ì
a≤ showε iε thσ table≤ describinτ thσ command≤ anΣ parameters« Wheε ß ì
multiplσ-bytσ fielΣ i≤ iε error¼ thσ pointe≥ shal∞ poin⌠ t∩ thσ mos⌠¡ ì
significan⌠ (lef⌠-most⌐ bytσ oµ thσ field.
.cp 2
.lm 3
ááIMPLEMENTOR╙ NOTE║ Byte≤ identifieΣ a≤ beinτ iε erro≥ arσ no⌠ necessaril∙ ì
ááthσ placσ tha⌠ ha≤ t∩ bσ changeΣ t∩ correc⌠ thσ problem.
.lm 1
.cp 3
ááIµ thσ sensσ ke∙ i≤ RECOVERE─ ERROR¼ HARDWAR┼ ERRO╥ o≥ MEDIU═ ERRO╥ anΣ iµ ì
thσ SKS╓ bi⌠ i≤ one¼ thσ sensσ-ke∙ specifiπ fielΣ shal∞ bσ defineΣ a≤ showε iε ì
Tablσ ╖-37«
.cp 14è.aw off
.pm 0
Table 7-37: Actual Retry Count Bytes
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
15 | SKSV | Reserved |
-----|-----------------------------------------------------------------------|
16 | (MSB) |
-----|--- Actual Retry Count ---|
17 | (LSB) |
==============================================================================
.aw on
.pm 3
.cp 3
ááThσ actua∞ retr∙ coun⌠ fielΣ return≤ implementatioε-specifiπ informatioε oε ì
thσ actua∞ numbe≥ oµ retrie≤ oµ thσ recover∙ algorithφ useΣ iε attemptinτ t∩ ì
recove≥ aε erro≥ o≥ exceptioε condition«
.cp 5
.lm 3
ááIMPLEMENTOR╙ NOTE║ I⌠ i≤ recommendeΣ tha⌠ thi≤ fielΣ relatσ t∩ thσ retr∙ ì
áácoun⌠ field≤ withiε thσ erro≥ recover∙ pagσ oµ thσ MOD┼ SELEC╘ command.
.lm1
ááIµ thσ sensσ ke∙ i≤ NO╘ READ┘ anΣ thσ SKS╓ bi⌠ i≤ one¼ thσ sensσ-ke∙ ì
specifiπ fielΣ shal∞ bσ defineΣ a≤ showε iε Tablσ ╖-38« Thesσ field≤ arσ onl∙ ì
defineΣ fo≥ thσ FORMA╘ UNI╘ commanΣ witΦ thσ ImmeΣ bi⌠ se⌠ t∩ one.
.cp 15
.aw off
.pm 0
Table 7-38: Format Progress Indication Bytes
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
15 | SKSV | Reserved |
-----|-----------------------------------------------------------------------|
16 | (MSB) |
-----|--- Progress Indication ---|
17 | (LSB) |
==============================================================================
.aw on
.pm 3
ááThσ progres≤ indicatioε fielΣ i≤ ß percen⌠ completσ indicatioε iε whicΦ thσ ì
returneΣ valuσ i≤ thσ numerato≥ tha⌠ ha≤ 6553╢ (10000h⌐ a≤ it≤ denominator« ì
Thσ progres≤ indicatioε shal∞ bσ aε baseΣ upoε thσ tota∞ forma⌠ operatioε ì
includinτ an∙ certificatioε o≥ initializatioε operations.
.lm 3
ááIMPLEMENTOR╙ NOTE║ I⌠ i≤ intendeΣ tha⌠ thσ progres≤ indicatioε bσ timσ ì
áárelated« However¼ sincσ forma⌠ timσ varie≤ witΦ thσ numbe≥ oµ defect≤ ì
ááencountered¼ etc.¼ i⌠ i≤ reasonablσ fo≥ thσ targe⌠ t∩ assigε value≤ t∩ ì
áávariou≤ step≤ withiε thσ process« Thσ granularit∙ oµ thesσ step≤ shoulΣ bσ ì
áásmal∞ enougΦ t∩ providσ reasonablσ assurance≤ t∩ thσ initiato≥ tha⌠ progres≤ ì
áái≤ beinτ made.
.lm 1
.cp 8è.aw off
.pm 0
7.2.14.2. Deferred Errors
.pm 3
.aw on
ááErro≥ codσ 70Φ indicate≤ tha⌠ thσ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ ì
statu≤ returneΣ i≤ thσ resul⌠ oµ aε erro≥ o≥ exceptioε conditioε oε thσ ì
commanΣ tha⌠ returneΣ thσ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ statu≤ o≥ aε ì
unexpecteΣ bu≤ freσ condition« Thi≤ include≤ error≤ generateΣ durinτ ì
executioε oµ thσ commanΣ b∙ thσ actua∞ executioε process« I⌠ als∩ include≤ ì
error≤ no⌠ relateΣ t∩ an∙ commanΣ tha⌠ arσ firs⌠ observeΣ durinτ executioε oµ ì
ß command« Example≤ oµ thi≤ latte≥ typσ oµ erro≥ includσ disδ serv∩-mechanisφ ì
ofµ-tracδ error≤ anΣ powe≥-u≡ tes⌠ errors«
ááErro≥ Codσ 71Φ (deferreΣ error⌐ indicate≤ tha⌠ thσ CHEC╦ CONDITIO╬ statu≤ ì
returneΣ i≤ thσ resul⌠ oµ aε erro≥ o≥ exceptioε conditioε tha⌠ occurreΣ durinτ ì
executioε oµ ß previou≤ commanΣ fo≥ whicΦ GOO─ statu≤ ha≤ alread∙ beeε ì
returned« SucΦ command≤ arσ associateΣ witΦ usσ oµ thσ immediatσ bit¼ witΦ ì
somσ form≤ oµ caching¼ anΣ witΦ multiplσ commanΣ buffering« Target≤ tha⌠ ì
implemen⌠ thesσ feature≤ arσ requireΣ t∩ implemen⌠ deferreΣ erro≥ reporting.
ááThσ deferreΣ erro≥ indicatioε ma∙ bσ sen⌠ a⌠ ß timσ selecteΣ b∙ thσ targe⌠ ì
througΦ thσ asynchronou≤ even⌠ notificatioε proces≤ (seσ 6.5.5⌐ iµ AE╬ i≤ ì
supporteΣ b∙ botΦ thσ initiato≥ anΣ target«
ááIµ AE╬ i≤ no⌠ supported¼ thσ deferreΣ erro≥ ma∙ bσ indicateΣ b∙ returninτ ì
CHEC╦ CONDITIO╬ statu≤ t∩ thσ thσ appropriatσ initiato≥ a≤ describeΣ below« ì
Thσ subsequen⌠ executioε oµ ß REQUES╘ SENS┼ commanΣ shal∞ returε thσ deferreΣ ì
erro≥ sensσ information.
ááIµ CHEC╦ CONDITIO╬ statu≤ fo≥ ß deferreΣ erro≥ i≤ returned¼ thσ curren⌠ ì
commanΣ ha≤ no⌠ performeΣ an∙ storagσ operation≤ o≥ outpu⌠ operation≤ t∩ thσ ì
media« Afte≥ thσ targe⌠ detect≤ ß deferreΣ erro≥ conditioε oε ß logica∞ unit¼ ì
i⌠ shal∞ returε ß deferreΣ erro≥ accordinτ t∩ thσ rule≤ describeΣ below║
áá(1⌐ Iµ ß deferreΣ erro≥ caε bσ recovereΣ witΦ n∩ externa∞ systeφ ì
intervention¼ ß deferreΣ erro≥ indicatioε shal∞ no⌠ bσ posteΣ unles≤ requireΣ ì
b∙ thσ erro≥ handlinτ parameter≤ oµ thσ MOD┼ SELEC╘ command« Thσ occurrencσ ì
oµ thσ erro≥ ma∙ bσ loggeΣ iµ statistica∞ o≥ erro≥ logginτ i≤ supported.
áá(2⌐ Iµ ß deferreΣ erro≥ caε bσ associateΣ witΦ ß causinτ initiato≥ anΣ witΦ ì
ß particula≥ functioε o≥ ß particula≥ subse⌠ oµ data¼ anΣ thσ erro≥ i≤ eithe≥ ì
unrecovereΣ o≥ requireΣ t∩ bσ reporteΣ b∙ thσ modσ parameters¼ ß deferreΣ ì
erro≥ indicatioε shal∞ bσ returneΣ t∩ thσ causinτ initiator« Iµ aε initiato≥ ì
othe≥ thaε thσ causinτ initiato≥ attempt≤ acces≤ t∩ thσ particula≥ functioε o≥ ì
subse⌠ oµ datß associateΣ witΦ thσ deferreΣ error¼ ß BUS┘ statu≤ shal∞ bσ ì
returneΣ t∩ tha⌠ initiato≥ iε responsσ t∩ thσ commanΣ attemptinτ thσ access.
.lm 3
ááNOTE║ No⌠ al∞ device≤ ma∙ bσ sufficientl∙ sophisticateΣ t∩ identif∙ thσ ì
ááfunctioε o≥ datß tha⌠ ha≤ failed« Thosσ tha⌠ canno⌠ shoulΣ trea⌠ thσ erro≥ ì
ááiε thσ followinτ manner.
.lm 1
.cp 5
áá(3⌐ Iµ ß deferreΣ erro≥ canno⌠ bσ associateΣ witΦ ß causinτ initiato≥ o≥ ì
witΦ ß particula≥ subse⌠ oµ data¼ ß deferreΣ erro≥ indicatioε shal∞ bσ ì
returneΣ oε behalµ oµ thσ failinτ logica∞ uni⌠ t∩ eacΦ initiator« Iµ multiplσ ì
deferreΣ error≤ havσ accumulateΣ fo≥ somσ initiators¼ onl∙ thσ las⌠ erro≥ ì
shal∞ bσ returned.
.cp 3
áá(4⌐ Iµ ß deferreΣ erro≥ canno⌠ bσ associateΣ witΦ ß particula≥ logica∞ unit¼ ì
i⌠ shal∞ bσ returneΣ t∩ thσ appropriatσ initiato≥ fo≥ al∞ logica∞ unit≤ ì
supporteΣ b∙ thσ target.
.cp14èáá(5⌐ Iµ ß curren⌠ commanΣ ha≤ no⌠ ye⌠ starteΣ executing¼ anΣ ß deferreΣ erro≥ ì
occurs¼ thσ commanΣ shal∞ bσ terminateΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ ì
deferreΣ erro≥ informatioε posteΣ iε thσ sensσ data« B∙ convention¼ thσ ì
curren⌠ commanΣ i≤ considereΣ t∩ havσ starteΣ executioε iµ thσ targe⌠ ha≤ ì
changeΣ phasσ froφ thσ COMMAN─ phasσ t∩ thσ nex⌠ norma∞ phasσ oµ thσ commanΣ ì
sequence« Iµ ß deferreΣ erro≥ occur≤ whilσ ß curren⌠ commanΣ i≤ executinτ anΣ ì
thσ curren⌠ commanΣ ha≤ beeε affecteΣ b∙ thσ error¼ thσ commanΣ shal∞ bσ ì
terminateΣ b∙ CHEC╦ CONDITIO╬ statu≤ anΣ curren⌠ erro≥ informatioε shal∞ bσ ì
returneΣ iε thσ sensσ data« Iε thi≤ case¼ iµ thσ curren⌠ erro≥ informatioε ì
doe≤ no⌠ adequatel∙ definσ thσ deferreΣ erro≥ condition¼ ß deferreΣ erro≥ ma∙ ì
bσ returneΣ afte≥ thσ curren⌠ erro≥ informatioε ha≤ beeε recovered« Iµ ß ì
deferreΣ erro≥ occur≤ whilσ ß curren⌠ commanΣ i≤ executinτ anΣ thσ curren⌠ ì
commanΣ complete≤ successfully¼ thσ targe⌠ ma∙ choosσ t∩ returε thσ deferreΣ ì
erro≥ informatioε afte≥ thσ completioε oµ thσ curren⌠ command.
.cp 12
.lm 3
ááIMPLEMENTOR╙ NOTE║ DeferreΣ error≤ ma∙ indicatσ tha⌠ aε operatioε wa≤ ì
ááunsuccessfu∞ lonτ afte≥ thσ commanΣ performinτ thσ datß transfe≥ returneΣ ì
ááGOO─ status« Iµ datß tha⌠ canno⌠ bσ replicateΣ o≥ recovereΣ froφ othe≥ ì
áásource≤ i≤ beinτ storeΣ usinτ sucΦ buffereΣ writσ operations¼ ì
áásynchronizatioε command≤ shoulΣ bσ performeΣ beforσ thσ critica∞ datß i≤ ì
áádestroyeΣ iε thσ hos⌠ initiator« Thi≤ i≤ necessar∙ t∩ bσ surσ tha⌠ recover∙ ì
ááaction≤ caε bσ takeε iµ deferreΣ error≤ d∩ occu≥ iε thσ storinτ oµ thσ data« ì
ááIµ AE╬ i≤ no⌠ implemented¼ thσ synchronizinτ proces≤ shoulΣ providσ thσ ì
áánecessar∙ command≤ t∩ allo≈ returninτ CHEC╦ CONDITIO╬ statu≤ anΣ subsequen⌠ ì
ááreturninτ oµ deferreΣ erro≥ sensσ informatioε afte≥ al∞ buffereΣ operation≤ ì
ááarσ guaranteeΣ t∩ bσ complete.
.lm 1
.aw off
.pm 0
.cp 54è Table 7-39: Sense Key (0h-7h) Descriptions
==============================================================================
Sense Key Description
--------- -------------------------------------------------------------------
.aw on
.pm 4
.lm 12
ááá0h N╧ SENSE« Indicate≤ tha⌠ therσ i≤ n∩ specifiπ sensσ ke∙ ì
áááááááááááinformatioε t∩ bσ reporteΣ fo≥ thσ designateΣ logica∞ unit« Thi≤ ì
áááááááááááwoulΣ bσ thσ casσ fo≥ ß successfu∞ commanΣ o≥ ß commanΣ tha⌠ ì
áááááááááááreceiveΣ CHEC╦ CONDITIO╬ o≥ COMMAN─ TERMINATE─ statu≤ becausσ onσ ì
áááááááááááoµ thσ filemark¼ EOM¼ o≥ IL╔ bit≤ i≤ se⌠ t∩ one.
ááá1h RECOVERE─ ERROR« Indicate≤ tha⌠ thσ las⌠ commanΣ completeΣ ì
ááááááááááásuccessfull∙ witΦ somσ recover∙ actioε performeΣ b∙ thσ target« ì
áááááááááááDetail≤ ma∙ bσ determinablσ b∙ examininτ thσ additiona∞ sensσ byte≤ ì
áááááááááááanΣ thσ informatioε field« Wheε multiplσ recovereΣ error≤ occu≥ ì
ááááááááááádurinτ onσ command¼ thσ choicσ oµ whicΦ erro≥ t∩ repor⌠ (first¼ ì
ááááááááááálast¼ mos⌠ severe¼ etc.⌐ i≤ devicσ specific.
ááá2h NO╘ READY« Indicate≤ tha⌠ thσ logica∞ uni⌠ addresseΣ canno⌠ bσ ì
áááááááááááaccessed« Operato≥ interventioε ma∙ bσ requireΣ t∩ correc⌠ thi≤ ì
ááááááááááácondition.
ááá3h MEDIU═ ERROR« Indicate≤ tha⌠ thσ commanΣ terminateΣ witΦ ß noε¡ ì
ááááááááááárecovereΣ erro≥ conditioε tha⌠ wa≤ probabl∙ causeΣ b∙ ß fla≈ iε thσ ì
ááááááááááámediuφ o≥ aε erro≥ iε thσ recordeΣ data« Thi≤ sensσ ke∙ ma∙ als∩ ì
ááááááááááábσ returneΣ iµ thσ targe⌠ i≤ unablσ t∩ distinguisΦ betweeε ß fla≈ ì
áááááááááááiε thσ mediuφ anΣ ß specifiπ hardwarσ failurσ (sensσ ke∙ 4h).
ááá4h HARDWAR┼ ERROR« Indicate≤ tha⌠ thσ targe⌠ detecteΣ ß noε¡ ì
ááááááááááárecoverablσ hardwarσ failurσ (fo≥ example¼ controlle≥ failure¼ ì
ááááááááááádevicσ failure¼ parit∙ error¼ etc.⌐ whilσ performinτ thσ commanΣ o≥ ì
ááááááááááádurinτ ß selµ test.
ááá5h ILLEGA╠ REQUEST« Indicate≤ tha⌠ therσ wa≤ aε illega∞ paramete≥ iε ì
áááááááááááthσ commanΣ descripto≥ blocδ o≥ iε thσ additiona∞ parameter≤ ì
ááááááááááásupplieΣ a≤ datß fo≥ somσ command≤ (FORMA╘ UNIT¼ SEARC╚ DATA¼ ì
áááááááááááetc.)« Iµ thσ targe⌠ detect≤ aε invaliΣ paramete≥ iε thσ commanΣ ì
ááááááááááádescripto≥ block¼ theε i⌠ shal∞ terminatσ thσ commanΣ withou⌠ ì
áááááááááááalterinτ thσ medium« Iµ thσ targe⌠ detect≤ aε invaliΣ paramete≥ iε ì
áááááááááááthσ additiona∞ parameter≤ supplieΣ a≤ data¼ theε thσ targe⌠ ma∙ ì
áááááááááááhavσ alread∙ altereΣ thσ medium« Thi≤ sensσ ke∙ ma∙ als∩ indicatσ ì
ááááááááááátha⌠ aε invaliΣ IDENTIF┘ messagσ wa≤ receiveΣ (5.6.7).
ááá6h UNI╘ ATTENTION« Indicate≤ tha⌠ thσ removablσ mediuφ ma∙ havσ beeε ì
áááááááááááchangeΣ o≥ thσ targe⌠ ha≤ beeε reset« Seσ 6.╣ fo≥ morσ detaileΣ ì
áááááááááááinformatioε abou⌠ thσ uni⌠ attentioε condition«
ááá7h DAT┴ PROTECT« Indicate≤ tha⌠ ß commanΣ tha⌠ read≤ o≥ write≤ thσ ì
ááááááááááámediuφ wa≤ attempteΣ oε ß blocδ tha⌠ i≤ protecteΣ froφ thi≤ ì
áááááááááááoperation« Thσ reaΣ o≥ writσ operatioε i≤ no⌠ performed.
.lm 1
.pm 0
==============================================================================
.aw on
.pm 3
.aw off
.pm 0
.cp 54è Table 7-40: Sense Key (8h-Fh) Descriptions
==============================================================================
Sense Key Description
--------- -------------------------------------------------------------------
.aw on
.pm 4
.lm 12
ááá8h BLAN╦ CHECK« Indicate≤ tha⌠ ß writσ-oncσ devicσ o≥ ß sequentia∞-ì
áááááááááááacces≤ devicσ encountereΣ blanδ mediuφ o≥ forma⌠-defineΣ enΣ-oµ-ì
ááááááááááádatß indicatioε whilσ readinτ o≥ ß writσ-oncσ devicσ encountereΣ ß ì
ááááááááááánoε-blanδ mediuφ whilσ writing.
ááá9h Vendo≥ Specific« Thi≤ sensσ ke∙ i≤ availablσ fo≥ reportinτ vendo≥ ì
áááááááááááspecifiπ conditions.
áááAh COP┘ ABORTED« Indicate≤ ß COPY¼ COMPARE¼ o≥ COP┘ AN─ VERIF┘ ì
ááááááááááácommanΣ wa≤ aborteΣ duσ t∩ aε erro≥ conditioε oε thσ sourcσ device¼ ì
áááááááááááthσ destinatioε device¼ o≥ both« (Seσ 7.2.3.▓ fo≥ additiona∞ ì
áááááááááááinformatioε abou⌠ thi≤ sensσ key.)
áááBh ABORTE─ COMMAND« Indicate≤ tha⌠ thσ targe⌠ aborteΣ thσ command« ì
áááááááááááThσ initiato≥ ma∙ bσ ablσ t∩ recove≥ b∙ tryinτ thσ commanΣ again.
áááCh EQUAL« Indicate≤ ß SEARC╚ DAT┴ commanΣ ha≤ satisfieΣ aε equa∞ ì
ááááááááááácomparison.
áááDh VOLUM┼ OVERFLOW« Indicate≤ tha⌠ ß buffereΣ periphera∞ devicσ ha≤ ì
áááááááááááreacheΣ thσ enΣ-oµ-partitioε anΣ datß ma∙ remaiε iε thσ buffe≥ tha⌠ ì
áááááááááááha≤ no⌠ beeε writteε t∩ thσ medium« ┴ RECOVE╥ BUFFERE─ DAT┴ ì
ááááááááááácommand(s⌐ ma∙ bσ issueΣ t∩ reaΣ thσ unwritteε datß froφ thσ ì
ááááááááááábuffer.
áááEh MISCOMPARE« Indicate≤ tha⌠ thσ sourcσ datß diΣ no⌠ matcΦ thσ datß ì
áááááááááááreaΣ froφ thσ medium.
áááFh RESERVED«
.pm 0
.lm 1
==============================================================================
.aw on
.pm 3
.cp 35è.aw off
.pm 0
Table 7-41: ASC and ASCQ Assignments
.. Editor: Insert table from ASC spreadsheet here as last step before running
.. CompareRite:
==============================================================================
ASC AND ASCQ ASSIGNMENTS
D = DIRECT ACCESS DEVICE
T = SEQUENTIAL ACCESS DEVICE
L = PRINTER DEVICE
P = PROCESSOR DEVICE
W = WRITE ONCE READ MULTIPLE DEVICE
R = READ ONLY (CD-ROM) DEVICE
S = SCANNER DEVICE
O = OPTICAL MEMORY DEVICE
M = MEDIA CHANGER DEVICE
C = COMMUNICATION DEVICE
BYTE
12 13 DTLPWRSOMC DESCRIPTION
-- -- ------------------------------------------------------------
13 00 D W O ADDRESS MARK NOT FOUND FOR DATA FIELD
12 00 D W O ADDRESS MARK NOT FOUND FOR ID FIELD
00 11 R AUDIO PLAY OPERATION IN PROGRESS
00 12 R AUDIO PLAY OPERATION PAUSED
00 14 R AUDIO PLAY OPERATION STOPPED DUE TO ERROR
00 13 R AUDIO PLAY OPERATION SUCCESSFULLY COMPLETED
00 04 T S BEGINNING-OF-PARTITION/MEDIUM DETECTED
14 04 T BLOCK SEQUENCE ERROR
30 02 DT WR O CANNOT READ MEDIUM - INCOMPATIBLE FORMAT
30 01 DT WR O CANNOT READ MEDIUM - UNKNOWN FORMAT
52 00 T CARTRIDGE FAULT
3F 02 DTLPWRSOMC CHANGED OPERATING DEFINITION
11 06 WR O CIRC UNRECOVERED ERROR
30 03 DT CLEANING CARTRIDGE INSTALLED
4A 00 DTLPWRSOMC COMMAND PHASE ERROR
2C 00 DTLPWRSOMC COMMAND SEQUENCE ERROR
2F 00 DTLPWRSOMC COMMANDS CLEARED BY ANOTHER INITIATOR
2B 00 DTLPWRSO C COPY CANNOT EXECUTE SINCE HOST CANNOT DISCONNECT
41 00 D DATA PATH FAILURE (SHOULD USE 40 NN)
4B 00 DTLPWRSOMC DATA PHASE ERROR
11 07 W O DATA RESYCHRONIZATION ERROR
16 00 D W O DATA SYNCHRONIZATION MARK ERROR
19 00 D O DEFECT LIST ERROR
19 03 D O DEFECT LIST ERROR IN GROWN LIST
19 02 D O DEFECT LIST ERROR IN PRIMARY LIST
19 01 D O DEFECT LIST NOT AVAILABLE
1C 00 D O DEFECT LIST NOT FOUND
32 01 D W O DEFECT LIST UPDATE FAILURE
40 NN DTLPWRSOMC DIAGNOSTIC FAILURE ON COMPONENT NN (80H-FFH)
63 00 R END OF USER AREA ENCOUNTERED ON THIS TRACK
00 05 T S END-OF-DATA DETECTED
14 03 T END-OF-DATA NOT FOUND
00 02 T S END-OF-PARTITION/MEDIUM DETECTED
51 00 T O ERASE FAILURE
0A 00 DTLPWRSOMC ERROR LOG OVERFLOW
11 02 DT W SO ERROR TOO LONG TO CORRECT
==============================================================================è Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
==============================================================================
BYTE
12 13 DTLPWRSOMC DESCRIPTION
-- -- ------------------------------------------------------------
03 02 T EXCESSIVE WRITE ERRORS
3B 07 L FAILED TO SENSE BOTTOM-OF-FORM
3B 06 L FAILED TO SENSE TOP-OF-FORM
00 01 T FILEMARK DETECTED
14 02 T FILEMARK OR SETMARK NOT FOUND
09 02 WR O FOCUS SERVO FAILURE
31 01 D L O FORMAT COMMAND FAILED
58 00 O GENERATION DOES NOT EXIST
1C 02 D O GROWN DEFECT LIST NOT FOUND
00 06 DTLPWRSOMC I/O PROCESS TERMINATED
10 00 D W O ID CRC OR ECC ERROR
22 00 D ILLEGAL FUNCTION (SHOULD USE 20 00, 24 00, OR 26 00)
64 00 R ILLEGAL MODE FOR THIS TRACK
28 01 M IMPORT OR EXPORT ELEMENT ACCESSED
30 00 DT WR OM INCOMPATIBLE MEDIUM INSTALLED
11 08 T INCOMPLETE BLOCK READ
48 00 DTLPWRSOMC INITIATOR DETECTED ERROR MESSAGE RECEIVED
3F 03 DTLPWRSOMC INQUIRY DATA HAS CHANGED
44 00 DTLPWRSOMC INTERNAL TARGET FAILURE
3D 00 DTLPWRSOMC INVALID BITS IN IDENTIFY MESSAGE
2C 02 S INVALID COMBINATION OF WINDOWS SPECIFIED
20 00 DTLPWRSOMC INVALID COMMAND OPERATION CODE
21 01 M INVALID ELEMENT ADDRESS
24 00 DTLPWRSOMC INVALID FIELD IN CDB
26 00 DTLPWRSOMC INVALID FIELD IN PARAMETER LIST
49 00 DTLPWRSOMC INVALID MESSAGE ERROR
11 05 WR O L-EC UNCORRECTABLE ERROR
60 00 S LAMP FAILURE
5B 02 DTLPWRSOM LOG COUNTER AT MAXIMUM
5B 00 DTLPWRSOM LOG EXCEPTION
5B 03 DTLPWRSOM LOG LIST CODES EXHAUSTED
2A 02 DTL WRSOMC LOG PARAMETERS CHANGED
21 00 DT WR OM LOGICAL BLOCK ADDRESS OUT OF RANGE
08 00 DTL WRSOMC LOGICAL UNIT COMMUNICATION FAILURE
08 02 DTL WRSOMC LOGICAL UNIT COMMUNICATION PARITY ERROR
08 01 DTL WRSOMC LOGICAL UNIT COMMUNICATION TIME-OUT
05 00 DTL WRSOMC LOGICAL UNIT DOES NOT RESPOND TO SELECTION
4C 00 DTLPWRSOMC LOGICAL UNIT FAILED SELF-CONFIGURATION
3E 00 DTLPWRSOMC LOGICAL UNIT HAS NOT SELF-CONFIGURED YET
04 01 DTLPWRSOMC LOGICAL UNIT IS IN PROCESS OF BECOMING READY
04 00 DTLPWRSOMC LOGICAL UNIT NOT READY, CAUSE NOT REPORTABLE
04 04 DTL O LOGICAL UNIT NOT READY, FORMAT IN PROGRESS
04 02 DTLPWRSOMC LOGICAL UNIT NOT READY, INITIALIZING COMMAND REQUIRED
04 03 DTLPWRSOMC LOGICAL UNIT NOT READY, MANUAL INTERVENTION REQUIRED
25 00 DTLPWRSOMC LOGICAL UNIT NOT SUPPORTED
15 01 DTL WRSOM MECHANICAL POSITIONING ERROR
53 00 DTL WRSOM MEDIA LOAD OR EJECT FAILED
==============================================================================
.paè Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
==============================================================================
BYTE
12 13 DTLPWRSOMC DESCRIPTION
-- -- ------------------------------------------------------------
3B 0D M MEDIUM DESTINATION ELEMENT FULL
31 00 DT W O MEDIUM FORMAT CORRUPTED
3A 00 DTL WRSOM MEDIUM NOT PRESENT
53 02 DT WR OM MEDIUM REMOVAL PREVENTED
3B 0E M MEDIUM SOURCE ELEMENT EMPTY
43 00 DTLPWRSOMC MESSAGE ERROR
3F 01 DTLPWRSOMC MICROCODE HAS BEEN CHANGED
1D 00 D W O MISCOMPARE DURING VERIFY OPERATION
11 0A DT O MISCORRECTED ERROR
2A 01 DTL WRSOMC MODE PARAMETERS CHANGED
07 00 DTL WRSOM MULTIPLE PERIPHERAL DEVICES SELECTED
11 03 DT W SO MULTIPLE READ ERRORS
00 00 DTLPWRSOMC NO ADDITIONAL SENSE INFORMATION
00 15 R NO CURRENT AUDIO STATUS TO RETURN
32 00 D W O NO DEFECT SPARE LOCATION AVAILABLE
11 09 T NO GAP FOUND
01 00 D W O NO INDEX/SECTOR SIGNAL
06 00 D WR OM NO REFERENCE POSITION FOUND
02 00 D WR OM NO SEEK COMPLETE
03 01 T NO WRITE CURRENT
28 00 DTLPWRSOMC NOT READY TO READY TRANSITION (MEDIUM MAY HAVE CHANGED)
5A 01 DT WR OM OPERATOR MEDIUM REMOVAL REQUEST
5A 00 DTLPWRSOM OPERATOR REQUEST OR STATE CHANGE INPUT (UNSPECIFIED)
5A 03 DT W O OPERATOR SELECTED WRITE PERMIT
5A 02 DT W O OPERATOR SELECTED WRITE PROTECT
61 02 S OUT OF FOCUS
4E 00 DTLPWRSOMC OVERLAPPED COMMANDS ATTEMPTED
2D 00 T OVERWRITE ERROR ON UPDATE IN PLACE
3B 05 L PAPER JAM
1A 00 DTLPWRSOMC PARAMETER LIST LENGTH ERROR
26 01 DTLPWRSOMC PARAMETER NOT SUPPORTED
26 02 DTLPWRSOMC PARAMETER VALUE INVALID
2A 00 DTL WRSOMC PARAMETERS CHANGED
03 00 DTL W SO PERIPHERAL DEVICE WRITE FAULT
50 02 T POSITION ERROR RELATED TO TIMING
3B 0C S POSITION PAST BEGINNING OF MEDIUM
3B 0B S POSITION PAST END OF MEDIUM
15 02 DT WR O POSITIONING ERROR DETECTED BY READ OF MEDIUM
29 00 DTLPWRSOMC POWER ON, RESET, OR BUS DEVICE RESET OCCURRED
42 00 D POWER-ON OR SELF-TEST FAILURE (SHOULD USE 40 NN)
1C 01 D O PRIMARY DEFECT LIST NOT FOUND
40 00 D RAM FAILURE (SHOULD USE 40 NN)
15 00 DTL WRSOM RANDOM POSITIONING ERROR
3B 0A S READ PAST BEGINNING OF MEDIUM
3B 09 S READ PAST END OF MEDIUM
11 01 DT W SO READ RETRIES EXHAUSTED
14 01 DT WR O RECORD NOT FOUND
14 00 DTL WRSO RECORDED ENTITY NOT FOUND
==============================================================================è.pa
Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
==============================================================================
BYTE
12 13 DTLPWRSOMC DESCRIPTION
-- -- ------------------------------------------------------------
18 02 D WR O RECOVERED DATA - DATA AUTO-REALLOCATED
18 05 D WR O RECOVERED DATA - RECOMMEND REASSIGNMENT
17 05 D WR O RECOVERED DATA USING PREVIOUS SECTOR ID
18 03 R RECOVERED DATA WITH CIRC
18 01 D WR O RECOVERED DATA WITH ERROR CORRECTION AND RETRIES APPLIED
18 00 DT WR O RECOVERED DATA WITH ERROR CORRECTION APPLIED
18 04 R RECOVERED DATA WITH LEC
17 03 DT WR O RECOVERED DATA WITH NEGATIVE HEAD OFFSET
17 00 DT WRSO RECOVERED DATA WITH NO ERROR CORRECTION APPLIED
17 02 DT WR O RECOVERED DATA WITH POSITIVE HEAD OFFSET
17 01 DT WRSO RECOVERED DATA WITH RETRIES
17 04 WR O RECOVERED DATA WITH RETRIES AND/OR CIRC APPLIED
17 06 D W O RECOVERED DATA WITHOUT ECC - DATA AUTO-REALLOCATED
17 07 D W O RECOVERED DATA WITHOUT ECC - RECOMMEND REASSIGNMENT
1E 00 D W O RECOVERED ID WITH ECC CORRECTION
3B 08 T REPOSITION ERROR
36 00 L RIBBON, INK, OR TONER FAILURE
37 00 DTL WRSOMC ROUNDED PARAMETER
5C 00 D O RPL STATUS CHANGE
39 00 DTL WRSOMC SAVING PARAMETERS NOT SUPPORTED
62 00 S SCAN HEAD POSITIONING ERROR
47 00 DTLPWRSOMC SCSI PARITY ERROR
54 00 P SCSI TO HOST SYSTEM INTERFACE FAILURE
45 00 DTLPWRSOMC SELECT OR RESELECT FAILURE
3B 00 TL SEQUENTIAL POSITIONING ERROR
00 03 T SETMARK DETECTED
3B 04 L SLEW FAILURE
09 03 WR O SPINDLE SERVO FAILURE
5C 02 D O SPINDLES NOT SYNCHRONIZED
5C 01 D O SPINDLES SYNCHRONIZED
1B 00 DTLPWRSOMC SYNCHRONOUS DATA TRANSFER ERROR
55 00 P SYSTEM RESOURCE FAILURE
33 00 T TAPE LENGTH ERROR
3B 03 L TAPE OR ELECTRONIC VERTICAL FORMS UNIT NOT READY
3B 01 T TAPE POSITION ERROR AT BEGINNING-OF-MEDIUM
3B 02 T TAPE POSITION ERROR AT END-OF-MEDIUM
3F 00 DTLPWRSOMC TARGET OPERATING CONDITIONS HAVE CHANGED
5B 01 DTLPWRSOM THRESHOLD CONDITION MET
26 03 DTLPWRSOMC THRESHOLD PARAMETERS NOT SUPPORTED
2C 01 S TOO MANY WINDOWS SPECIFIED
09 00 DT WR O TRACK FOLLOWING ERROR
09 01 WR O TRACKING SERVO FAILURE
61 01 S UNABLE TO ACQUIRE VIDEO
57 00 R UNABLE TO RECOVER TABLE-OF-CONTENTS
53 01 T UNLOAD TAPE FAILURE
11 00 DT WRSO UNRECOVERED READ ERROR
11 04 D W O UNRECOVERED READ ERROR - AUTO REALLOCATE FAILED
==============================================================================
.paè Tablσ 7-41║ AS├ anΣ ASC╤ Assignment≤ (continued)
==============================================================================
BYTE
12 13 DTLPWRSOMC DESCRIPTION
-- -- ------------------------------------------------------------
11 0B D W O UNRECOVERED READ ERROR - RECOMMEND REASSIGNMENT
11 0C D W O UNRECOVERED READ ERROR - RECOMMEND REWRITE THE DATA
46 00 DTLPWRSOMC UNSUCCESSFUL SOFT RESET
59 00 O UPDATED BLOCK READ
61 00 S VIDEO ACQUISITION ERROR
50 00 T WRITE APPEND ERROR
50 01 T WRITE APPEND POSITION ERROR
0C 00 T S WRITE ERROR
0C 02 D W O WRITE ERROR - AUTO REALLOCATION FAILED
0C 01 D W O WRITE ERROR RECOVERED WITH AUTO REALLOCATION
27 00 DT W O WRITE PROTECTED
------------------------------------------
80 XX \
THROUGH > VENDOR SPECIFIC.
FF XX /
XX 80 \
THROUGH > VENDOR SPECIFIC QUALIFICATION OF STANDARD ASC.
XX FF /
ALL CODES NOT SHOWN ARE RESERVED.
==============================================================================
.. Editor: Above line should be: "ALL CODES NOT SHOWN ARE RESERVED."
.lm 3
.aw on
ááNOTE║ Appendi° ╔ contain≤ thσ AS├ anΣ ASC╤ assignment≤ iε numeriπ order.
.lm 1
.cp 30è.pm 0
.aw off
7.2.15. SEND DIAGNOSTIC Command
Table 7-42: SEND DIAGNOSTIC Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (1Dh) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | PF |Reserved|SelfTest| DevOfL | UnitOfL|
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
-----|--- Parameter List Length ---|
4 | (LSB) |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ SEN─ DIAGNOSTI├ commanΣ (Tablσ ╖-42⌐ request≤ thσ targe⌠ t∩ perforφ ì
diagnostiπ operation≤ oε itself¼ oε thσ logica∞ unit¼ o≥ oε both« Thσ onl∙ ì
mandator∙ implementatioε oµ thi≤ commanΣ i≤ thσ selµ-tes⌠ featurσ witΦ thσ ì
paramete≥ lis⌠ lengtΦ oµ zero« Excep⌠ wheε thσ selµ-tes⌠ bi⌠ i≤ one¼ thi≤ ì
commanΣ i≤ usuall∙ followeΣ b∙ ß RECEIV┼ DIAGNOSTI├ RESULT╙ command.
.cp 6
áá┴ pagσ forma⌠ (PF⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ SEN─ DIAGNOSTI├ parameter≤ ì
conforφ t∩ thσ pagσ structurσ a≤ specifieΣ iε thi≤ standard« Thσ ì
implementatioε oµ thσ P╞ bi⌠ i≤ optional« Seσ 7.3.▒ fo≥ thσ definitioε oµ ì
diagnostiπ pages« ┴ P╞ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ SEN─ DIAGNOSTI├ ì
parameter≤ arσ a≤ specifieΣ iε SCS╔-▒ (i.e.¼ al∞ parameter≤ arσ vendo≥ ì
specific).
.cp 4
áá┴ selµ-tes⌠ (SelfTest⌐ bi⌠ oµ onσ direct≤ thσ targe⌠ t∩ completσ it≤ defaul⌠ ì
selµ-test« Iµ thσ selµ-tes⌠ successfull∙ passes¼ thσ commanΣ shal∞ bσ ì
terminateΣ witΦ GOO─ status╗ otherwise¼ thσ commanΣ shal∞ bσ terminateΣ witΦ ì
CHEC╦ CONDITIO╬ statu≤ anΣ thσ sensσ ke∙ shal∞ bσ se⌠ t∩ HARDWAR┼ ERROR.
.cp 12
áá┴ selµ-tes⌠ bi⌠ oµ zer∩ request≤ tha⌠ thσ targe⌠ perforφ thσ diagnostiπ ì
operatioε specifieΣ iε thσ paramete≥ list« Thσ diagnostiπ operatioε migh⌠ o≥ ì
migh⌠ no⌠ requirσ ß targe⌠ t∩ returε datß whicΦ contain≤ diagnostiπ results« ì
Iµ thσ returε oµ datß i≤ no⌠ required¼ thσ returε oµ GOO─ statu≤ indicate≤ ì
successfu∞ completioε oµ thσ diagnostiπ operation« Iµ thσ returε oµ datß i≤ ì
requireΣ thσ targe⌠ shal∞ either:
.cp 6
áá(1⌐ perforφ thσ requesteΣ diagnostiπ operation¼ preparσ thσ datß t∩ bσ ì
returneΣ anΣ indicatσ completioε b∙ returninτ GOO─ status« Thσ initiato≥ ì
issue≤ ß RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ t∩ recove≥ thσ data.
áá(2⌐ accep⌠ thσ paramete≥ lis⌠ anΣ iµ n∩ error≤ arσ detecteΣ iε thσ paramete≥ ì
lis⌠ returε GOO─ status« Thσ requesteΣ diagnostiπ operatioε anΣ thσ ì
preparatioε oµ thσ datß t∩ bσ returneΣ i≤ performeΣ upoε receip⌠ oµ ß RECEIV┼ ì
DIAGNOSTI├ RESULT╙ command.
è.cp 5
.lm 3
ááIMPLEMENTOR╙ NOTE║ T∩ insurσ tha⌠ thσ diagnostiπ commanΣ informatioε i≤ no⌠ ì
áádestroyeΣ b∙ ß commanΣ sen⌠ froφ anothe≥ initiator¼ thσ SEN─ DIAGNOSTI├ ì
áácommanΣ shoulΣ eithe≥ bσ linkeΣ t∩ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ o≥ ì
ááthσ logica∞ uni⌠ shoulΣ bσ reserved.
.lm 1
ááThσ devicσ ofµ-linσ (DevOfL⌐ anΣ uni⌠ ofµ-linσ (UnitOfL⌐ bit≤ arσ generall∙ ì
se⌠ b∙ operatinτ systeφ software¼ whilσ thσ paramete≥ lis⌠ i≤ prepareΣ b∙ ì
diagnostiπ applicatioε software« Thesσ bit≤ gran⌠ permissioε t∩ perforφ ì
vendo≥-specifiπ diagnostiπ operation≤ oε thσ targe⌠ whicΦ ma∙ bσ visiblσ t∩ ì
attacheΣ initiators« Thus¼ b∙ preventinτ operation≤ tha⌠ arσ no⌠ enableΣ b∙ ì
thesσ bits¼ thσ targe⌠ assist≤ thσ operatinτ systeφ iε protectinτ it≤ ì
resources.
áá┴ UnitOf╠ bi⌠ oµ onσ grant≤ permissioε t∩ thσ targe⌠ t∩ perforφ diagnostiπ ì
operation≤ tha⌠ ma∙ affec⌠ thσ use≥ accessiblσ mediuφ oε thσ logica∞ unit¼ ì
e.g.¼ writσ operation≤ t∩ thσ use≥ accessiblσ medium¼ o≥ repositioninτ oµ thσ ì
mediuφ oε sequentia∞ acces≤ devices« Thσ implementatioε oµ thσ UnitOf∞ bi⌠ i≤ ì
optional« ┴ UnitOf╠ bi⌠ oµ zer∩ prohibit≤ an∙ diagnostiπ operation≤ tha⌠ ma∙ ì
bσ detecteΣ b∙ subsequen⌠ I/╧ processes«
áá┴ DevOf∞ bi⌠ oµ onσ grant≤ permissioε t∩ thσ targe⌠ t∩ perforφ diagnostiπ ì
operation≤ tha⌠ ma∙ affec⌠ al∞ thσ logica∞ unit≤ oε ß target¼ e.g.¼ alteratioε ì
oµ reservations¼ loτ parameters¼ o≥ sensσ data« Thσ implementatioε oµ thσ ì
DevOf∞ bi⌠ i≤ optional« ┴ DevOf╠ bi⌠ oµ zer∩ prohibit≤ diagnostiπ operation≤ ì
tha⌠ ma∙ bσ detecteΣ b∙ subsequen⌠ I/╧ processes.
.cp 8
ááThσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ì
paramete≥ lis⌠ tha⌠ shal∞ bσ transferreΣ froφ thσ initiato≥ t∩ thσ target« ┴ ì
paramete≥ lis⌠ lengtΦ oµ zer∩ indicate≤ tha⌠ n∩ datß shal∞ bσ transferred« ì
Thi≤ conditioε shal∞ no⌠ bσ considereΣ a≤ aε error« Iµ thσ specifieΣ ì
paramete≥ lis⌠ lengtΦ result≤ iε thσ truncatioε oµ onσ o≥ morσ page≤ (P╞ bi⌠ ì
se⌠ t∩ one⌐ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ ß sensσ ke∙ oµ ì
ILLEGA╠ REQUES╘ anΣ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ CDB«
ááSeσ thσ implementor≤ notσ unde≥ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ iε ì
7.2.13.
.cp 35è.aw off
.pm 0
7.2.16. TEST UNIT READY Command
Table 7-43: TEST UNIT READY Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (00h) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Reserved |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | Control |
==============================================================================
.aw on
.pm 3
ááThσ TES╘ UNI╘ READ┘ commanΣ (Tablσ ╖-43⌐ provide≤ ß mean≤ t∩ checδ iµ thσ ì
logica∞ uni⌠ i≤ ready« Thi≤ i≤ no⌠ ß reques⌠ fo≥ ß selµ-test« Iµ thσ logica∞ ì
uni⌠ woulΣ accep⌠ aε appropriatσ mediuφ-acces≤ commanΣ withou⌠ returninτ CHEC╦ ì
CONDITIO╬ status¼ thi≤ commanΣ shal∞ returε ß GOO─ status« Iµ thσ logica∞ ì
uni⌠ canno⌠ becomσ operationa∞ o≥ i≤ iε ß statσ sucΦ tha⌠ aε initiato≥ actioε ì
(e.g.¼ STAR╘ UNI╘ command⌐ i≤ requireΣ t∩ makσ thσ uni⌠ read∙ thσ targe⌠ shal∞ ì
returε CHEC╦ CONDITIO╬ statu≤ witΦ ß sensσ ke∙ oµ NO╘ READY.
ááTablσ ╖-4┤ define≤ thσ preferreΣ response≤ t∩ thσ TES╘ UNI╘ READ┘ command« ì
Highe≥-priorit∙ response≤ (e.g.¼ BUS┘ o≥ RESERVATIO╬ CONFLICT⌐ arσ als∩ ì
permitted«
.aw off
.pm 0
.cp 15
Table 7-44: Preferred TEST UNIT READY Responses
==============================================================================
Status Sensσ Key Additional Sensσ Codσ anΣ
Additiona∞ Sensσ Codσ Qualifier
-----¡--------- --------------¡ ---------------------------¡----------------
GOO─ N╧ SENS┼ N╧ ADDITIONA╠ SENS┼ INFORMATIO╬ o≥ othe≥
valiΣ additiona∞ sensσ code.
CHEC╦ CONDITION ILLEGA╠ REQUES╘ LOGICA╠ UNI╘ NO╘ SUPPORTE─
CHECK CONDITION NO╘ READY LOGICA╠ UNI╘ DOE╙ NO╘ RESPON─ T╧ SELECTION
CHECK CONDITION NO╘ READY MEDIU═ NO╘ PRESEN╘
CHECK CONDITION NO╘ READY LOGICA╠ UNI╘ NO╘ READ┘, CAUS┼ NO╘ REPORTABL┼
CHECK CONDITION NO╘ READY LOGICA╠ UNI╘ I╙ IN PROCES╙ OF BECOMIN╟ READY
CHECK CONDITION NO╘ READY LOGICA╠ UNI╘ NO╘ READY¼ INITIALIZIN╟ COMMAN─
REQUIRED
CHEC╦ CONDITION NO╘ READY LOGICA╠ UNI╘ NO╘ READY¼ MANUA╠ INTERVENTIO╬
REQUI╥E─
CHECK CONDITION NO╘ READY LOGICA╠ UNI╘ NO╘ READY¼ FORMA╘ I╬ PROGRESS
==============================================================================
.aw on
.pm 3
è
.cp 35
.aw off
.pm 0
7.2.17. WRITE BUFFER Command
Table 7-45: WRITE BUFFER Command
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Operation Code (3Bh) |
-----|-----------------------------------------------------------------------|
1 | Logical Unit Number | Reserved | Mode |
-----|-----------------------------------------------------------------------|
2 | Buffer ID |
-----|-----------------------------------------------------------------------|
3 | (MSB) |
- - -|- - Buffer Offset - -|
5 | (LSB) |
-----|-----------------------------------------------------------------------|
6 | (MSB) |
- - -|- - Parameter Lis⌠ Length - -|
8 | (LSB) |
-----|-----------------------------------------------------------------------|
9 | Control |
==============================================================================
.aw on
.pm 3
ááThσ WRIT┼ BUFFE╥ commanΣ (Tablσ ╖-45⌐ i≤ useΣ iε conjunctioε witΦ thσ REA─ ì
BUFFE╥ commanΣ a≤ ß diagnostiπ fo≥ testinτ targe⌠ memor∙ anΣ thσ SCS╔ bu≤ ì
integrity« Additiona∞ mode≤ arσ provideΣ fo≥ downloadinτ microcodσ anΣ fo≥ ì
downloadinτ anΣ savinτ microcode.
ááThi≤ commanΣ shal∞ no⌠ alte≥ an∙ mediuφ oµ thσ targe⌠ wheε thσ datß modσ o≥ ì
thσ combineΣ heade≥ anΣ datß modσ i≤ specified«
ááThσ functioε oµ thi≤ commanΣ anΣ thσ meaninτ oµ field≤ withiε thσ commanΣ ì
descripto≥ blocδ depenΣ oε thσ content≤ oµ thσ modσ field« Thσ modσ fielΣ i≤ ì
defineΣ iε Tablσ ╖-46.
.aw off
.pm 0
.cp 10
Table 7-46: WRITE BUFFER Mode Field
=======================================================
Implementation
Mode Description Requirements
---¡ -----------------------------¡ ---------------
000b Write combined header and data Optional
001b Vendo≥ specific Vendo≥ specific
010b Write data Optional
011b Reserved Reserved
100b Download Microcode Optional
101b Download Microcode and Save Optional
110b Reserved Reserved
111b Reserved Reserved
=======================================================è.aw on
.pm 3
.lm3
ááIMPLEMENTOR╙ NOTE║ Mode≤ 000Γ anΣ 001Γ arσ includeΣ fo≥ compatibilit∙ witΦ ì
ááCC╙ product≤ tha⌠ werσ designeΣ prio≥ t∩ thσ generatioε oµ thi≤ standard« ì
ááThesσ product≤ restric⌠ thσ maximuφ transfe≥ lengtΦ t∩ 6553╡ bytes.
.lm1
.cp 5
.aw off
.pm 0
7.2.17.1. Combined Header and Data Mode (000b)
.aw on
.pm 3
ááIε thi≤ mode¼ datß t∩ bσ transferreΣ i≤ precedeΣ b∙ ß fou≥-bytσ header« Thσ ì
fou≥-bytσ heade≥ consist≤ oµ al∞ reserveΣ bytes« Thσ buffe≥ I─ anΣ thσ buffe≥ ì
offse⌠ field≤ shal∞ bσ zero« Thσ paramete≥ lis⌠ lengtΦ fielΣ specifie≤ thσ ì
maximuφ numbe≥ oµ byte≤ tha⌠ shal∞ bσ transferreΣ durinτ thσ DAT┴ OU╘ phase« ì
Thi≤ numbe≥ include≤ fou≥ byte≤ oµ header¼ s∩ thσ datß lengtΦ t∩ bσ storeΣ iε ì
thσ target'≤ buffe≥ i≤ paramete≥ lis⌠ lengtΦ minu≤ four« Thσ initiato≥ shoulΣ ì
attemp⌠ t∩ ensurσ tha⌠ thσ paramete≥ lis⌠ lengtΦ i≤ no⌠ greate≥ thaε fou≥ plu≤ ì
thσ availablσ lengtΦ tha⌠ i≤ returneΣ iε thσ heade≥ oµ thσ REA─ BUFFE╥ commanΣ ì
(modσ 00b)« Iµ thσ paramete≥ lis⌠ lengtΦ exceed≤ thσ availablσ lengtΦ plu≤ ì
four¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ shal∞ se⌠ thσ sensσ ì
ke∙ t∩ ILLEGA╠ REQUEST.
.cp 5
.aw off
.pm 0
7.2.17.2. Vendor-Specific Mode (001b)
.aw on
.pm 3
ááIε thi≤ mode¼ thσ meaninτ oµ thσ buffe≥ ID¼ buffe≥ offset¼ anΣ paramete≥ ì
lis⌠ lengtΦ field≤ arσ no⌠ specifieΣ b∙ thi≤ standard.
.cp 5
.aw off
.pm 0
7.2.17.3. Data Mode (010b)
.aw on
.pm 3
ááIε thi≤ mode¼ thσ DAT┴ OU╘ phasσ contain≤ buffe≥ data« Thσ buffe≥ I─ fielΣ ì
identifie≤ ß specifiπ buffe≥ withiε thσ target« Thσ vendo≥ assign≤ buffe≥ I─ ì
code≤ t∩ buffer≤ withiε thσ target« Buffe≥ I─ zer∩ shal∞ bσ supported« Iµ ì
morσ thaε onσ buffe≥ i≤ supported¼ additiona∞ buffe≥ I─ code≤ shal∞ bσ ì
assigneΣ contiguously¼ beginninτ witΦ one« Iµ aε unsupporteΣ buffe≥ I─ codσ ì
i≤ selected¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ shal∞ se⌠ thσ ì
sensσ ke∙ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ FIEL─ I╬ ì
CDB.
ááDatß i≤ writteε t∩ thσ targe⌠ buffe≥ startinτ a⌠ thσ locatioε specifieΣ b∙ ì
thσ buffe≥ offset« Thσ initiato≥ shoulΣ conforφ t∩ thσ offse⌠ boundar∙ ì
requirement≤ returneΣ iε thσ REA─ BUFFE╥ descriptor« Iµ thσ targe⌠ i≤ unablσ ì
t∩ accep⌠ thσ specifieΣ buffe≥ offset¼ i⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ ì
anΣ i⌠ shal∞ se⌠ thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ ì
codσ oµ INVALI─ FIEL─ I╬ CDB.
.cp9
ááThσ paramete≥ lis⌠ lengtΦ specifie≤ thσ maximuφ numbe≥ oµ byte≤ tha⌠ shal∞ ì
bσ transferreΣ durinτ thσ DAT┴ OU╘ phasσ t∩ bσ storeΣ iε thσ specifieΣ buffe≥ ì
beginninτ a⌠ thσ buffe≥ offset« Thσ initiato≥ shoulΣ attemp⌠ t∩ ensurσ tha⌠ ì
thσ paramete≥ lis⌠ lengtΦ plu≤ thσ buffe≥ offse⌠ doe≤ no⌠ exceeΣ thσ capacit∙ ì
oµ thσ specifieΣ buffer« (Thσ capacit∙ oµ thσ buffe≥ caε bσ determineΣ b∙ thσ ì
buffe≥ capacit∙ fielΣ iε thσ REA─ BUFFE╥ descriptor.⌐ Iµ thσ buffe≥ offse⌠ ì
anΣ paramete≥ lis⌠ lengtΦ field≤ specif∙ ß transfe≥ tha⌠ woulΣ exceeΣ thσ ì
buffe≥ capacity¼ thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ anΣ shal∞ se⌠ ì
thσ sensσ ke∙ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ ì
FIEL─ I╬ CDB«
.cp 10è.aw off
.pm 0
7.2.17.4. Download Microcode Mode (100b)
.aw on
.pm 3
ááIε thi≤ mode¼ vendo≥-specifiπ microcodσ o≥ contro∞ informatioε shal∞ bσ ì
transferreΣ t∩ thσ contro∞ memor∙ spacσ oµ thσ target« Afte≥ ß powe≥-cyclσ o≥ ì
reset¼ thσ devicσ operatioε shal∞ rever⌠ t∩ ß vendo≥-specifiπ condition« Thσ ì
meaning≤ oµ thσ buffe≥ ID¼ buffe≥ offset¼ anΣ paramete≥ lis⌠ lengtΦ field≤ arσ ì
no⌠ specifieΣ b∙ thi≤ standarΣ anΣ arσ no⌠ requireΣ t∩ bσ zer∩-filled« Wheε ì
thσ microcodσ downloaΣ ha≤ completeΣ successfull∙ thσ targe⌠ shal∞ generatσ ß ì
uni⌠ attentioε conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ ì
WRIT┼ BUFFE╥ commanΣ (seσ 6.9)« Thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ ì
MICROCOD┼ HA╙ BEE╬ CHANGED.
.cp 5
.aw off
.pm 0
7.2.17.5. Download Microcode and Save Mode (101b)
.aw on
.pm 3
ááIε thi≤ mode¼ vendo≥-specifiπ microcodσ o≥ contro∞ informatioε shal∞ bσ ì
transferreΣ t∩ thσ targe⌠ and¼ iµ thσ WRIT┼ BUFFE╥ commanΣ i≤ completeΣ ì
successfully¼ als∩ shal∞ bσ saveΣ iε ß noε-volatilσ memor∙ spacσ ì
(semiconductor¼ disk¼ o≥ other)« Thσ downloadeΣ codσ shal∞ theε bσ effectivσ ì
afte≥ eacΦ powe≥-cyclσ anΣ rese⌠ unti∞ i⌠ i≤ supplanteΣ iε anothe≥ downloaΣ ì
microcodσ anΣ savσ operation« Thσ meaning≤ oµ thσ buffe≥ ID¼ buffe≥ offset¼ ì
anΣ paramete≥ lis⌠ lengtΦ field≤ arσ no⌠ specifieΣ b∙ thi≤ standarΣ anΣ arσ ì
no⌠ requireΣ t∩ bσ zer∩-filled« Wheε thσ downloaΣ microcodσ anΣ savσ commanΣ ì
ha≤ completeΣ successfull∙ thσ targe⌠ shal∞ generatσ ß uni⌠ attentioε ì
conditioε fo≥ al∞ initiator≤ excep⌠ thσ onσ tha⌠ issueΣ thσ WRIT┼ BUFFE╥ ì
command« Wheε reportinτ thσ uni⌠ attentioε condition¼ thσ targe⌠ shal∞ se⌠ ì
thσ additiona∞ sensσ codσ t∩ MICROCOD┼ HA╙ BEE╬ CHANGED.
.cp 5
.aw off
.pm 0
7.3. Parameters fo≥ Al∞ Devicσ Typσs
.aw on
.pm 3
.cp 5
.aw off
.pm 0
7.3.1. Diagnostiπ Parameters
.aw on
.pm 3
.cp 3
ááThi≤ sectioε describe≤ thσ diagnostiπ pagσ structurσ anΣ thσ diagnostiπ ì
page≤ tha⌠ arσ applicablσ t∩ al∞ SCS╔ devices« Page≤ specifiπ t∩ eacΦ devicσ ì
typσ arσ describeΣ iε thσ thirΣ subsectioε oµ eacΦ devicσ-typσ sectioε (i.e.¼ ì
8.3¼ 9.3¼ etc.).
áá┴ SEN─ DIAGNOSTI├ commanΣ witΦ ß P╞ bi⌠ oµ onσ specifie≤ tha⌠ thσ SEN─ ì
DIAGNOSTI├ paramete≥ lis⌠ consist≤ oµ zer∩ o≥ morσ diagnostiπ page≤ anΣ tha⌠ ì
thσ datß returneΣ b∙ thσ subsequen⌠ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ shal∞ ì
usσ thσ diagnostiπ pagσ forma⌠ (Tablσ ╖-47⌐ describeΣ iε thi≤ standard.
ááEacΦ diagnostiπ pagσ define≤ ß functioε o≥ operatioε tha⌠ thσ targe⌠ shal∞ ì
perform« Thσ pagσ contain≤ ß pagσ heade≥ followeΣ b∙ thσ analysi≤ datß whicΦ ì
i≤ formatteΣ accordinτ t∩ thσ pagσ codσ specifieΣ iε thσ previou≤ SEN─ ì
DIAGNOSTI├ command.
ááTarget≤ tha⌠ implemen⌠ diagnostiπ page≤ arσ onl∙ requireΣ t∩ accep⌠ ß singlσ ì
diagnostiπ pagσ pe≥ command.
.aw off
.pm 0
.cp 20è Table 7-47: Diagnostic Page Format
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Page Code |
-----|-----------------------------------------------------------------------|
1 | Reserved |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
-----|--- Pagσ Length (n-3) ---|
3 | (LSB) |
-----|-----------------------------------------------------------------------|
4 | |
- - -|- - Diagnostic Parameters - -|
n | |
==============================================================================
.aw on
.pm 3
.cp3
ááThσ pagσ codσ fielΣ identifie≤ whicΦ diagnostiπ pagσ i≤ beinτ sen⌠ o≥ ì
returned« Thσ pagσ code≤ arσ defineΣ iε Tablσ ╖-48.
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ diagnostiπ ì
parameter≤ whicΦ follo≈ thi≤ field« Iµ thσ initiato≥ send≤ ß pagσ lengtΦ tha⌠ ì
result≤ iε thσ truncatioε oµ an∙ parameter¼ thσ targe⌠ shal∞ terminatσ thσ ì
commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
ááThσ diagnostiπ parameter≤ arσ defineΣ fo≥ eacΦ pagσ code« Thσ diagnostiπ ì
parameter≤ withiε ß pagσ ma∙ bσ defineΣ differentl∙ iε ß SEN─ DIAGNOSTI├ ì
commanΣ thaε iε ß RECEIV┼ DIAGNOSTI├ RESULT╙ command.
.aw off
.pm 0
.cp 15
Table 7-48: Diagnostiπ Page Codes
==============================================================================
Page Code Descriptioε Section
------------------------------------------------------------------------------
00h SupporteΣ Diagnostic≤ Pagσs 7.3.1.1
01Φ ¡ 3Fh ReserveΣ (fo≥ al∞ devicσ typσ page≤)
40Φ ¡ 7Fh Seσ specifiπ devicσ typσ fo≥ definition
80Φ ¡ FFh Vendo≥ specifiπ pages
==============================================================================
.aw on
.pm 3
.cp 5
.aw off
.pm 0
7.3.1.1. SupporteΣ Diagnostic Pagσs
.aw on
.pm 3
ááThσ supporteΣ diagnostic≤ pagσ (Tablσ ╖-49⌐ return≤ thσ lis⌠ oµ diagnostiπ ì
page≤ implementeΣ b∙ thσ target« Thi≤ pagσ shal∞ bσ implementeΣ iµ thσ targe⌠ ì
implement≤ thσ pagσ forma⌠ optioε oµ thσ SEN─ DIAGNOSTI├ anΣ RECEIV┼ ì
DIAGNOSTI├ RESULT╙ commands.
.aw off
.pm 0
.cp 25è Table 7-49: SupporteΣ Diagnostiπ Pagσs
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Page Code (00h) |
-----|-----------------------------------------------------------------------|
1 | Reserved |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
-----|--- Pagσ Length (n-3) ---|
3 | (LSB) |
-----|-----------------------------------------------------------------------|
4 | |
¡ ¡ -|¡ ¡ Supported Pagσ List ¡ -|
n | |
==============================================================================
.aw on
.pm 3
ááThσ definitioε oµ thi≤ pagσ fo≥ thσ SEN─ DIAGNOSTI├ commanΣ include≤ onl∙ ì
thσ firs⌠ fou≥ bytes« Iµ thσ pagσ lengtΦ fielΣ i≤ no⌠ zero¼ thσ targe⌠ shal∞ ì
terminatσ thσ SEN─ DIAGNOSTI├ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ì
ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ aε additiona∞ sensσ codσ oµ INVALI─ ì
FIEL─ I╬ PARAMETE╥ LIST« Thi≤ pagσ instruct≤ thσ targe⌠ t∩ makσ availablσ thσ ì
lis⌠ oµ al∞ supporteΣ diagnostiπ page≤ t∩ bσ returneΣ b∙ ß subsequen⌠ RECEIV┼ ì
DIAGNOSTI├ RESULT╙ command«
.cp5
ááThσ definitioε oµ thi≤ pagσ fo≥ thσ RECEIV┼ DIAGNOSTI├ RESULT╙ commanΣ ì
include≤ thσ lis⌠ oµ diagnostiπ page≤ supporteΣ b∙ thσ target.
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ ì
supporteΣ pagσ list.
ááThσ supporteΣ pagσ lis⌠ fielΣ shal∞ contaiε ß lis⌠ oµ al∞ diagnostiπ pagσ ì
code≤ implementeΣ b∙ thσ targe⌠ iε ascendinτ orde≥ beginninτ witΦ pagσ codσ ì
00h.
.cp25è.aw off
.pm 0
7.3.2. Loτ Parameters
.aw on
.pm 3
ááThi≤ sectioε describe≤ thσ loτ pagσ structurσ anΣ thσ loτ page≤ tha⌠ arσ ì
applicablσ t∩ al∞ SCS╔ devices« Page≤ specifiπ t∩ eacΦ devicσ typσ arσ ì
describeΣ iε thσ thirΣ subsectioε oµ eacΦ devicσ-typσ sectioε (i.e.¼ 8.3.2¼ ì
9.3.2¼ etc.)« Thσ LO╟ SELEC╘ commanΣ support≤ thσ abilit∙ t∩ senΣ zer∩ o≥ ì
morσ loτ pages« Thσ LO╟ SENS┼ commanΣ return≤ ß singlσ loτ pagσ specifieΣ iε ì
thσ pagσ codσ fielΣ oµ thσ commanΣ descripto≥ blocδ (seσ Tablσ ╖-21).
ááEacΦ loτ pagσ begin≤ witΦ ß fou≥-bytσ pagσ heade≥ followeΣ b∙ zer∩ o≥ morσ ì
variablσ-lengtΦ loτ parameter≤ defineΣ fo≥ tha⌠ page« Thσ loτ pagσ forma⌠ i≤ ì
defineΣ iε Table╖-50.
.cp 25
.aw off
.pm 0
Table 7-50: Log Page Format
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Reserved | Page Code |
-----|-----------------------------------------------------------------------|
1 | Reserved |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
-----|--- Pagσ Length (n-3) ---|
3 | (LSB) |
==============================================================================
| Loτ Parameters(s⌐ |
==============================================================================
4 - | Loτ Paramete≥ (First) |
°+3 | (LengtΦ x) |
-----|-----------------------------------------------------------------------|
| . |
| . |
| . |
-----|-----------------------------------------------------------------------|
n-y | Loτ Parameter (Last⌐ |
ε | (LengtΦ y) |
==============================================================================
.aw on
.pm 3
.cp 5
ááThσ pagσ codσ fielΣ identifie≤ whicΦ loτ pagσ i≤ beinτ transferred«
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ loτ ì
parameters« Iµ thσ initiato≥ send≤ ß pagσ lengtΦ tha⌠ result≤ iε thσ ì
truncatioε oµ an∙ parameter¼ thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ ì
CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ thσ ì
additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
ááMos⌠ loτ page≤ contaiε onσ o≥ morσ specia∞ datß structure≤ calleΣ loτ ì
parameter≤ (seσ Tablσ ╖-51)« Loτ parameter≤ ma∙ bσ datß counter≤ whicΦ recorΣ ì
ß coun⌠ oµ ß particula≥ even⌠ (o≥ events⌐ o≥ loτ parameter≤ ma∙ bσ lis⌠ ì
parameter≤ (strings⌐ whicΦ contaiε ß descriptioε oµ ß particula≥ event.
.cp 20è.aw off
.pm 0
Table 7-51: Log Parameter
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | (MSB) |
-----|--- Parameter Code ---|
1 | (LSB) |
-----|-----------------------------------------------------------------------|
2 | DU | DS | TSD | ETC | TMC |Reserved| LP |
-----|-----------------------------------------------------------------------|
3 | Parameter Length (n-3) |
-----|-----------------------------------------------------------------------|
4 | |
- - -|- - Paramete≥ Valuσ - -|
ε | |
==============================================================================
.aw on
.pm 3
ááEacΦ loτ paramete≥ (Tablσ ╖-51⌐ begin≤ witΦ ß fou≥-bytσ paramete≥ heade≥ ì
followeΣ b∙ onσ o≥ morσ byte≤ oµ paramete≥ valuσ data«
ááThσ paramete≥ codσ fielΣ identifie≤ whicΦ loτ paramete≥ i≤ beinτ transferreΣ ì
fo≥ tha⌠ loτ page«
ááThσ DU¼ DS¼ TSD¼ ETC¼ TMC¼ anΣ L╨ field≤ arσ collectivel∙ referreΣ t∩ a≤ thσ ì
paramete≥ contro∞ byte« Thesσ field≤ arσ describeΣ below.
ááFo≥ cumulativσ loτ paramete≥ value≤ (indicateΣ b∙ thσ P├ fielΣ oµ thσ LO╟ ì
SELEC╘ anΣ LO╟ SENS┼ commanΣ descripto≥ block)¼ thσ disablσ updatσ (DU⌐ bi⌠ i≤ ì
defineΣ a≤ follows:
áá(1⌐ ┴ zer∩ valuσ indicate≤ tha⌠ thσ targe⌠ shal∞ updatσ thσ loτ paramete≥ ì
valuσ t∩ reflec⌠ al∞ event≤ tha⌠ shoulΣ bσ noteΣ b∙ tha⌠ parameter«
áá(2⌐ ┴ onσ valuσ indicate≤ tha⌠ thσ targe⌠ shal∞ no⌠ updatσ thσ loτ paramete≥ ì
valuσ excep⌠ iε responsσ t∩ ß LO╟ SELEC╘ commanΣ tha⌠ specifie≤ ß ne≈ valuσ ì
fo≥ thσ parameter.
.lm3
ááIMPLEMENTOR╙ NOTE║ Wheε updatinτ cumulativσ loτ paramete≥ values¼ ß targe⌠ ì
ááma∙ usσ volatilσ memor∙ t∩ holΣ thesσ value≤ unti∞ ß LO╟ SELEC╘ o≥ LO╟ SENS┼ ì
áácommanΣ i≤ receiveΣ witΦ aε S╨ bi⌠ oµ onσ (o≥ ß targe⌠-defineΣ even⌠ ì
ááoccurs)« Thu≤ thσ updateΣ cumulativσ loτ paramete≥ value≤ ma∙ bσ los⌠ iµ ß ì
áápowe≥ cyclσ occurs.
.lm1
ááThσ D╒ bi⌠ i≤ no⌠ defineΣ fo≥ thresholΣ value≤ (indicateΣ b∙ thσ P├ fielΣ oµ ì
thσ LO╟ SENS┼ commanΣ descripto≥ block⌐ no≥ fo≥ lis⌠ parameter≤ (indicateΣ b∙ ì
thσ L╨ bit)« Thσ targe⌠ shal∞ ignorσ thσ valuσ oµ an∙ D╒ bit≤ iε ß LO╟ SELEC╘ ì
command.
.cp 7èáá┴ disablσ savσ (DS⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ support≤ savinτ ì
fo≥ tha⌠ loτ parameter« Thσ targe⌠ shal∞ savσ thσ curren⌠ cumulativσ o≥ thσ ì
curren⌠ thresholΣ paramete≥ valuσ (dependinτ oε thσ valuσ iε thσ P├ fielΣ oµ ì
thσ commanΣ descripto≥ block⌐ iε responsσ t∩ ß LO╟ SELEC╘ o≥ LO╟ SENS┼ commanΣ ì
witΦ ß S╨ bi⌠ oµ one« ┴ D╙ bi⌠ oµ onσ indicate≤ tha⌠ thσ targe⌠ doe≤ no⌠ ì
suppor⌠ savinτ tha⌠ loτ paramete≥ iε responsσ t∩ ß LO╟ SELEC╘ o≥ LO╟ SENS┼ ì
commanΣ witΦ ß S╨ bi⌠ oµ one.
.cp10
áá┴ targe⌠ savσ disablσ (TSD⌐ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ targe⌠ provide≤ ß ì
targe⌠-defineΣ methoΣ fo≥ savinτ loτ parameters« Thi≤ implici⌠ savinτ ì
operatioε shal∞ bσ donσ frequentl∙ enougΦ t∩ insurσ tha⌠ thσ cumulativσ ì
paramete≥ value≤ retaiε statistica∞ significancσ (i.e.¼ acros≤ powe≥ cycles)« ì
┴ TS─ bi⌠ oµ onσ indicate≤ tha⌠ eithe≥ thσ targe⌠ doe≤ no⌠ providσ ß targe⌠-ì
defineΣ methoΣ fo≥ savinτ loτ parameter≤ o≥ thσ targe⌠-defineΣ methoΣ ha≤ beeε ì
disableΣ b∙ thσ initiator« Iµ thσ initiato≥ set≤ botΦ thσ D╙ anΣ thσ TS─ bit≤ ì
se⌠ t∩ one¼ thσ targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ ì
status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ witΦ thσ additiona∞ ì
sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
ááAε enablσ thresholΣ comparisoε (ETC⌐ bi⌠ oµ onσ indicate≤ tha⌠ ß comparisoε ì
t∩ thσ thresholΣ valuσ i≤ performeΣ wheneve≥ thσ cumulativσ valuσ i≤ updated« ì
Aε ET├ bi⌠ oµ zer∩ indicate≤ tha⌠ ß comparisoε i≤ no⌠ performed« Thσ valuσ oµ ì
thσ ET├ bi⌠ i≤ thσ samσ fo≥ cumulativσ anΣ thresholΣ parameters.
ááThσ thresholΣ me⌠ criteriß (TMC⌐ fielΣ (Tablσ ╖-52⌐ define≤ thσ basi≤ fo≥ ì
comparisoε oµ thσ cumulativσ anΣ thresholΣ values« Thσ TM├ fielΣ i≤ valiΣ ì
onl∙ iµ thσ ET├ bi⌠ i≤ one« Thσ valuσ oµ thσ TM├ fielΣ i≤ thσ samσ fo≥ ì
cumulativσ anΣ thresholΣ parameters.
ááIµ thσ ET├ bi⌠ i≤ onσ anΣ thσ resul⌠ oµ thσ comparisoε i≤ true¼ ß uni⌠ ì
attentioε conditioε shal∞ bσ generateΣ fo≥ al∞ initiators« Wheε reportinτ thσ ì
uni⌠ attentioε condition¼ thσ targe⌠ shal∞ se⌠ Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ì
UNI╘ ATTENTION╗ thσ additiona∞ sensσ codσ shal∞ bσ se⌠ t∩ LO╟ EXCEPTION╗ anΣ ì
thσ additiona∞ sensσ codσ qualifie≥ se⌠ t∩ THRESHOL─ CONDITIO╬ MET«
.cp 10
.aw off
.pm 0
Table 7-52: Threshold Met Criteria
===================================================
Code Basi≤ Fo≥ Comparison
--¡ ---------------------------------------------
00b Ever∙ update oµ the cumulativσ value
01b Cumulative value equa∞ thresholΣ value
10b Cumulativσ value no⌠ equa∞ thresholΣ value
11b Cumulative valuσ greate≥ thaε thresholΣ value
===================================================
.aw on
.pm 3
.lm1
.cp 6
ááThσ lis⌠ paramete≥ (LP⌐ bi⌠ indicate≤ thσ forma⌠ oµ thσ loτ parameter« Iµ ì
aε initiato≥ attempt≤ t∩ se⌠ thσ valuσ oµ thσ L╨ bi⌠ t∩ ß valuσ othe≥ thaε thσ ì
onσ returneΣ fo≥ thσ samσ paramete≥ iε thσ LO╟ SENS┼ command¼ thσ targe⌠ shal∞ ì
terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ ì
t∩ ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
PARAMETE╥ LIST.è
.cp 15
ááAε L╨ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ paramete≥ i≤ ß datß counter« Datß ì
counter≤ arσ associateΣ witΦ onσ oµ morσ events« Thσ datß counte≥ i≤ updateΣ ì
wheneve≥ onσ oµ thesσ event≤ occur≤ b∙ incrementinτ oµ thσ counte≥ valuσ ì
provideΣ thσ D╒ bi⌠ i≤ zero« EacΦ datß counte≥ ha≤ associateΣ witΦ i⌠ ß ì
targe⌠-defineΣ maximuφ value« Upoε reachinτ thi≤ maximuφ value¼ thσ datß ì
counte≥ shal∞ no⌠ bσ incrementeΣ (i.e.¼ i⌠ doe≤ no⌠ wrap)« Wheε ß datß ì
counte≥ reache≤ it≤ maximuφ value¼ thσ targe⌠ shal∞ se⌠ thσ associateΣ D╒ bi⌠ ì
t∩ one« Iµ thσ datß counte≥ i≤ a⌠ o≥ reache≤ it≤ maximuφ valuσ durinτ thσ ì
executioε oµ ß command¼ thσ targe⌠ shal∞ completσ thσ command« Iµ thσ commanΣ ì
complete≤ correctl∙ (excep⌠ fo≥ thσ datß counte≥ beinτ a⌠ it≤ maximuφ value⌐ ì
anΣ iµ thσ RLE├ bi⌠ oµ thσ contro∞ modσ pagσ (7.3.3.1⌐ i≤ se⌠ t∩ one¼ theε thσ ì
targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ se⌠ thσ ì
sensσ ke∙ t∩ RECOVERE─ ERRO╥ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ LO╟ COUNTE╥ ì
A╘ MAXIMUM«
ááAε L╨ bi⌠ oµ onσ indicate≤ tha⌠ thσ paramete≥ i≤ ß lis⌠ parameter« Lis⌠ ì
parameter≤ arσ no⌠ counter≤ anΣ thu≤ thσ E╘ anΣ TM├ field≤ shal∞ bσ se⌠ t∩ ì
zero« ┴ lis⌠ paramete≥ i≤ ß strinτ oµ ASCI╔ graphiπ code≤ (i.e.¼ codσ value≤ ì
20Φ througΦ 7Eh).
ááIµ morσ thaε onσ lis⌠ paramete≥ i≤ defineΣ iε ß singlσ loτ page¼ thσ ì
followinτ rule≤ appl∙ t∩ assigninτ paramete≥ codes:
áá(1⌐ Thσ paramete≥ updateΣ las⌠ shal∞ havσ ß highe≥ paramete≥ codσ thaε thσ ì
previou≤ parameter¼ excep⌠ a≤ defineΣ iε rulσ (2).
áá(2⌐ Wheε thσ maximuφ paramete≥ codσ valuσ supporteΣ b∙ thσ targe⌠ i≤ ì
reached¼ thσ targe⌠ shal∞ assigε thσ lowes⌠ paramete≥ codσ valuσ t∩ thσ nex⌠ ì
loτ paramete≥ (i.e.¼ wra≡-arounΣ paramete≥ codes)« Iµ thσ associateΣ commanΣ ì
complete≤ correctl∙ (excep⌠ fo≥ thσ paramete≥ codσ beinτ a⌠ it≤ maximuφ value⌐ ì
anΣ iµ thσ RLE├ bi⌠ oµ thσ contro∞ modσ pagσ (7.3.3.1⌐ i≤ se⌠ t∩ one¼ theε thσ ì
targe⌠ shal∞ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ statu≤ anΣ se⌠ thσ ì
sensσ ke∙ t∩ RECOVERE─ ERRO╥ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ LO╟ LIS╘ ì
CODE╙ EXHAUSTED.
.cp 15
.lm 3
ááIMPLEMENTOR╙ NOTE║ Lis⌠ parameter≤ caε bσ useΣ t∩ storσ thσ location≤ oµ ì
áádefectivσ block≤ iε thσ followinτ manner« Wheε ß defectivσ blocδ i≤ ì
ááidentified¼ ß lis⌠ paramete≥ i≤ updateΣ t∩ reflec⌠ thσ locatioε anΣ causσ oµ ì
ááthσ defect« Wheε thσ nex⌠ defec⌠ i≤ encountered¼ thσ lis⌠ paramete≥ witΦ ì
ááthσ nex⌠ highe≥ paramete≥ codσ i≤ updateΣ t∩ recorΣ thi≤ defect« Thσ sizσ ì
ááoµ thσ pagσ caε bσ madσ targe⌠ specifiπ t∩ accommodatσ memor∙ limitations« ì
ááI⌠ i≤ recommendeΣ tha⌠ onσ o≥ morσ datß counte≥ parameter≤ bσ defineΣ fo≥ ì
ááthσ pagσ t∩ kee≡ tracδ oµ thσ numbe≥ oµ valiΣ lis⌠ parameter≤ anΣ thσ ì
ááparamete≥ codσ oµ thσ paramete≥ witΦ thσ oldes⌠ recordeΣ defect« Thi≤ ì
áátechniquσ caε bσ adapteΣ t∩ recorΣ othe≥ type≤ oµ information«
.lm 1
.cp 5
ááThσ paramete≥ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ ì
paramete≥ value« Iµ thσ initiato≥ send≤ ß paramete≥ lengtΦ valuσ tha⌠ result≤ ì
iε thσ truncatioε oµ thσ paramete≥ value¼ thσ targe⌠ shal∞ terminatσ thσ ì
commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ ì
REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ PARAMETE╥ LIST.
.cp 10èááIµ thσ initiato≥ send≤ ß loτ paramete≥ valuσ tha⌠ i≤ outsidσ thσ rangσ ì
supporteΣ b∙ thσ targe⌠ anΣ roundinτ i≤ implementeΣ fo≥ tha⌠ parameter¼ thσ ì
targe⌠ ma∙ either:
áá(1⌐ rounΣ t∩ aε acceptablσ valuσ anΣ terminatσ thσ commanΣ a≤ describeΣ iε ì
6.5.4.
áá(2⌐ terminatσ thσ commanΣ witΦ CHEC╦ CONDITIO╬ status¼ se⌠ thσ sensσ ke∙ t∩ ì
ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
PARAMETE╥ LIST.
ááWheε an∙ counte≥ iε ß loτ pagσ reache≤ it≤ maximuφ value¼ incrementinτ oµ ì
al∞ counter≤ iε tha⌠ loτ pagσ shal∞ ceasσ unti∞ rσ-initializeΣ b∙ thσ ì
initiato≥ viß ß LO╟ SELEC╘ command« Iµ thσ RLE├ bi⌠ oµ thσ contro∞ modσ pagσ ì
i≤ one¼ theε thσ targe⌠ shal∞ repor⌠ thσ exceptioε conditioε a≤ describeΣ iε ì
7.3.3.1.
ááThσ pagσ codσ assignment≤ fo≥ thσ loτ page≤ arσ listeΣ iε Tablσ ╖-53«
.cp 20
.aw off
.pm 0
Table 7-53: Loτ Page Codes
==============================================================================
Page Code Descriptioε Section
------------------------------------------------------------------------------
01h Buffer Over-Run/Under-Run Page 7.3.2.1
03h Erro≥ Counte≥ Pagσ (Read) Page 7.3.2.2
04h Erro≥ Counte≥ Pagσ (Read Reverse) Page 7.3.2.2
05h Erro≥ Counte≥ Pagσ (Verify⌐ Page 7.3.2.2
02h Erro≥ Counte≥ Pagσ (Write) Page 7.3.2.2
07h Last n Error Events Page 7.3.2.3
06h Non-Medium Error Pagσ 7.3.2.4
00h Supported Loτ Pages 7.3.2.5
08h - 2Fh Reserved
3Fh Reserved
30h - 3Eh Vendo≥ Specific
==============================================================================
.aw on
.pm 3
.cp 5
.aw off
.pm 0
7.3.2.1. Buffe≥ Ove≥-Run/Unde≥-Ruε Pagσ
.aw on
.pm 3
ááThσ buffe≥ ove≥-run/unde≥-ruε pagσ (pagσ codσ 01h⌐ define≤ 2┤ datß counter≤ ì
tha⌠ ma∙ bσ useΣ t∩ recorΣ thσ numbe≥ oµ buffe≥ ove≥-run≤ o≥ unde≥-run≤ fo≥ ì
thσ logica∞ unit« ┴ targe⌠ tha⌠ implement≤ thi≤ pagσ ma∙ implemen⌠ onσ o≥ ì
morσ oµ thσ defineΣ datß counters«
.cp 10
áá┴ buffe≥ ove≥-ruε o≥ unde≥-ruε caε occu≥ wheε aε initiato≥ doe≤ no⌠ transmi⌠ ì
datß t∩ o≥ froφ thσ target'≤ buffe≥ fas⌠ enougΦ t∩ kee≡ u≡ witΦ readinτ o≥ ì
writinτ thσ media« Thi≤ caε bσ causeΣ b∙ ß slo≈ transfe≥ ratσ acros≤ thσ SCS╔ ì
bu≤ o≥ b∙ ß higΦ SCS╔ bu≤ utilizatioε tha⌠ prevent≤ reconnectioε b∙ thσ ì
target« ┴ buffe≥ ove≥-ruε conditioε caε occu≥ durinτ ß reaΣ operatioε wheε ß ì
buffe≥ ful∞ conditioε prevent≤ continueΣ transfe≥ oµ datß froφ thσ mediß t∩ ì
thσ buffer« ┴ buffe≥ unde≥-ruε conditioε caε occu≥ durinτ ß writσ operatioε ì
wheε ß buffe≥ empt∙ conditioε prevent≤ continueΣ transfe≥ oµ datß t∩ thσ mediß ì
froφ thσ buffer« Mos⌠ device≤ incu≥ ß dela∙ a⌠ thi≤ poin⌠ whilσ thσ mediß i≤ ì
repositioned.
.cp 3èááTablσ ╖-5┤ define≤ thσ paramete≥ codσ fielΣ fo≥ thσ buffe≥ ove≥-run/unde≥-ì
ruε counters.
.cp 13
.aw off
.pm 0
Table 7-54: Paramete≥ Codσ Field fo≥ Buffe≥ Over-Run/Under-Ruε Counters
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | ReserveΣ |
-----|-----------------------------------------------------------------------|
1 ⁿ Coun⌠ Basis ⁿ Cause ⁿ Typσ |
==============================================================================
.pm 3
.aw on
ááThσ paramete≥ codσ fielΣ fo≥ buffe≥ ove≥-run/unde≥-ruε counter≤ i≤ ß 1╢-bi⌠ ì
valuσ compriseΣ oµ eigh⌠ reserveΣ bits¼ ß threσ-bi⌠ coun⌠ basi≤ fielΣ (Tablσ ì
╖-55)¼ ß fou≥-bi⌠ causσ fielΣ (Tablσ ╖-56)¼ anΣ ß onσ-bi⌠ typσ field« Thesσ ì
arσ concatenateΣ t∩ determinσ thσ valuσ oµ thσ paramete≥ codσ fo≥ tha⌠ loτ ì
parameter« Fo≥ example¼ ß paramete≥ codσ valuσ oµ 0023Φ specifie≤ ß coun⌠ ì
basi≤ oµ 001b¼ ß causσ oµ 0001b¼ anΣ ß typσ oµ 1Γ whicΦ i≤ ß counte≥ tha⌠ i≤ ì
incrementeΣ oncσ pe≥ commanΣ tha⌠ experience≤ aε ove≥-ruε duσ t∩ thσ SCS╔ bu≤ ì
beinτ busy.
.cp 15
ááThσ coun⌠ basi≤ fielΣ define≤ thσ criteriß fo≥ incrementinτ thσ counter« ì
Thσ followinτ criteriß arσ defined║
.cp 12
.aw off
.pm 0
Table 7-55: Coun⌠ Basi≤ Definition
================================================
Coun⌠ Basis Description
----------- -----------------------------------
000b Undefined
001b Pe≥ Command
010b Pe≥ FaileΣ Reconnect
011b Pe≥ Uni⌠ oµ Time
100b-111Γ Reserved
================================================
.pm 3
.aw on
.pm 0
.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ pe≥ uni⌠ oµ timσ coun⌠ basi≤ i≤ devicσ typσ ì
ááspecific« Direc⌠-acces≤ device≤ typicall∙ usσ ß latenc∙ perioΣ (i.e.¼ onσ ì
áárevolutioε oµ thσ medium⌐ a≤ thσ uni⌠ oµ time.
.pm 3
.lm 1
.cp15èááThσ causσ fielΣ indicate≤ thσ reasoε tha⌠ thσ ove≥-ruε o≥ unde≥-ruε ì
occurred« Thσ followinτ cause≤ arσ defined║
.cp 10
.aw off
.pm 0
Table 7-56: Causσ FielΣ Definition
=================================
Causσ Description
------- ----------------------
0h Undefined
1h SCS╔ Bu≤ Busy
2h Transfe≥ Ratσ To∩ Slow
3h-Fh Reserved
=================================
.pm 3
.aw on
ááThσ typσ fielΣ indicate≤ whethe≥ thσ counte≥ record≤ unde≥-run≤ o≥ ove≥-ì
runs« ┴ valuσ oµ zer∩ specifie≤ ß buffe≥ unde≥-ruε conditioε anΣ ß valuσ oµ ì
onσ specifie≤ ß buffe≥ ove≥-ruε condition.
ááThσ counter≤ contaiε thσ tota∞ numbe≥ oµ time≤ buffe≥ ove≥-ruε o≥ unde≥¡ ruε ì
condition≤ havσ occurreΣ sincσ thσ las⌠ timσ thσ counte≥ wa≤ cleared« Thσ ì
counte≥ shal∞ bσ incrementeΣ fo≥ eacΦ occurrencσ oµ aε unde≥-ruε o≥ ove≥-ruε ì
conditioε anΣ caε bσ incrementeΣ morσ thaε oncσ fo≥ multiplσ occurrence≤ ì
durinτ thσ executioε oµ ß singlσ command.
.cp 5
.aw off
.pm 0
7.3.2.2. Erro≥ Counte≥ Pagσs
.aw on
.pm 3
ááThi≤ sectioε define≤ thσ optiona∞ erro≥ counte≥ page≤ fo≥ writσ error≤ (pagσ ì
codσ 02h)¼ reaΣ error≤ (pagσ codσ 03h)¼ reaΣ reversσ error≤ (pagσ codσ 04h⌐ ì
anΣ verif∙ error≤ (pagσ codσ 05h)« Tablσ ╖-5░ define≤ thσ pagσ forma⌠ fo≥ ì
thesσ pages« ┴ pagσ caε returε onσ o≥ morσ loτ parameter≤ whicΦ recorΣ event≤ ì
defineΣ b∙ thσ paramete≥ code≤ (Tablσ ╖-57).
.cp 20
ááTablσ ╖-5╖ define≤ thσ paramete≥ code≤ fo≥ thσ erro≥ counte≥ pages« Suppor⌠ ì
oµ eacΦ loτ paramete≥ i≤ optional«
.cp 16
.aw off
.pm 0
Table 7-57: Parameter Codes for Error Counter Pages
======================================================
Parameter
Codσ Description
---------- ------------------------------------------
0000h Errors corrected withou⌠ substantia∞ delay
0001h Errors corrected witΦ possiblσ delays
0002h Total (e.g.¼ re-write≤ o≥ re-reads)
0003Φ Total errors corrected
0004h Total times correction algorithm processed
0005h Total bytes processed
0006Φ Tota∞ uncorrected errors
0007-7FFFΦ Reserved
8000-FFFFΦ Vendo≥ specific
======================================================
.aw on
.pm 3
.cp 3è.lm 3
ááIMPLEMENTOR╙ NOTE║ Thσ exac⌠ definitioε oµ thσ erro≥ counter≤ i≤ no⌠ par⌠ ì
ááoµ thi≤ standard« Thesσ counter≤ shoulΣ no⌠ bσ useΣ t∩ comparσ product≤ ì
áábecausσ thσ product≤ ma∙ definσ error≤ differently.
.lm 1
.cp 5
.aw off
.pm 0
7.3.2.3. Last n Error Events Page
.aw on
.pm 3
ááLoτ pagσ (07h⌐ provide≤ fo≥ ß numbe≥ oµ erro≥-even⌠ record≤ usinτ thσ lis⌠ ì
paramete≥ forma⌠ oµ thσ loτ page« Thσ numbe≥ oµ thesσ erro≥-even⌠ record≤ ì
supported¼ n¼ i≤ devicσ-specific« EacΦ erro≥-even⌠ recorΣ contain≤ devicσ-ì
specifiπ diagnostiπ informatioε fo≥ ß singlσ erro≥ encountereΣ b∙ thσ device« ì
Thσ paramete≥ codσ associateΣ witΦ erro≥-even⌠ recorΣ indicate≤ thσ relativσ ì
timσ a⌠ whicΦ thσ erro≥ occurred« ┴ highe≥ paramete≥ codσ indicate≤ tha⌠ thσ ì
erro≥ even⌠ occurreΣ late≥ iε time.
.cp 3
ááThσ conten⌠ oµ thσ paramete≥ valuσ fielΣ oµ eacΦ loτ paramete≥ i≤ aε ASCI╔ ì
characte≥ strinτ whicΦ ma∙ describσ thσ erro≥ event« Thσ exac⌠ content≤ oµ ì
thσ characte≥ strinτ i≤ no⌠ defineΣ b∙ thi≤ standard.
.cp 8
ááWheε thσ las⌠ supporteΣ paramete≥ codσ i≤ useΣ b∙ aε erro≥-even⌠ record¼ thσ ì
recordinτ oε thi≤ pagσ oµ al∞ subsequen⌠ erro≥ informatioε shal∞ ceasσ unti∞ ì
onσ o≥ morσ oµ thσ lis⌠ parameter≤ witΦ thσ highes⌠ paramete≥ code≤ havσ beeε ì
rσ-initialized« Iµ thσ RLE├ bi⌠ oµ thσ commoε modσ (7.3.3.1⌐ i≤ se⌠ t∩ one¼ ì
thσ targe⌠ shal∞ returε CHEC╦ CONDITIO╬ statu≤ witΦ thσ sensσ ke∙ se⌠ t∩ ì
RECOVERE─ ERRO╥ anΣ thσ additiona∞ sensσ codσ se⌠ t∩ LO╟ LIS╘ CODE╙ EXHAUSTED« ì
Alternatively¼ thσ targe⌠ ma∙ repor⌠ thi≤ conditioε viß asynchronou≤ even⌠ ì
notificatioε (seσ 6.5.5).
.cp 5
.aw off
.pm 0
7.3.2.4. Noε-Medium Erro≥ Pagσ
.aw on
.pm 3
ááThi≤ pagσ (pagσ codσ 06h⌐ provide≤ fo≥ summinτ thσ occurrence≤ oµ ì
recoverablσ erro≥ event≤ othe≥ thaε write¼ read¼ o≥ verif∙ failures« N∩ ì
discriminatioε amonτ thσ variou≤ type≤ oµ event≤ i≤ provideΣ b∙ paramete≥ codσ ì
(Tablσ ╖-58)« Vendo≥-specifiπ discriminatioε ma∙ bσ provideΣ througΦ thσ ì
vendo≥-specifiπ paramete≥ codes.
.cp 10
.aw off
.pm 0
Table 7-58: Noε-Medium Erro≥ Event Paramete≥ Code≤
==============================================
Parameter Codσ Description
¡¡¡¡¡¡¡¡¡----¡ ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
000░Φ Non-Medium Erro≥ Count
0001Φ ¡ 7FFFΦ Reserved
800░Φ ¡ FFFFΦ Vendo≥-Specifiπ Erro≥ Counts
==============================================
.aw on
.pm 3
.cp 25è.aw off
.pm 0
7.3.2.5. Supported Log Pages
.aw on
.pm 3
ááThσ supporteΣ loτ pagσ (Tablσ ╖-59⌐ return≤ thσ lis⌠ oµ loτ page≤ ì
implementeΣ b∙ thσ target« Target≤ tha⌠ implemen⌠ thσ LO╟ SENS┼ commanΣ shal∞ ì
implemen⌠ thi≤ loτ page«
.cp 18
.aw off
.pm 0
Table 7-59: Supported Log Pages
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Reserved | Page Code (00h) |
-----|-----------------------------------------------------------------------|
1 | Reserved |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
-----|--- Page Length (n-3⌐ ---|
3 | (LSB) |
-----|-----------------------------------------------------------------------|
4 | |
- - -|- ¡ SupporteΣ Pagσ List - -|
ε | |
==============================================================================
.aw on
.pm 3
.cp 5
ááThi≤ pagσ i≤ no⌠ defineΣ fo≥ thσ LO╟ SELEC╘ command« Thi≤ loτ pagσ return≤ ì
thσ lis⌠ oµ supporteΣ loτ page≤ fo≥ thσ specifieΣ logica∞ unit.
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ followinτ ì
supporteΣ pagσ list.
ááThσ supporteΣ pagσ lis⌠ fielΣ shal∞ contaiε ß lis⌠ oµ al∞ loτ pagσ code≤ ì
implementeΣ b∙ thσ targe⌠ iε ascendinτ orde≥ beginninτ witΦ pagσ codσ 00h.
.cp 10
.a≈ off
.pm 0
7.3.3. Mode Parameter≤
.aw on
.pm 3
ááThi≤ sectioε describe≤ thσ blocδ descriptor≤ anΣ thσ page≤ useΣ witΦ MOD┼ ì
SELEC╘ anΣ MOD┼ SENS┼ command≤ tha⌠ arσ applicablσ t∩ al∞ SCS╔ devices« Page≤ ì
specifiπ t∩ eacΦ devicσ typσ arσ describeΣ iε thσ thirΣ subsectioε oµ eacΦ ì
devicσ-typσ sectioε (i.e.¼ 8.3¼ 9.3¼ etc.).
ááThσ modσ paramete≥ lis⌠ showε iε Tablσ ╖-6░ contain≤ ß header¼ followeΣ b∙ ì
zer∩ o≥ morσ blocδ descriptors¼ followeΣ b∙ zer∩ o≥ morσ variablσ-lengtΦ ì
pages« Paramete≥ list≤ arσ defineΣ fo≥ eacΦ devicσ type.
.aw off
.pm 0
.cp 12è Table 7-60: Mode Parameter List
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 - n| Mode Parameter Header |
==============================================================================
0 - n| Block Descriptor(s) |
==============================================================================
0 - n| Page(s⌐ |
==============================================================================
.aw on
.pm 3
ááThσ si°-bytσ commanΣ descripto≥ blocδ paramete≥ heade≥ i≤ defineΣ iε Tablσ ì
╖-61« Thσ teε-bytσ commanΣ descripto≥ blocδ paramete≥ heade≥ i≤ defineΣ iε ì
Tablσ ╖-62.
.aw off
.pm 0
.cp 14
Table 7-61: Modσ Parameter Header(6)
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Mode Data Length |
-----|-----------------------------------------------------------------------|
1 | Medium Type |
-----|-----------------------------------------------------------------------|
2 | Device-Specific Paramete≥ |
-----|-----------------------------------------------------------------------|
3 | Block Descriptor Length |
==============================================================================
.aw on
.pm 3
.aw off
.pm 0
.cp 25è Table 7-62: Modσ Parameter Header(10)
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | (MSB) |
-----|--- Mode Data Length ---|
1 | (LSB) |
-----|-----------------------------------------------------------------------|
2 | Medium Type |
-----|-----------------------------------------------------------------------|
3 | Device-Specific Paramete≥ |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | (MSB) |
-----|--- Block Descriptor Length ---|
7 | (LSB) |
==============================================================================
.aw on
.pm 3
ááWheε usinτ thσ MOD┼ SENS┼ command¼ thσ modσ datß lengtΦ fielΣ specifie≤ thσ ì
lengtΦ iε byte≤ oµ thσ followinτ datß tha⌠ i≤ availablσ t∩ bσ transferred« ì
Thσ modσ datß lengtΦ doe≤ no⌠ includσ itself« Wheε usinτ thσ MOD┼ SELEC╘ ì
command¼ thi≤ fielΣ i≤ reserved.
.lm 3
ááIMPLEMENTOR╙ NOTE║ Target≤ tha⌠ suppor⌠ morσ thaε 25╢ byte≤ oµ blocδ ì
áádescriptor≤ anΣ page≤ ma∙ neeΣ t∩ implemen⌠ teε-bytσ modσ commands« Thσ ì
áámodσ datß lengtΦ fielΣ iε thσ si°-bytσ commanΣ descripto≥ blocδ heade≥ ì
áálimit≤ thσ returneΣ datß t∩ 25╢ bytes.
.lm 1
.cp 3
ááMediuφ type≤ arσ uniquσ fo≥ eacΦ devicσ type« Refe≥ t∩ thσ modσ parameter≤ ì
sectioε oµ thσ specifiπ devicσ typσ fo≥ definitioε oµ thesσ values« Somσ ì
devicσ type≤ reservσ thi≤ field.
.cp 3
ááThσ devicσ specifiπ paramete≥ i≤ uniquσ fo≥ eacΦ devicσ type« Refe≥ t∩ thσ ì
modσ parameter≤ sectioε oµ thσ specifiπ devicσ typσ fo≥ definitioε oµ thi≤ ì
field« Somσ devicσ type≤ reservσ al∞ o≥ par⌠ oµ thi≤ field.
.cp 7
ááThσ blocδ descripto≥ lengtΦ specifie≤ thσ lengtΦ iε byte≤ oµ al∞ thσ blocδ ì
descriptors« I⌠ i≤ equa∞ t∩ thσ numbe≥ oµ blocδ descriptor≤ time≤ eigh⌠ anΣ ì
doe≤ no⌠ includσ page≤ o≥ vendo≥-specifiπ parameters¼ iµ any¼ tha⌠ ma∙ follo≈ ì
thσ las⌠ blocδ descriptor« ┴ blocδ descripto≥ lengtΦ oµ zer∩ indicate≤ tha⌠ ì
n∩ blocδ descriptor≤ arσ includeΣ iε thσ modσ paramete≥ list« Thi≤ conditioε ì
shal∞ no⌠ bσ considereΣ aε error.
ááThσ modσ paramete≥ blocδ descripto≥ i≤ showε iε Tablσ ╖-63.
.cp 23è.aw off
.pm 0
.cp 30
Table 7-63: Mode Parameter Block Descriptor
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Density Code |
-----|-----------------------------------------------------------------------|
1 | (MSB) |
-----|--- ---|
2 | Number of Blocks |
-----|--- ---|
3 | (LSB) |
-----|-----------------------------------------------------------------------|
4 | Reserved |
-----|-----------------------------------------------------------------------|
5 | (MSB) |
-----|--- ---|
6 | Block Length |
-----|--- ---|
7 | (LSB) |
==============================================================================
.aw1
.pm3
ááBlocδ descriptor≤ specif∙ somσ oµ thσ mediuφ characteristic≤ fo≥ al∞ o≥ par⌠ ì
oµ ß logica∞ unit« Suppor⌠ fo≥ blocδ descriptor≤ i≤ optional« EacΦ blocδ ì
descripto≥ contain≤ ß densit∙ codσ field¼ ß numbe≥ oµ block≤ field¼ anΣ ß ì
blocδ lengtΦ field« Blocδ descripto≥ value≤ arσ alway≤ curren⌠ (i.e.¼ savinτ ì
i≤ no⌠ supported)« ┴ uni⌠ attentioε conditioε (seσ 6.9⌐ shal∞ bσ generateΣ ì
wheε an∙ blocδ descripto≥ value≤ arσ changed.
ááThσ densit∙ codσ fielΣ i≤ uniquσ fo≥ eacΦ devicσ type« Refe≥ t∩ thσ modσ ì
parameter≤ sectioε oµ thσ specifiπ devicσ typσ fo≥ definitioε oµ thi≤ field« ì
Somσ devicσ type≤ reservσ al∞ o≥ par⌠ oµ thi≤ field.
ááThσ numbe≥ oµ block≤ fielΣ specifie≤ thσ numbe≥ oµ logica∞ block≤ oε thσ ì
mediuφ t∩ whicΦ thσ densit∙ codσ anΣ blocδ lengtΦ field≤ apply« ┴ valuσ oµ ì
zer∩ indicate≤ tha⌠ al∞ oµ thσ remaininτ logica∞ block≤ oµ thσ logica∞ uni⌠ ì
shal∞ havσ thσ mediuφ characteristic≤ specified.
.cp 10
.lm3
ááIMPLEMENTOR╙ NOTES:
áá(1⌐ Therσ ma∙ bσ implici⌠ associatioε betweeε parameter≤ defineΣ iε thσ ì
áápage≤ anΣ blocδ descriptors« Fo≥ direc⌠-acces≤ devices¼ thσ blocδ lengtΦ ì
ááaffect≤ thσ optimuφ value≤ (thσ value≤ tha⌠ achievσ bes⌠ performance⌐ fo≥ ì
ááthσ sector≤ pe≥ track¼ byte≤ pe≥ physica∞ sector¼ tracδ ske≈ factor¼ anΣ ì
áácylinde≥ ske≈ facto≥ field≤ iε thσ forma⌠ parameter≤ page« Iε thi≤ case¼ ì
ááthσ targe⌠ ma∙ changσ parameter≤ no⌠ explicitl∙ sen⌠ witΦ thσ MOD┼ SELEC╘ ì
áácommand« ┴ subsequen⌠ MOD┼ SENS┼ commanΣ woulΣ reflec⌠ thesσ changes.
áá(2⌐ Thσ numbe≥ oµ remaininτ logica∞ block≤ ma∙ bσ unknowε fo≥ somσ devicσ ì
áátypes.
.lm 1
.cp 5èááThσ blocδ lengtΦ specifie≤ thσ lengtΦ iε byte≤ oµ eacΦ logica∞ blocδ ì
describeΣ b∙ thσ blocδ descriptor« Fo≥ sequentia∞-acces≤ devices¼ ß blocδ ì
lengtΦ oµ zer∩ indicate≤ tha⌠ thσ logica∞ blocδ sizσ writteε t∩ thσ mediuφ i≤ ì
specifieΣ b∙ thσ transfe≥ lengtΦ fielΣ iε thσ commanΣ descripto≥ blocδ (seσ ì
9.2.╡ anΣ 9.2.15)
.cp 20
ááThσ modσ pagσ forma⌠ i≤ defineΣ iε Tablσ ╖-64.
.aw off
.pm 0
.cp 15
Table 7-64: Mode Page Format
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | PS |Reserved| Page Code |
-----|-----------------------------------------------------------------------|
1 | Page Length |
-----|-----------------------------------------------------------------------|
2 - n| Mode Parameter≤ |
==============================================================================
.aw1
.pm3
ááEacΦ modσ pagσ contain≤ ß pagσ code¼ ß pagσ length¼ anΣ ß se⌠ oµ modσ ì
parameters« Thσ pagσ code≤ arσ defineΣ iε Tablσ ╖-6╡ anΣ iε thσ modσ ì
paramete≥ suΓ-section≤ oµ thσ specifiπ devicσ type.
ááWheε usinτ thσ MOD┼ SENS┼ command¼ ß parameter≤ savablσ (PS⌐ bi⌠ oµ onσ ì
indicate≤ tha⌠ thσ modσ pagσ caε bσ saveΣ b∙ thσ targe⌠ iε ß noε-volatile¼ ì
vendo≥-specifiπ location« ┴ P╙ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ supporteΣ ì
parameter≤ canno⌠ bσ saved« Wheε usinτ thσ MOD┼ SELEC╘ command¼ thσ P╙ bi⌠ i≤ ì
reserved.
ááThσ pagσ codσ fielΣ identifie≤ thσ forma⌠ anΣ parameter≤ defineΣ fo≥ tha⌠ ì
modσ page« Somσ pagσ code≤ arσ defineΣ a≤ applyinτ t∩ al∞ devicσ type≤ (Tablσ ì
╖-65⌐ anΣ othe≥ pagσ code≤ arσ defineΣ fo≥ thσ specifiπ devicσ type«
ááWheε usinτ thσ MOD┼ SENS┼ command¼ iµ pagσ codσ 00Φ (vendo≥-specifiπ page⌐ ì
i≤ implemented¼ thσ targe⌠ shal∞ returε tha⌠ pagσ las⌠ iε responsσ t∩ ß ì
reques⌠ t∩ returε al∞ page≤ (pagσ codσ 3Fh)« Wheε usinτ thσ MOD┼ SELEC╘ ì
command¼ thi≤ pagσ shoulΣ bσ sen⌠ last.
.cp10
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ modσ parameter≤ ì
tha⌠ follow« Iµ thσ initiato≥ doe≤ no⌠ se⌠ thi≤ valuσ t∩ thσ valuσ tha⌠ i≤ ì
returneΣ fo≥ thσ pagσ b∙ thσ MOD┼ SENS┼ command¼ thσ targe⌠ shal∞ terminatσ ì
thσ commanΣ witΦ CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ t∩ ì
ILLEGA╠ REQUES╘ witΦ thσ additiona∞ sensσ codσ se⌠ t∩ INVALI─ FIEL─ I╬ ì
PARAMETE╥ LIST« Thσ targe⌠ i≤ permitteΣ t∩ implemen⌠ ß modσ pagσ tha⌠ i≤ les≤ ì
thaε thσ ful∞ pagσ lengtΦ defineΣ b∙ thi≤ standard¼ provideΣ n∩ fielΣ i≤ ì
truncateΣ anΣ thσ pagσ lengtΦ fielΣ correctl∙ specifie≤ thσ actua∞ lengtΦ ì
implemented.
.cp3
ááThσ modσ parameter≤ fo≥ eacΦ pagσ arσ defineΣ iε thσ followinτ suΓ-section≤ ì
o≥ iε thσ modσ parameter≤ suΓ-sectioε fo≥ thσ specifiπ devicσ type« Modσ ì
parameter≤ no⌠ implementeΣ b∙ thσ targe⌠ shal∞ bσ se⌠ t∩ zero.
è.cp 2
ááTablσ ╖-6╡ define≤ thσ modσ page≤ tha⌠ arσ applicablσ t∩ al∞ devicσ type≤ ì
tha⌠ includσ thσ MOD┼ SELEC╘ anΣ MOD┼ SENS┼ commands.
.aw off
.pm 0
.cp 20
Table 7-65: Modσ Page Codes
==============================================================================
Page Code Description Section
------------------------------------------------------------------------------
0Ah Control Mode Page 7.3.3.1
02h Disconnect-Reconnec⌠ Page 7.3.3.2
09h Peripheral Devicσ Page 7.3.3.3
01h (See specific device type)
03h - 08h (See specific device type)
0Bh - 1Fh (See specific device type)
00h Vendo≥ specific (does not require page format)
20h - 3Eh Vendo≥ specific (page format required)
3Fh Return all page≤ (valiΣ onl∙ fo≥ thσ MOD┼ SENS┼ command)
==============================================================================
.aw on
.pm 3
.cp 24
.aw off
.pm 0
7.3.3.1. Control Mode Page
Table 7-66: Control Modσ Page
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | PS |Reserved| Page Code (0Ah) |
-----|-----------------------------------------------------------------------|
1 | Page Length (06h) |
-----|-----------------------------------------------------------------------|
2 | Reserved ⁿ RLEC |
-----|-----------------------------------------------------------------------|
3 | Queue Algorithm Modifier | Reserved | QErr | DQue |
-----|-----------------------------------------------------------------------|
4 | EECA | Reserved | RAENP | UAAENP | EAENP |
-----|-----------------------------------------------------------------------|
5 | Reserved |
-----|-----------------------------------------------------------------------|
6 | |
-----|--- Ready AEN Holdoff Period ---|
7 | |
==============================================================================
.aw on
.pm 3
.cp 4
ááThσ contro∞ modσ pagσ (Tablσ ╖-66⌐ provide≤ control≤ ove≥ severa∞ SCS╔-▓ ì
feature≤ whicΦ arσ applicablσ t∩ al∞ devicσ type≤ sucΦ a≤ taggeΣ queuing¼ ì
extendeΣ contingen⌠ allegiance¼ asynchronou≤ even⌠ notification¼ anΣ erro≥ ì
logging.
.cp 3
áá┴ repor⌠ loτ exceptioε conditioε (RLEC⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ì
shal∞ repor⌠ loτ exceptioε condition≤ a≤ describeΣ iε 7.3.2« ┴ RLE├ bi⌠ oµ ì
zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ repor⌠ loτ exceptioε conditions.
è.cp 3
ááThσ queuσ algorithφ modifie≥ fielΣ (Tablσ ╖-67⌐ specifie≤ restriction≤ oε ì
thσ algorithφ useΣ fo≥ rσ-orderinτ command≤ tha⌠ arσ taggeΣ witΦ thσ SIMPL┼ ì
QUEU┼ TA╟ message.
.aw off
.pm 0
.cp 15
Table 7-67: Queue Algorithm Modifier
===============================================
Value Definition
------- --------------------------------
0h RestricteΣ re-ordering
1h Unrestricted re-ordering allowed
2h - 7h Reserved
8h - Fh Vendo≥ specific
===============================================
.aw on
.pm 3
.cp8
áá┴ valuσ oµ zer∩ iε thi≤ fielΣ specifie≤ tha⌠ thσ targe⌠ shal∞ orde≥ thσ ì
actua∞ executioε sequencσ oµ thσ queueΣ command≤ froφ eacΦ initiato≥ sucΦ tha⌠ ì
datß integrit∙ i≤ maintaineΣ fo≥ tha⌠ initiator« Thi≤ mean≤ that¼ iµ thσ ì
transmissioε oµ ne≈ command≤ wa≤ halteΣ a⌠ an∙ time¼ thσ fina∞ valuσ oµ al∞ ì
datß observablσ oε thσ mediuφ shal∞ havσ exactl∙ thσ samσ valuσ a≤ i⌠ woulΣ ì
havσ iµ thσ command≤ haΣ beeε executeΣ iε thσ samσ receiveΣ sequencσ withou⌠ ì
taggeΣ queuing« Thσ restricteΣ reorderinτ valuσ shal∞ bσ thσ defaul⌠ value.
.cp 5
áá┴ valuσ oµ onσ iε thi≤ fielΣ specifie≤ tha⌠ thσ targe⌠ ma∙ rσ-orde≥ thσ ì
actua∞ executioε sequencσ oµ thσ queueΣ command≤ iε an∙ manne≥ i⌠ selects« ì
An∙ datß integrit∙ exposure≤ relateΣ t∩ commanΣ sequencσ orde≥ arσ explicitl∙ ì
handleΣ b∙ thσ initiato≥ througΦ thσ selectioε oµ appropriatσ command≤ anΣ ì
queuσ taτ messages«
áá┴ queuσ erro≥ managemen⌠ (QErr⌐ bi⌠ oµ zer∩ specifie≤ tha⌠ thosσ command≤ ì
stil∞ queueΣ afte≥ thσ targe⌠ ha≤ entereΣ thσ contingen⌠ allegiancσ o≥ ì
extendeΣ contingen⌠ allegiancσ condition≤ shal∞ continuσ executioε iε ß norma∞ ì
manne≥ wheε tha⌠ conditioε ha≤ terminateΣ (seσ 6.8)« ┴ QEr≥ bi⌠ oµ onσ ì
specifie≤ tha⌠ thosσ command≤ stil∞ queueΣ afte≥ thσ targe⌠ ha≤ entereΣ thσ ì
contingen⌠ allegiancσ o≥ extendeΣ contingen⌠ allegiancσ condition≤ shal∞ bσ ì
aborteΣ wheε tha⌠ conditioε ha≤ terminated« ┴ uni⌠ attentioε conditioε shal∞ ì
bσ generateΣ fo≥ eacΦ initiato≥ whicΦ haΣ command≤ iε thσ queuσ excep⌠ thσ ì
initiato≥ tha⌠ receiveΣ thσ origina∞ INITIAT┼ RECOVER┘ message« Wheε ì
reportinτ thσ uni⌠ attentioε condition¼ thσ targe⌠ shal∞ se⌠ thσ additiona∞ ì
sensσ codσ t∩ TAGGE─ COMMAND╙ CLEARE─ B┘ ANOTHE╥ INITIATOR.
.cp 2
áá┴ disablσ queuinτ (DQue⌐ bi⌠ oµ zer∩ specifie≤ tha⌠ taggeΣ queuinτ shal∞ bσ ì
enableΣ iµ thσ targe⌠ support≤ taggeΣ queuing« ┴ DQuσ bi⌠ oµ onσ specifie≤ ì
tha⌠ taggeΣ queuinτ shal∞ bσ disabled« An∙ queueΣ command≤ fo≥ tha⌠ I_T_° ì
nexu≤ shal∞ bσ aborted« An∙ subsequen⌠ queuσ taτ messagσ receiveΣ shal∞ bσ ì
rejecteΣ witΦ ß MESSAG┼ REJEC╘ messagσ anΣ thσ I/╧ proces≤ shal∞ bσ executeΣ ì
a≤ aε untaggeΣ commanΣ (seσ 6.8.1).
.cp 3
ááAε enablσ extendeΣ contingen⌠ allegiancσ (EECA⌐ bi⌠ oµ onσ specifie≤ tha⌠ ì
extendeΣ contingen⌠ allegiancσ i≤ enableΣ (seσ 6.7)« Aε EEC┴ bi⌠ oµ zer∩ ì
specifie≤ tha⌠ extendeΣ contingen⌠ allegiancσ i≤ disabled.
.cp 3
ááThσ RAENP¼ UAAENP¼ anΣ EAEN╨ bit≤ enablσ specifiπ event≤ t∩ bσ reporteΣ viß ì
thσ asynchronou≤ even⌠ notificatioε protocol« Wheε al∞ threσ bit≤ arσ zero¼ ì
thσ targe⌠ shal∞ no⌠ creatσ asynchronou≤ even⌠ notifications.è
.cp 5
áá┴ read∙ AE╬ permissioε (RAENP⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ma∙ ì
issuσ aε asynchronou≤ even⌠ notificatioε upoε completinτ it≤ initializatioε ì
sequencσ insteaΣ oµ generatinτ ß uni⌠ attentioε condition« ┴ RAEN╨ bi⌠ oµ ì
zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ issuσ aε asynchronou≤ even⌠ ì
notificatioε upoε completinτ it≤ initializatioε sequence.
.lm 3
ááIMPLEMENTOR╙ NOTE║ Iµ thσ target'≤ defaul⌠ valuσ fo≥ thσ RAEN╨ bi⌠ i≤ onσ ì
ááanΣ i⌠ doe≤ no⌠ implemen⌠ saveΣ parameter≤ o≥ includσ ß hardwarσ switch¼ ì
áátheε i⌠ ma∙ no⌠ bσ possiblσ t∩ disablσ thσ initializatioε sequencσ ì
ááasynchronou≤ even⌠ notification.
.lm 1
.cp 6
áá┴ uni⌠ attentioε AE╬ permissioε (UAAENP⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ ì
targe⌠ ma∙ issuσ aε asynchronou≤ even⌠ notificatioε insteaΣ oµ creatinτ ß uni⌠ ì
attentioε conditioε upoε detectinτ aε even⌠ whicΦ woulΣ causσ ß uni⌠ attentioε ì
conditioε (othe≥ thaε upoε completinτ aε initializatioε sequence)« ┴ UAAEN╨ ì
bi⌠ oµ zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ issuσ aε asynchronou≤ even⌠ ì
notificatioε insteaΣ oµ creatinτ ß uni⌠ attentioε condition.
ááAε erro≥ AE╬ permissioε (EAENP⌐ bi⌠ oµ onσ specifie≤ tha⌠ thσ targe⌠ ma∙ ì
issuσ aε asynchronou≤ even⌠ notificatioε upoε detectinτ ß deferreΣ erro≥ ì
conditioε insteaΣ oµ waitinτ t∩ repor⌠ thσ deferreΣ erro≥ oε thσ nex⌠ command« ì
Aε EAEN╨ bi⌠ oµ zer∩ specifie≤ tha⌠ thσ targe⌠ shal∞ no⌠ repor⌠ deferreΣ erro≥ ì
condition≤ viß aε asynchronou≤ even⌠ notification.
ááThσ read∙ AE╬ holdofµ perioΣ fielΣ specifie≤ thσ minimuφ timσ iε ì
millisecond≤ afte≥ thσ targe⌠ start≤ it≤ initializatioε sequencσ tha⌠ i⌠ shal∞ ì
dela∙ beforσ attemptinτ t∩ issuσ aε asynchronou≤ even⌠ notification« Thi≤ ì
valuσ ma∙ bσ roundeΣ u≡ a≤ defineΣ iε 6.5.4.
.cp 40è.aw off
.pm 0
7.3.3.2. Disconnect-Reconnect Page
Table 7-68: Disconnect-Reconnect Page
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | PS |Reservedⁿ Page Code (02h) |
-----|-----------------------------------------------------------------------|
1 | Page Length (0Eh) |
-----|-----------------------------------------------------------------------|
2 | Buffer Full Ratio |
-----|-----------------------------------------------------------------------|
3 | Buffer Empty Ratio |
-----|-+---------------------------------------------------------------------|
4 | (MSB) |
-----|--- Bus Inactivity Limit ---|
5 | (LSB) |
-----|-----------------------------------------------------------------------|
6 | (MSB) |
-----|--- Disconnect Time Limit ---|
7 | (LSB) |
-----|-+---------------------------------------------------------------------|
8 | (MSB) |
-----|--- Connect Time Limit ---|
9 | (LSB) |
-----|-----------------------------------------------------------------------|
10 | (MSB) |
-----|--- Maximum Burst Size ---|
11 | (LSB) |
-----|-----------------------------------------------------------------------|
12 | Reserved | DTDC |
-----|-----------------------------------------------------------------------|
13 | Reserved |
-----|-----------------------------------------------------------------------|
14 | Reserved |
-----|-----------------------------------------------------------------------|
15 | Reserved |
==============================================================================
.aw on
.pm 3
.cp 5
ááThσ disconnec⌠-reconnec⌠ pagσ (Tablσ ╖-68⌐ provide≤ thσ initiato≥ thσ mean≤ ì
t∩ tunσ thσ performancσ oµ thσ SCS╔ bus.
.cp 5
ááThσ buffe≥ ful∞ rati∩ fielΣ indicate≤ t∩ thσ target¼ oε reaΣ operations¼ ho≈ ì
ful∞ thσ buffe≥ shoulΣ bσ prio≥ t∩ attemptinτ ß reselection« Target≤ tha⌠ d∩ ì
no⌠ implemen⌠ thσ requesteΣ rati∩ shoulΣ rounΣ dowε t∩ thσ neares⌠ implementeΣ ì
rati∩ a≤ defineΣ iε 6.5.4«
.cp 4
ááThσ buffe≥ empt∙ rati∩ fielΣ indicate≤ t∩ thσ target¼ oε writσ operations¼ ì
ho≈ empt∙ thσ buffe≥ shoulΣ bσ prio≥ t∩ attemptinτ ß reselection« Target≤ ì
tha⌠ d∩ no⌠ implemen⌠ thσ requesteΣ rati∩ shoulΣ rounΣ dowε t∩ thσ neares⌠ ì
implementeΣ rati∩ a≤ defineΣ iε 6.5.4«
è.cp 5
ááThσ buffe≥ ful∞ anΣ buffe≥ empt∙ ratio≤ arσ numerator≤ oµ ß fractiona∞ ì
multiplie≥ tha⌠ ha≤ 25╢ a≤ it≤ denominator« ┴ valuσ oµ zer∩ indicate≤ tha⌠ ì
thσ targe⌠ determine≤ wheε t∩ initiatσ reselectioε consisten⌠ witΦ thσ ì
disconnec⌠ timσ limi⌠ parameter« Thesσ parameter≤ arσ advisor∙ t∩ thσ target.
.lm 3
ááIMPLEMENTOR╙ NOTE║ A≤ aε example¼ conside≥ ß targe⌠ witΦ teε 51▓-bytσ ì
áábuffer≤ anΣ ß specifieΣ buffe≥ ful∞ rati∩ oµ 3Fh« Thσ formulß is║ ì
ááINTEGER((ratio/256)*numbe≥ oµ buffers)« Thu≤ INTEGER((3Fh/256)*10⌐ ╜ 2« ì
ááThσ targe⌠ shoulΣ attemp⌠ t∩ reselec⌠ thσ initiato≥ oε reaΣ operation≤ ì
ááwheneve≥ tw∩ o≥ morσ buffer≤ arσ full«
.lm 1
.cp 7
ááThσ bu≤ inactivit∙ limi⌠ fielΣ indicate≤ thσ maximuφ timσ iε 10░ microseconΣ ì
increment≤ tha⌠ thσ targe⌠ i≤ permitteΣ t∩ asser⌠ thσ BS┘ signa∞ withou⌠ ß ì
REQ/AC╦ handshake« Iµ thσ bu≤ inactivit∙ limi⌠ i≤ exceedeΣ thσ targe⌠ shal∞ ì
attemp⌠ t∩ disconnec⌠ iµ thσ initiato≥ ha≤ granteΣ thσ disconnec⌠ privilegσ ì
(seσ 5.6.7⌐ anΣ i⌠ i≤ no⌠ restricteΣ b∙ DTDC« Thi≤ valuσ ma∙ bσ roundeΣ a≤ ì
defineΣ iε 6.5.4« ┴ valuσ oµ zer∩ indicate≤ tha⌠ therσ i≤ n∩ bu≤ inactivit∙ ì
limit.
.cp 4
ááThσ disconnec⌠ timσ limi⌠ fielΣ indicate≤ thσ minimuφ timσ iε 10░ ì
microseconΣ increment≤ tha⌠ thσ targe⌠ shal∞ wai⌠ afte≥ releasinτ thσ SCS╔ bu≤ ì
beforσ attemptinτ reselection« Thi≤ valuσ ma∙ bσ roundeΣ a≤ defineΣ iε 6.5.4« ì
┴ valuσ oµ zer∩ indicate≤ tha⌠ therσ i≤ n∩ disconnec⌠ timσ limit.
.c≡ ╡
ááThσ connec⌠ timσ limi⌠ fielΣ indicate≤ thσ maximuφ timσ iε 10░ microseconΣ ì
increment≤ tha⌠ thσ targe⌠ i≤ alloweΣ t∩ usσ thσ SCS╔ bu≤ beforσ disconnectinτ ì
iµ thσ initiato≥ ha≤ granteΣ thσ disconnec⌠ privilegσ (seσ 5.6.7⌐ anΣ i⌠ i≤ ì
no⌠ restricteΣ b∙ DTDC« Thi≤ valuσ ma∙ bσ roundeΣ a≤ defineΣ iε 6.5.4« ┴ ì
valuσ oµ zer∩ indicate≤ tha⌠ therσ i≤ n∩ connec⌠ timσ limit.
ááThσ maximuφ burs⌠ sizσ fielΣ indicate≤ thσ maximuφ amoun⌠ oµ datß tha⌠ thσ ì
targe⌠ shal∞ transfe≥ durinτ ß datß phasσ beforσ disconnectinτ iµ thσ ì
initiato≥ ha≤ granteΣ thσ disconnec⌠ privilege« Thi≤ valuσ i≤ expresseΣ iε ì
increment≤ oµ 51▓ byte≤ (e.g.¼ ß valuσ oµ onσ mean≤ 51▓ bytes¼ tw∩ mean≤ 102┤ ì
bytes¼ etc.)« ┴ valuσ oµ zer∩ indicate≤ therσ i≤ n∩ limi⌠ oε thσ amoun⌠ oµ ì
datß transferreΣ pe≥ connection«
.cp 2
ááThσ datß transfe≥ disconnec⌠ contro∞ (DTDC⌐ fielΣ (Tablσ ╖-69⌐ define≤ ì
furthe≥ restriction≤ oε wheε ß disconnec⌠ i≤ permitted.
.aw off
.pm 0
.cp 17è Table 7-69: Datß Transfe≥ Disconnec⌠ Control
==============================================================================
DTD├ Description
----¡¡ ----------------------------------------------------------------------
.lm 9
.pm 3
.aw on
áá00b Datß transfe≥ disconnec⌠ contro∞ i≤ no⌠ used« Disconnec⌠ i≤ ì
áááááááácontrolleΣ b∙ thσ othe≥ field≤ iε thi≤ page.
áá01b ┴ targe⌠ shal∞ no⌠ attemp⌠ t∩ disconnec⌠ oncσ thσ datß transfe≥ oµ ß ì
áááááááácommanΣ ha≤ starteΣ unti∞ al∞ datß thσ commanΣ i≤ t∩ transfe≥ ha≤ beeε ì
áááááááátransferred« Thσ connec⌠ timσ limi⌠ anΣ bu≤ inactivit∙ limi⌠ arσ ì
ááááááááignoreΣ durinτ thσ datß transfer.
áá10b Reserved
áá11b ┴ targe⌠ shal∞ no⌠ attemp⌠ t∩ disconnec⌠ oncσ thσ datß transfe≥ oµ ß ì
áááááááácommanΣ ha≤ starteΣ unti∞ thσ commanΣ i≤ complete« Thσ connec⌠ timσ ì
áááááááálimi⌠ anΣ bu≤ inactivit∙ limi⌠ arσ ignoreΣ oncσ datß transfe≥ ha≤ ì
áááááááástarted.
.lm 1
.pm 0
.aw off
==============================================================================
.aw on
.pm 3
.cp 3
ááIµ DTD├ i≤ nonzer∩ anΣ thσ maximuφ burs⌠ sizσ i≤ nonzer∩ thσ targe⌠ shal∞ ì
returε CHEC╦ CONDITIO╬ status« Thσ sensσ ke∙ shal∞ bσ se⌠ t∩ ILLEGA╠ REQUES╘ ì
anΣ thσ additiona∞ sensσ codσ se⌠ t∩ ILLEGA╠ FIEL─ I╬ PARAMETE╥ LIST«
.cp 30
.aw off
.pm 0
7.3.3.3. Peripheral Device Page
Table 7-70: Peripheral Device Page
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | PS |Reserved| Page Code (09h) |
-----|-----------------------------------------------------------------------|
1 | Page LengtΦ (n-1) |
-----|-----------------------------------------------------------------------|
2 | (MSB) |
-----|--- Interface Identifier ---|
3 | (LSB) |
-----|-+---------------------------------------------------------------------|
4 | ReserveΣ |
-----|-----------------------------------------------------------------------|
5 | ReserveΣ |
-----|-----------------------------------------------------------------------|
6 | Reserved |
-----|-----------------------------------------------------------------------|
7 | Reserved |
-----|-+---------------------------------------------------------------------|
8 | |
-----|¡ - Vendo≥ Specifiπ ¡ -|
ε | |
==============================================================================
.aw on
.pm 3
.cp 4èááThσ periphera∞ devicσ pagσ (Tablσ ╖-70⌐ i≤ useΣ t∩ pas≤ vendo≥-specifiπ ì
informatioε betweeε aε initiato≥ anΣ ß periphera∞ interfacσ belo≈ thσ targe⌠ ì
(i.e.¼ betweeε thσ targe⌠ anΣ thσ periphera∞ device)« Thi≤ standarΣ doe≤ no⌠ ì
definσ thσ forma⌠ oµ thi≤ data¼ excep⌠ t∩ providσ ß standarΣ header«
.cp 17
ááInterfacσ identifie≥ code≤ arσ defineΣ iε thσ Tablσ ╖-71.
.aw off
.pm 0
.cp 15
Table 7-71: Interface Identifier Codes
==============================================================================
Reference
Code Value Interface Standard
----------- --------------------------------¡ --------------------------
0000h Small Computer System Interface X3.131
0001h Storage Module Interface X3.91M-1987
0002h Enhanced Small Device Interface X3.170
0003h IPI-▓ X3.130-1986╗ X3T9.3/87-002
0004h IPI-│ X3.13▓-1987; X3.147-1988
0005h-7FFFh ReserveΣ
8000h-FFFFh Vendo≥ Specific
==============================================================================
.aw on
.pm 3
.. Editors: Remember to update the reference standards prior to publication.
.cp 20
.aw off
.pm 0
7.3.4. Vita∞ Produc⌠ ─ata Parameters
.aw on
.pm 3
ááThi≤ sectioε describe≤ thσ optiona∞ vita∞ produc⌠ datß pagσ structurσ anΣ ì
thσ vita∞ produc⌠ datß page≤ (Tablσ ╖-72⌐ tha⌠ arσ applicablσ t∩ al∞ SCS╔ ì
devices« Thesσ page≤ arσ optionall∙ returneΣ b∙ thσ INQUIR┘ commanΣ (7.2.5⌐ ì
anΣ contaiε vendo≥-specifiπ produc⌠ informatioε abou⌠ ß targe⌠ o≥ logica∞ ì
unit« Thσ vita∞ produc⌠ datß ma∙ includσ vendo≥ identification¼ produc⌠ ì
identification¼ uni⌠ seria∞ numbers¼ devicσ operatinτ definitions¼ ì
manufacturinτ data¼ fielΣ replaceablσ uni⌠ information¼ anΣ othe≥ vendo≥-ì
specifiπ information« Thi≤ standarΣ define≤ thσ structurσ oµ thσ vita∞ ì
produc⌠ data¼ bu⌠ no⌠ thσ contents.
.cp 14
.aw off
.pm 0
Table 7-72: Vital Product Data Pagσ Codes
==============================================================================
Pagσ Codσ Description Section
------------------------------------------------------------------------------
82h ASCI╔ ImplementeΣ Operatinτ Definitioε Pagσ 7.3.4.1
01h - 7Fh ASCI╔ Informatioε Page 7.3.4.2
81h ImplementeΣ Operatinτ Definition≤ Page 7.3.4.3
00h SupporteΣ Vital Product Data Pages 7.3.4.4
80h Uni⌠ Seria∞ Numbe≥ Page 7.3.4.5
83h - BFh Reserved
C0h - FFh Vendo≥ Specific
==============================================================================
.lm 1
.pm 0
.cp 27è.aw off
.pm 0
7.3.4.1. ASCI╔ ImplementeΣ Operatinτ Definitioε Page
.cp 20
.aw off
.pm 0
Table 7-73: ASCI╔ ImplementeΣ Operating Definition
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Peripheral Qualifier | Peripheral Device Type |
-----|-----------------------------------------------------------------------|
1 | Pagσ Code (82h⌐ |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Page Length (n-3⌐ |
-----|-----------------------------------------------------------------------|
4 | ASCII Operatinτ Definitioε Description Length (m-4⌐ |
-----|-----------------------------------------------------------------------|
5 | |
- - -|- - ASCII Operating Definition Description Data - -|
φ | |
-----|-----------------------------------------------------------------------|
m+1 | |
- - -|- - Vendor-Specific Description Datß - -|
ε | |
==============================================================================
.aw on
.pm 3
ááThi≤ pagσ (Tablσ ╖-73⌐ contain≤ operatinτ definitioε descriptioε datß fo≥ ì
al∞ operatinτ definition≤ implementeΣ b∙ thσ target« Thσ content≤ oµ thi≤ ì
datß i≤ no⌠ defineΣ b∙ thi≤ standard.
.cp 5
ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
.cp 5
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ followinτ pagσ data« Iµ ì
thσ allocatioε lengtΦ i≤ les≤ thaε thσ lengtΦ oµ thσ datß t∩ bσ returneΣ thσ ì
pagσ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ truncation.
.cp 5
ááThσ ASCI╔ operatinτ definitioε descriptioε lengtΦ fielΣ specifie≤ thσ lengtΦ ì
iε byte≤ oµ thσ ASCI╔ operatinτ definitioε descriptioε datß tha⌠ follows« Iµ ì
thσ allocatioε lengtΦ i≤ les≤ thaε thσ lengtΦ oµ datß t∩ bσ returned¼ thσ ì
ASCI╔ operatinτ definitioε descriptioε lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ ì
thσ truncation« ┴ valuσ oµ zer∩ iε thi≤ fielΣ indicate≤ tha⌠ n∩ ASCI╔ ì
operatinτ definitioε descriptioε datß i≤ available.
.cp 5
ááThσ ASCI╔ operatinτ definitioε descriptioε datß fielΣ contain≤ thσ ASCI╔ ì
operatinτ definitioε descriptioε datß fo≥ thσ targe⌠ o≥ logica∞ unit« Thσ ì
datß iε thi≤ fielΣ shal∞ bσ formatteΣ iε line≤ (o≥ characte≥ strings)« EacΦ ì
linσ shal∞ contaiε onl∙ graphiπ code≤ (i.e.¼ codσ value≤ 20Φ througΦ 7Eh⌐ anΣ ì
shal∞ bσ terminateΣ witΦ ß NUL╠ (00h⌐ character«
.cp 28è.aw off
.pm 0
7.3.4.2. ASCI╔ Information Page
.cp 20
.aw off
.pm 0
Table 7-74: ASCII Informatioε Page
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Peripheral Qualifier | Peripheral Device Type |
-----|-----------------------------------------------------------------------|
1 | Pagσ Codσ (01Φ ¡ 7Fh) |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Page LengtΦ (n-3⌐ |
-----|-----------------------------------------------------------------------|
4 | ASCII Length (m-4) |
-----|-----------------------------------------------------------------------|
5 | |
- - -|- - ASCII Information - -|
φ | |
-----|-----------------------------------------------------------------------|
m+1 | |
- - -|- - Vendor-Specific Informatioε - -|
ε | |
==============================================================================
.aw on
.pm 3
.cp5
ááThσ ASCI╔ informatioε pagσ (Tablσ ╖-74⌐ return≤ informatioε fo≥ thσ fielΣ ì
replaceablσ uni⌠ codσ returneΣ iε thσ REQUES╘ SENS┼ sensσ datß (seσ 7.2.14)«
.cp 5
ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
.cp 5
ááThσ pagσ codσ fielΣ contain≤ thσ samσ valuσ a≤ iε thσ pagσ codσ fielΣ oµ thσ ì
INQUIR┘ commanΣ descripto≥ blocδ (seσ 7.2.5⌐ anΣ i≤ associateΣ witΦ thσ fielΣ ì
replaceablσ uni⌠ codσ returneΣ b∙ thσ REQUES╘ SENS┼ command.
.cp 4
.lm3
ááIMPLEMENTOR╙ NOTE║ Thσ fielΣ replaceablσ uni⌠ fielΣ iε thσ sensσ datß ì
ááprovide≤ fo≥ 25╡ possiblσ codes¼ whilσ thσ pagσ codσ fielΣ provide≤ fo≥ onl∙ ì
áá12╖ possiblσ codes« Thu≤ i⌠ i≤ no⌠ possiblσ t∩ returε ASCI╔ informatioε ì
áápage≤ fo≥ thσ uppe≥ codσ values.
.lm1
.cp 5
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ followinτ pagσ data« Iµ ì
thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ to∩ smal∞ t∩ transfe≥ ì
al∞ oµ thσ page¼ thσ pagσ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ ì
truncation.
.cp 5
ááThσ ASCI╔ lengtΦ fielΣ specifie≤ thσ lengtΦ iε byte≤ oµ thσ ASCI╔ ì
informatioε tha⌠ follows« Iµ thσ allocatioε lengtΦ i≤ les≤ thaε thσ lengtΦ oµ ì
thσ datß t∩ bσ returneΣ thσ ASCI╔ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ ì
truncation« ┴ valuσ oµ zer∩ iε thi≤ fielΣ indicate≤ tha⌠ n∩ ASCI╔ informatioε ì
i≤ availablσ fo≥ thσ specifieΣ pagσ code.
.cp 5èááThσ ASCI╔ informatioε fielΣ contain≤ ASCI╔ informatioε concerninτ thσ fielΣ ì
replaceablσ uni⌠ identifieΣ b∙ thσ pagσ code« Thσ datß iε thi≤ fielΣ shal∞ bσ ì
formatteΣ iε onσ o≥ morσ line≤ (o≥ characte≥ strings)« EacΦ linσ shal∞ ì
contaiε onl∙ graphiπ code≤ (i.e.¼ codσ value≤ 20Φ througΦ 7Eh⌐ anΣ shal∞ bσ ì
terminateΣ witΦ ß NUL╠ (00h⌐ character«
ááThσ content≤ oµ thσ vendo≥-specifiπ informatioε fielΣ i≤ no⌠ defineΣ iε thi≤ ì
standard.
.cp 25
.aw off
.pm 0
7.3.4.3. ImplementeΣ Operatinτ Definition Page
.cp 23
.aw off
.pm 0
Table 7-75: Implemented Operating Definition Page
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Peripheral Qualifier | Peripheral Device Type |
-----|-----------------------------------------------------------------------|
1 | Pagσ Code (81h) |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Page Length (n-3⌐ |
-----|-----------------------------------------------------------------------|
4 |Reserved| Current Operating Definition |
-----|-----------------------------------------------------------------------|
5 | SavImp | Default Operating Definition |
-----|-----------------------------------------------------------------------|
6 ⁿ SavIm≡ | |
-----|¡ ¡ SupporteΣ Operatinτ Definitioε Lis⌠ ¡ -|
ε | SavIm≡ | |
==============================================================================
.aw on
.pm 3
ááThσ implementeΣ operatinτ definitioε pagσ (Tablσ ╖-75⌐ define≤ thσ curren⌠ ì
operatinτ definition¼ thσ defaul⌠ operatinτ definition¼ anΣ whicΦ operatinτ ì
definition≤ arσ implementeΣ b∙ thσ target« Thesσ operatinτ definitioε value≤ ì
arσ specifieΣ iε thσ CHANG┼ DEFINITIO╬ commanΣ (seσ 7.2.1).
.cp 5
ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
.cp 5
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ followinτ operatinτ ì
definitions« Iµ thσ allocatioε lengtΦ oµ thσ commanΣ descripto≥ blocδ i≤ to∩ ì
smal∞ t∩ transfe≥ al∞ oµ thσ page¼ thσ pagσ lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ ì
reflec⌠ thσ truncation.
ááFo≥ eacΦ operatinτ definitioε therσ i≤ aε associateΣ savσ implementeΣ ì
(SavImp⌐ bit« ┴ SavIm≡ bi⌠ oµ zer∩ indicate≤ tha⌠ thσ correspondinτ operatinτ ì
definitioε paramete≥ canno⌠ bσ saved« ┴ SavIm≡ bi⌠ oµ onσ indicate≤ tha⌠ thσ ì
correspondinτ operatinτ definitioε paramete≥ caε bσ saved.
.cp 6èááAl∞ returneΣ operatinτ definition≤ usσ thσ code≤ defineΣ iε Tablσ ╖-3« Thσ ì
curren⌠ operatinτ definitioε fielΣ return≤ thσ valuσ oµ thσ presen⌠ operatinτ ì
definition« Thσ defaul⌠ operatinτ definitioε fielΣ return≤ thσ valuσ oµ thσ ì
operatinτ definitioε thσ targe⌠ use≤ wheε powe≥ i≤ applieΣ iµ n∩ operatinτ ì
definitioε i≤ saved« Thσ supporteΣ operatinτ definitioε lis⌠ return≤ onσ o≥ ì
morσ operatinτ definition≤ implementeΣ b∙ thσ target.
.cp 21
.aw off
.pm 0
7.3.4.4. SupporteΣ Vital Product Data Pages
.aw off
.pm 0
Table 7-76: Supported Vital Product Data Pages
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Peripheral Qualifier | Peripheral Device Type |
-----|-----------------------------------------------------------------------|
1 | Pagσ Code (00h) |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Page LengtΦ (n-3) |
-----|-----------------------------------------------------------------------|
4 | |
¡----|¡ ¡ SupporteΣ Pagσ Lis⌠ ¡ -|
n | |
==============================================================================
.aw on
.pm 3
.cp 5
ááThσ supporteΣ vita∞ produc⌠ datß page≤ arσ showε iε Tablσ ╖-76.
ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
.cp 5
ááThσ pagσ codσ fielΣ shal∞ bσ se⌠ t∩ thσ valuσ oµ thσ pagσ codσ fielΣ iε thσ ì
INQUIR┘ commanΣ descripto≥ blocδ (seσ 7.2.5).
.cp 5
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ supporteΣ pagσ list« Iµ ì
thσ allocatioε lengtΦ i≤ to∩ smal∞ t∩ transfe≥ al∞ oµ thσ page¼ thσ pagσ ì
lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ truncation.
.cp 5
ááThσ supporteΣ pagσ lis⌠ fielΣ shal∞ contaiε ß lis⌠ oµ al∞ vita∞ produc⌠ datß ì
pagσ code≤ implementeΣ fo≥ thσ targe⌠ o≥ logica∞ uni⌠ iε ascendinτ orde≥ ì
beginninτ witΦ pagσ codσ 00h.
.cp 35è.aw off
.pm 0
7.3.4.5. Uni⌠ Seria∞ Numbe≥ Page
.cp 20
.aw off
.pm 0
Table 7-77: Unit Serial Number Page
==============================================================================
Bit| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Byte | | | | | | | | |
==============================================================================
0 | Peripheral Qualifier | Peripheral Device Type |
-----|-----------------------------------------------------------------------|
1 | Pagσ Code (80h⌐ |
-----|-----------------------------------------------------------------------|
2 | Reserved |
-----|-----------------------------------------------------------------------|
3 | Page Length (n-3) |
-----|-----------------------------------------------------------------------|
8 | |
- - -|- - Product Serial Number - -|
ε | |
==============================================================================
.aw on
.pm 3
ááThi≤ pagσ (Tablσ ╖-77⌐ provide≤ ß produc⌠ seria∞ numbe≥ fo≥ thσ targe⌠ o≥ ì
logica∞ unit.
.cp 5
ááThσ periphera∞ qualifie≥ fielΣ i≤ defineΣ iε Tablσ ╖-1╢ anΣ thσ periphera∞ ì
devicσ typσ fielΣ i≤ defineΣ iε Tablσ ╖-17.
.cp 5
ááThσ pagσ lengtΦ fielΣ specifie≤ thσ lengtΦ oµ thσ produc⌠ seria∞ number« Iµ ì
thσ allocatioε lengtΦ i≤ to∩ smal∞ t∩ transfe≥ al∞ oµ thσ page¼ thσ pagσ ì
lengtΦ shal∞ no⌠ bσ adjusteΣ t∩ reflec⌠ thσ truncation.
.cp 4
ááThσ produc⌠ seria∞ numbe≥ fielΣ contain≤ ASCI╔ datß tha⌠ i≤ vendo≥ specific« ì
Thσ leas⌠ significan⌠ ASCI╔ characte≥ oµ thσ seria∞ numbe≥ shal∞ appea≥ a≤ thσ ì
las⌠ bytσ oµ ß successfu∞ datß transfer« Iµ thσ produc⌠ seria∞ numbe≥ i≤ no⌠ ì
available¼ thσ targe⌠ shal∞ returε ASCI╔ space≤ (20h⌐ iε thi≤ field«
..end of section
.paè
áá (Thi≤ pagσ i≤ intentionall∙ blank.)
.paè