3.5.1. CDB
To understand the CDB commands, you should refer to the OIF-CMIS-05.3 specification Section 7.2, Section 7.3, and Section 7.4, and Section 9.
Important
CDB commands support both set
and get
operations.
The
set
operation is to sendCMD Data
.
If there is no CMD Data
to send, you should send an empty JSON object {}
, e.g.
>> 0/0 PX_CDB_ABORT_FW_DOWNLOAD [0] {}
>> <OK>
The
get
operation is to readREPLY Status
andREPLY Data
.
If you send a get
command before the CDB Command Completion Flag (00h:8.6 or 00h:8.7) is set, you will receive a <PENDING>
status message. This means that the command is still being processed and the result is not yet available.
For example:
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] {"block_address": 12, "firmware_block": "0x00010203040506070809"}
>> <OK>
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] ?
>> <PENDING> # This indicates that the CDB status is not available.
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] ?
>> <PENDING> # This indicates that the CDB status is not available.
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] ?
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] {"cdb_status": "0x83"} # This indicates that the CDB status is In Progress.
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] ?
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] {"cdb_status": "0x01"} # This indicates that the CDB status is On Success.
Important
If you send a get
operation without sending the set
operation of the same command, you will receive a <NOTVALID>
status message.
For example:
>> 0/0 PX_CDB_WRITE_FW_BLOCK_LPL[0] {"block_address": 12, "firmware_block": "0x00010203040506070809"}
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0] ?
>> <NOTVALID>