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
Some CDB commands support both set
and get
operations.
The
set
operation is used to sendsCMD Header
andCMD Data
.The
get
operation is used to readREPLY Status
,REPLY Header,
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,12] {"firmware_block": "0x00010203040506070809"}
>> <OK>
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] ?
>> <PENDING> # This indicates that the CDB status is not available.
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] ?
>> <PENDING> # This indicates that the CDB status is not available.
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] ?
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] {"cdb_status": "0x83"} # This indicates that the CDB status is In Progress.
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] ?
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] {"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,12] {"firmware_block": "0x00010203040506070809"}
>> 0/0 PX_CDB_WRITE_FW_BLOCK_EPL[0,12] ?
>> <NOTVALID>