Sa_ScReqInfo_t Struct Reference
[SA LLD Data Structures]

Security Context Request Information structure. More...

#include <salld.h>

Data Fields

uint16_t scSize
uint16_t scID
uint8_t * scBuf

Detailed Description

Security Context Request Information structure.

SASS is equipped with context cache module to auto-fetch security context from external memory. This module is essential to allow any number of simultaneous security connections by caching only limited (64) contexts on-chip and fetching other contexts as and when required for processing.

In order to facilitate fast retrieval for performance critical connections such as IPSEC channels, context cache module allows two tier of security connections. First tier has permanent residence within Context cache RAM for fast retrieval and is never evicted automatically by context cache module. Second tier connections are kept as long as space is available within context cache RAM; new fetch request may automatically evict the context of the second tier connections into external memory to allow free space.

The following data structure defines the parameters for the security context request. The 15-bit security context ID, of which LSB 4-bits act as cache set select, and its corresponding context buffer, which contains the protocol-specific security parameters used by the LLD and sub-engines within SA, should be maintained across multiple DSP cores. They are multi-core resources and should be managed by the application.

The security context IDs and buffers can be managed across mult-cores or be pre-allocated for each core or each security channel. The security context buffer should be 16-byte aligned at least and it should be cache-line aligned if it is allocated at cacheable memory. It is recommended to maintain the security context buffers in the following three lists:

    Allocated: The buffer and its corresponding ID have been allocated to the SA
               LLD through *ScAlloc API and they are owned by SA.
    Pending Free: The buffer and its corresponding ID has been released from the 
                  SA LLD through *ScFree API. However, they are still owned by 
                  SA until the security context tear-down procedure is complete.
                  The API Sa_isScBufFree should be used to check 
                  whether the buffer is free
    Free: The buffer and its corresonding ID are owned by the application.
    
Note:
There are only up to three first tier contexts allowed for each cache set.
It is highly recommended to place the security context buffers at non-cacheable memory since they are accessed and maintained by the SA sub-system primarily
The application can manage the security context buffers and IDs as two seperate resources or a single resource pair. The only requirement is that the security context ID cannot be re-used until its corresponding security context buffer is free. The application may perform periodic checks to move buffers from the Pending Free list to the Free list or perform checks only when new buffers are requested by the SA LLD.

Definition at line 1644 of file salld.h.


Field Documentation

Security Context Buffer provided by the application (16-byte alignment required)

Definition at line 1647 of file salld.h.

Security Context ID specified by the application

Definition at line 1646 of file salld.h.

Specify the size of the required security context

Definition at line 1645 of file salld.h.


The documentation for this struct was generated from the following file:

Copyright 2014, Texas Instruments Incorporated