GENERAL_API


General API messages available in both split and full MAC.

Modules

General_Configuration
General configuration commands.
Secure_Link
APIs for Secure link configuration and usage.
Prevent_Firmware_Rollback
APIs for preventing Rollback of unsafe firmware images.

Data Structures

union HiGeneralCommandsIds_t
General command message IDs.

Enumerations

enum HiGeneralRequestsIds {
HI_CONFIGURATION_REQ_ID =0x09,
HI_CONTROL_GPIO_REQ_ID =0x26,
HI_SET_SL_MAC_KEY_REQ_ID =0x27,
HI_SL_EXCHANGE_PUB_KEYS_REQ_ID =0x28,
HI_SL_CONFIGURE_REQ_ID =0x29,
HI_PREVENT_ROLLBACK_REQ_ID =0x2a,
HI_SHUT_DOWN_REQ_ID =0x32
}
General request message IDs.
enum HiGeneralConfirmationsIds {
HI_CONFIGURATION_CNF_ID =0x09,
HI_CONTROL_GPIO_CNF_ID =0x26,
HI_SET_SL_MAC_KEY_CNF_ID =0x27,
HI_SL_EXCHANGE_PUB_KEYS_CNF_ID =0x28,
HI_SL_CONFIGURE_CNF_ID =0x29,
HI_PREVENT_ROLLBACK_CNF_ID =0xe7
}
General confirmation message IDs.
enum HiGeneralIndicationsIds {
HI_EXCEPTION_IND_ID =0xe0,
HI_STARTUP_IND_ID =0xe1,
HI_GENERIC_IND_ID =0xe3,
HI_ERROR_IND_ID =0xe4
}
General indications message IDs.
enum HiStatus {
HI_STATUS_SUCCESS = 0x0,
HI_STATUS_FAILURE = 0x1,
HI_INVALID_PARAMETER = 0x2,
HI_STATUS_GPIO_WARNING = 0x3,
HI_ERROR_UNSUPPORTED_MSG_ID = 0x4,
SL_MAC_KEY_STATUS_SUCCESS = 0x5A,
SL_MAC_KEY_STATUS_FAILED_KEY_ALREADY_BURNED = 0x6B,
SL_MAC_KEY_STATUS_FAILED_RAM_MODE_NOT_ALLOWED = 0x7C,
SL_MAC_KEY_STATUS_FAILED_UNKNOWN_MODE = 0x8D,
SL_PUB_KEY_EXCHANGE_STATUS_SUCCESS = 0x9E,
SL_PUB_KEY_EXCHANGE_STATUS_FAILED = 0xAF,
PREVENT_ROLLBACK_CNF_SUCCESS = 0x1234,
PREVENT_ROLLBACK_CNF_WRONG_MAGIC_WORD = 0x1256
}
General confirmation possible values for returned 'Status' field.

Detailed Description


General API messages available in both split and full MAC.

Mainly used to boot and configure the part.
But some message are also used to report errors or information.


Data Structure Documentation

HiGeneralCommandsIds_t

union HiGeneralCommandsIds_t

General command message IDs.

All general API message IDs.

Definition at line 195 of file general_api.h .

Data Fields
HiGeneralConfirmationsIds confirmation Confirmation of a request from the wlan device to the host.
HiGeneralIndicationsIds indication Indication from the wlan device to the host.
HiGeneralRequestsIds request Request from the host to the wlan device.

Enumeration Type Documentation

HiGeneralConfirmationsIds

General confirmation message IDs.

API general confirmation message IDs returned by requests described in HiGeneralRequestsIds . These are messages from the WLAN towards the host.

Enumerator
HI_CONFIGURATION_CNF_ID

CONFIGURATION confirmation Id returns body HiConfigurationCnfBody_t

HI_CONTROL_GPIO_CNF_ID

CONTROL_GPIO confirmation Id returns body HiControlGpioCnfBody_t

HI_SET_SL_MAC_KEY_CNF_ID

SET_SL_MAC_KEY confirmation Id returns body HiSetSlMacKeyCnfBody_t

HI_SL_EXCHANGE_PUB_KEYS_CNF_ID

