This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2630: CC26XX Crypto in TIMAC: CBC AES

Part Number: CC2630
Other Parts Discussed in Thread: TIMAC, CC2650

This is for an existing product so I have no flexibility in hardware, software or the type of encryption I am using.

I am writing an application for a CC2630 that requires CBC AES function. The ICall libraries don't appear to support this nor do the underlying CryptoCC26XX libraries, although it is a feature supported in hardware.

/*!
 *  @brief    CryptoCC26XX Operation Type
 *
 *  This type holds the CryptoCC26XX operation.
 *
 *  Currently supported types are
 *  ::CRYPTOCC26XX_OP_AES_CCM, ::CRYPTOCC26XX_OP_AES_CCMINV,
 *  ::CRYPTOCC26XX_OP_AES_ECB, ::CRYPTOCC26XX_OP_AES_CCM_NOCRYPT,
 *  ::CRYPTOCC26XX_OP_AES_CCMINV_NOCRYPT and ::CRYPTOCC26XX_OP_AES_ECB_NOCRYPT.
 */
typedef uint8_t CryptoCC26XX_Operation;

...

#define CRYPTOCC26XX_OP_AES_CCM            0  /*!< AES-CCM Operation with Cryptation           */
#define CRYPTOCC26XX_OP_AES_CCM_NOCRYPT    1  /*!< AES-CCM Operation without Cryptation        */
#define CRYPTOCC26XX_OP_AES_CCMINV         2  /*!< AES-CCM Inverse Operation with Cryptation   */
#define CRYPTOCC26XX_OP_AES_CCMINV_NOCRYPT 3  /*!< AES-CCM Inverse Operation without Cryptation*/
#define CRYPTOCC26XX_OP_AES_ECB            4  /*!< AES-ECB Operation with Cryptation           */
#define CRYPTOCC26XX_OP_AES_ECB_NOCRYPT    5  /*!< AES-ECB Operation without Cryptation        */

This application will have a single caller (the only one that will ever use the crypto features) that needs to do the CBC AES encryption and decryption. How should I accomplish this either through the libraries or implementing it myself in a TI-RTOS friendly convention?