MCUXpresso SDK API Reference Manual  Rev. 0
NXP Semiconductors
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Key_manager

Overview

Data Structures

struct  domain_slot_config_t
 Key Manager slot configuration structure. More...
 

Functions

status_t KEYMGR_MasterKeyControll (KEY_MANAGER_Type *base, keymgr_select_t select, keymgr_lock_t lock)
 Configures Master key settings. More...
 
status_t KEYMGR_OTFAD1KeyControll (KEY_MANAGER_Type *base, keymgr_select_t select, keymgr_lock_t lock)
 Configures OTFAD1 key settings. More...
 
status_t KEYMGR_OTFAD2KeyControll (KEY_MANAGER_Type *base, keymgr_select_t select, keymgr_lock_t lock)
 Configures OTFAD2 key settings. More...
 
void KEYMGR_IEEKeyReload (KEY_MANAGER_Type *base)
 Restart load key signal for IEE. More...
 
void KEYMGR_PUFKeyLock (KEY_MANAGER_Type *base, keymgr_lock_t lock)
 Lock the key select from PUF. More...
 
status_t KEYMGR_SlotControl (KEY_MANAGER_Type *base, domain_slot_config_t *config, keymgr_slot_t slot)
 Configures Slot Domain control. More...
 
void KEYMGR_Init (KEY_MANAGER_Type *base)
 Resets Key Manager module to factory default values. More...
 
status_t KEYMGR_GetDefaultConfig (domain_slot_config_t *config)
 Sets the default configuration of Key manager slot. More...
 

Driver version

#define FSL_KEYMGR_DRIVER_VERSION   (MAKE_VERSION(2, 0, 1))
 Key Manager driver version. More...
 

Data Structure Documentation

struct domain_slot_config_t

Data Fields

keymgr_lock_t lockControl
 Lock control register of slot. More...
 
keymgr_allow_t allowUser
 Allow user write access to domain control register or domain register. More...
 
keymgr_allow_t allowNonSecure
 Allow non-secure write access to domain control register or domain register. More...
 
keymgr_lock_t lockList
 Lock whitelist. More...
 
uint8_t whiteList
 Domains that on the Whitelist can change given slot. More...
 

Field Documentation

keymgr_lock_t domain_slot_config_t::lockControl
keymgr_allow_t domain_slot_config_t::allowUser
keymgr_allow_t domain_slot_config_t::allowNonSecure
keymgr_lock_t domain_slot_config_t::lockList

SLOTx_CTRL[WHITE_LIST] cannot be changed.

uint8_t domain_slot_config_t::whiteList

Each field represents one domain. Bit0~Bit3 represent DOMAIN0~DOMAIN3 respectively.

Macro Definition Documentation

#define FSL_KEYMGR_DRIVER_VERSION   (MAKE_VERSION(2, 0, 1))

Version 2.0.1.

Current version: 2.0.1

Change log:

  • Version 2.0.1
    • Fix MISRA-2012 issues
  • Version 2.0.0
    • Initial version

Function Documentation

status_t KEYMGR_MasterKeyControll ( KEY_MANAGER_Type *  base,
keymgr_select_t  select,
keymgr_lock_t  lock 
)

This function configures Key Manager's setting for Master key.

Parameters
baseKey Manager peripheral address.
selectselect source for Master key.
locksetting for lock Master key.
Returns
status of Master key control operation
status_t KEYMGR_OTFAD1KeyControll ( KEY_MANAGER_Type *  base,
keymgr_select_t  select,
keymgr_lock_t  lock 
)

This function configures Key Manager's setting for OTFAD1 key.

Parameters
baseKey Manager peripheral address.
selectselect source for OTFAD1 key.
locksetting for lock OTFAD1 key.
Returns
status of OTFAD1 key control operation
status_t KEYMGR_OTFAD2KeyControll ( KEY_MANAGER_Type *  base,
keymgr_select_t  select,
keymgr_lock_t  lock 
)

This function configures Key Manager's setting for OTFAD2 key.

Parameters
baseKey Manager peripheral address.
selectselect source for OTFAD2 key.
locksetting for lock OTFAD2 key.
Returns
status of OTFAD2 key control operation
void KEYMGR_IEEKeyReload ( KEY_MANAGER_Type *  base)

This function genrates Key Manager's restart signal for IEE key.

Parameters
baseKey Manager peripheral address.
void KEYMGR_PUFKeyLock ( KEY_MANAGER_Type *  base,
keymgr_lock_t  lock 
)

This function locks selection of key for PUF.

Parameters
baseKey Manager peripheral address.
status_t KEYMGR_SlotControl ( KEY_MANAGER_Type *  base,
domain_slot_config_t config,
keymgr_slot_t  slot 
)

This function configures domain slot control which locks and allows writes.

Parameters
baseKey Manager peripheral address.
configPointer to slot configuration structure.
slotSelect slot to be configured.
Returns
status of slot control operation
void KEYMGR_Init ( KEY_MANAGER_Type *  base)

This function performs hardware reset of Key Manager module.

Parameters
baseKey Manager peripheral address.
status_t KEYMGR_GetDefaultConfig ( domain_slot_config_t config)

This function initialize Key Manager slot config structure to default values.

Parameters
configPointer to slot configuration structure.