SL_EXCHANGE_PUB_KEYS confirmation Id returns body HiSlExchangePubKeysCnfBody_t

HI_SL_CONFIGURE_CNF_ID

SL_CONFIGURE confirmation Id returns body HiSlConfigureCnfBody_t

HI_PREVENT_ROLLBACK_CNF_ID

PREVENT_ROLLBACK confirmation Id use body HiPreventRollbackCnfBody_t

Definition at line 166 of file general_api.h .

HiGeneralIndicationsIds

General indications message IDs.

API general indication message IDs available in both split and full MAC. These are messages from the WLAN towards the host.

Enumerator
HI_EXCEPTION_IND_ID

EXCEPTION indication Id content is HiExceptionIndBody_t

HI_STARTUP_IND_ID

STARTUP indication Id content is HiStartupIndBody_t

HI_GENERIC_IND_ID

GENERIC indication Id content is HiGenericIndBody_t

HI_ERROR_IND_ID

ERROR indication Id content is HiErrorIndBody_t

Definition at line 182 of file general_api.h .

HiGeneralRequestsIds

General request message IDs.

API general request message IDs available in both split and full MAC. These are messages from the host towards the WLAN.

Enumerator
HI_CONFIGURATION_REQ_ID

CONFIGURATION request Id use body HiConfigurationReqBody_t and returns HiConfigurationCnfBody_t

HI_CONTROL_GPIO_REQ_ID

CONTROL_GPIO request Id use body HiControlGpioReqBody_t and returns HiControlGpioCnfBody_t

HI_SET_SL_MAC_KEY_REQ_ID

SET_SL_MAC_KEY request Id use body HiSetSlMacKeyReqBody_t and returns HiSetSlMacKeyCnfBody_t

HI_SL_EXCHANGE_PUB_KEYS_REQ_ID

SL_EXCHANGE_PUB_KEYS request Id use body HiSlExchangePubKeysReqBody_t and returns HiSlExchangePubKeysCnfBody_t

HI_SL_CONFIGURE_REQ_ID

SL_CONFIGURE request Id use body HiSlConfigureReqBody_t and returns HiSlExchangePubKeysCnfBody_t

HI_PREVENT_ROLLBACK_REQ_ID

PREVENT_ROLLBACK request Id use body HiPreventRollbackReqBody_t and returns HiPreventRollbackCnfBody_t

HI_SHUT_DOWN_REQ_ID

SHUT_DOWN request Id use body HiShutDownReq_t and never returns

Definition at line 149 of file general_api.h .

HiStatus

General confirmation possible values for returned 'Status' field.

All general confirmation messages have a field 'Status' just after the message header.
A value of zero indicates the request is completed successfully.

Enumerator
HI_STATUS_SUCCESS

The firmware has successfully completed the request.

HI_STATUS_FAILURE

This is a generic failure code : other error codes do not apply.

HI_INVALID_PARAMETER

The request contains one or more invalid parameters.

HI_STATUS_GPIO_WARNING

Warning : the GPIO cmd is successful but the read value is not as expected (likely a drive conflict on the line)

HI_ERROR_UNSUPPORTED_MSG_ID

Unkown request ID or wrong interface ID used.

SL_MAC_KEY_STATUS_SUCCESS

Key has been correctly written.

SL_MAC_KEY_STATUS_FAILED_KEY_ALREADY_BURNED

Key already exists in OTP.

SL_MAC_KEY_STATUS_FAILED_RAM_MODE_NOT_ALLOWED

RAM mode is not allowed.

SL_MAC_KEY_STATUS_FAILED_UNKNOWN_MODE

Unknown mode (should be RAM or OTP)

SL_PUB_KEY_EXCHANGE_STATUS_SUCCESS

Host Public Key authenticated.

SL_PUB_KEY_EXCHANGE_STATUS_FAILED

Host Public Key authentication failed.

PREVENT_ROLLBACK_CNF_SUCCESS

OTP rollback value has been successfully updated.

PREVENT_ROLLBACK_CNF_WRONG_MAGIC_WORD

Wrong magic word detected.

Definition at line 212 of file general_api.h .