Command READCFM

This command reads an address in the NVMCTRL::CFM space and returns the data. If the address is read-protected or out of range, the device returns an invalid argument status and waits for another command. If the address is within range, the command succeeds with data valid status, followed by the data.

This procedure allows one 32-bit value to be read at a time, but continues accepting target addresses until an address outside the allowable range is requested. By convention, write a target address of 32’h0000_0000 when you intentionally want to exit this procedure.

The Table 6-11 defines the command structure, and Figure 6-6 shows the communication sequence.

Table 6-11. CMD_READCFM Definition
TypeInputSizeRangeOutputComment
CommandCMD_READCFM

STATUS_ERR_EXEC

STATUS_ARG_INVALID

STATUS_CMD_VALID

Refer to Table 6-9 and Table 6-10
Argument1Address32 bitsRefer to Table 6-12STATUS_ARG_INVALID

The command is aborted on an address error. This is how the command is intentionally ended.

Refer to Table 6-9

Result

STATUS_ERR_ECC

STATUS_DATA_VALID

Refer to Table 6-9 and Table 6-10

Returns32 bitsDataThe command awaits a new Address after a valid read
Table 6-12. READ_CFM Valid Addresses
RegionDescription
CFM::SIGNATUREFirmware metadata
CFM::BOOTCFGUser configuration
Figure 6-6. CMD_READCFM Message Sequence