IBM DDRS-39130 Hard Drive Specifications - Page 167

Download Microprocessor Microcode and Save Buffer_ID, 38.4.2, 00h thru 2

Page 167 highlights

Any other value for the Buffer ID will cause the command to terminate with CHECK CONDITION status. The file shall set sense key to ILLEGAL REQUEST and additional sense code to ILLEGAL FIELD IN CDB. 7.38.4.1 Download Microprocessor Microcode and Save (Buffer_ID = 00h) There are 3 types of download function are supported. The first one is "Single Binary Download", the second is "Single Binary Chunked" and the thered is "RAM/OVR Download". Buffer ID is 00h. (Single Binary Download) The first one is that the data set consist of all necessary code and tables in a one big data set. This is starting with the special header data followed by tables, RAM code, 2 Overlay codes, EEPROM data and Flash-ROM code. (Flash-ROM code is optional depends on the card type and version if card has update capability.) This download function is available when the file is running with full function (normal running) before this write buffer is issued. It takes up to 120 seconds to finish the command. After completion of this type of write buffer command, the file will start as "Power on Reset" and running with newly downloaded code and configuration. Therefore initiator may need a special treatment for this target. Buffer ID is 00h. (Single Binary Chunked) The second is using the same data set as the first (Single Binary). Separate the big 1 binary file with each 32k bytes chunk, then issue Write buffer command with I D = 0 0 repeatedly as the same number as the chunk. The last chunk may equal or less than 32K bytes. (For example, in case of single binary file size is 65k bytes, there are 3 chunk like 32k, 32k and 1k. And 3 continuous Write Buffer commands with I D = 0 0 should be issued.) After issuing continuous Write Buffer for all chunk, the file behavior is the same as the single binary. Buffer ID is 00h. (RAM/OVR Download) The thered one is that the data set consist of all code except ROM. This data set is starting without header, R A M code and 2 Overlay codes are simply concatenated. This type of write buffer is the same effect of 3 times write buffer described just below. At the end of the command, the file is running without "Power on Reset" automatically. The newly downloaded code becomes effective after Power On Reset. Buffer Offset must be zero. If an invalid value is specified, the command is terminated with CHECK CONDITION status . File shall set sense key to ILLEGAL REQUEST and additional sense code to ILLEGAL FIELD IN CDB. Parameter List Length must be specified for the total byte length of data set. It may also be set 0000h in which case no code is updated. If an invalid value is specified, the command is terminated with CHECK CONDITION status. File shall set sense key to ILLEGAL REQUEST and additional sense code to ILLEGAL FIELD IN CDB. 7.38.4.2 Download Microprocessor Microcode and Save (Buffer_ID = 00h thru 2) Buffer ID is 00h thru 02h. (RAM/OVR Download step by step) The code must be downloaded to the file in 3 separate blocks. The 3 blocks must be sent in the correct sequential order and incremental buffer ID starting from 0. On all write buffer commands except the final one, the file merely stores the code and no action is taken. When the final block is received, the code validity will be checked via checksum and signature for integrity and compatibility with the R O M code. Once these checks have passed the file will overwrite the old code stored on the disk with the new download. In between downloading the code blocks, the file will continue to accept and process other commands from this and any other initiator. However if power is cycled or a reset occurs among them, the download procedure must be restarted. Buffer Offset must be zero. SCSI COMMAND SET 157

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228

Any other value for the Buffer ID will cause the command to terminate with CHECK CONDITION status.
The file shall set sense key to ILLEGAL REQUEST and additional sense code to ILLEGAL FIELD IN
CDB.
7.38.4.1
Download Microprocessor Microcode and Save (Buffer_ID =
00h)
There are 3 types of download function are supported. The first one is "Single Binary Download", the
second is "Single Binary Chunked" and the thered is "RAM/OVR Download".
Buffer ID
is 00h. (Single Binary Download)
The first one is that the data set consist of all necessary code and tables in a one big data set.
This is
starting with the special header data followed by tables, RAM code, 2 Overlay codes, EEPROM data and
Flash-ROM code.
(Flash-ROM code is optional depends on the card type and version if card has update
capability.)
This download function is available when the file is running with full function (normal running)
before this write buffer is issued.
It takes up to 120 seconds to finish the command.
After completion of this type of write buffer command,
the file will start as "Power on Reset" and running with newly downloaded code and configuration.
There-
fore initiator may need a special treatment for this target.
Buffer ID
is 00h. (Single Binary Chunked)
The second is using the same data set as the first (Single Binary).
Separate the big 1 binary file with each
32k bytes chunk, then issue Write buffer command with ID=00
repeatedly as the same number as the
chunk.
The last chunk may equal or less than 32K bytes. (For example, in case of single binary file size is
65k bytes, there are 3 chunk like 32k, 32k and 1k.
And 3 continuous Write Buffer commands with ID=00
should be issued.)
After issuing continuous Write Buffer for all chunk, the file behavior is the same as the
single binary.
Buffer ID
is 00h. (RAM/OVR Download)
The thered one is that the data set consist of all code except ROM.
This data set is starting without header,
RAM code and 2 Overlay codes are simply concatenated.
This type of write buffer is the same effect of 3
times write buffer described just below.
At the end of the command, the file is running without "Power on
Reset" automatically.
The newly downloaded code becomes effective after Power On Reset.
Buffer Offset
must be zero.
If an invalid value is specified, the command is terminated with CHECK CONDITION status .
File shall
set sense key to ILLEGAL REQUEST and additional sense code to ILLEGAL FIELD IN CDB.
Parameter List Length
must be specified for the total byte length of data set.
It may also be set 0000h in which case no code is updated.
If an invalid value is specified, the command is
terminated with CHECK CONDITION status.
File shall set sense key to ILLEGAL REQUEST and addi-
tional sense code to ILLEGAL FIELD IN CDB.
7.38.4.2
Download Microprocessor Microcode and Save (Buffer_ID =
00h thru 2)
Buffer ID
is 00h thru 02h. (RAM/OVR Download step by step)
The code must be downloaded to the file in 3 separate blocks.
The 3 blocks must be sent in the correct
sequential order and incremental buffer ID starting from 0.
On all write buffer commands except the final
one, the file merely stores the code and no action is taken.
When the final block is received, the code
validity will be checked via checksum and signature for integrity and compatibility with the ROM code.
Once these checks have passed the file will overwrite the old code stored on the disk with the new download.
In between downloading the code blocks, the file will continue to accept and process other commands from
this and any other initiator.
However if power is cycled or a reset occurs among them, the download proce-
dure must be restarted.
Buffer Offset
must be zero.
SCSI COMMAND SET
157