SPI Result Codes

This page aggregates all SPI-related result codes returned by functions and methods from the C and C++ APIs.

FW_SPI_TARGET_STAGING_UNAVAILABLE

Hex.: 0x0310, Dec.: 784. The bulk-staging pool could not be acquired for the target arena.

FW_SPI_TARGET_SURPASSED_MEMORY_SIZE

Hex.: 0x0311, Dec.: 785. The memory address plus length exceeds the target arena size.

FW_SPI_TARGET_PAYLOAD_TRANSFER_FAILED

Hex.: 0x0312, Dec.: 786. The vendor-endpoint payload transfer failed.

FW_SPI_TARGET_WRONG_MODEL

Hex.: 0x0313, Dec.: 787. The command is not valid for the active emulation model.

FW_SPI_TARGET_INVALID_CONFIG

Hex.: 0x0314, Dec.: 788. The flash or register configuration is invalid.

FW_SPI_TARGET_REGION_TABLE_FULL

Hex.: 0x0315, Dec.: 789. The register region table is full.

Warning

Not returnable. No device can produce this code: the only command that would raise it, CMD_SPI_TARGET_SET_REGISTER_REGION, has no firmware handler. Kept so a host decoding an unexpected 0x0315 can name it – not because SPI target mode can emit it. Do not write a handler branch for it. The I2C twin FW_I2C_TARGET_REGION_TABLE_FULL is genuinely returned, at the 16-region limit.

FW_SPI_ROLE_CONFLICT

Hex.: 0x0316, Dec.: 790. The other SPI role owns the peripheral: a controller was asked to become a target, or the reverse. Distinct from FW_INTERFACE_ALREADY_INITIALIZED, which means the same role is already up. Reset the device to release the role.