SDL API Guide for J721E
POK Enum Data defines

Introduction

Data Structures

struct  SDL_pokShiftsAndMasks_t
 

POK types

This enumerator defines the possible POK module types


typedef uint8_t SDL_pok_type
 
#define SDL_TYPE_POK   ((SDL_pok_type) 1U)
 
#define SDL_TYPE_POK_SA   ((SDL_pok_type) 2U)
 

POK/POR hysteresIs types

This enumerator defines the possible hysteresis control values for the Power Subsystem modules


typedef uint8_t SDL_pwrss_hysteresis
 
#define SDL_PWRSS_SET_HYSTERESIS_DISABLE   ((SDL_pwrss_hysteresis) 0U)
 
#define SDL_PWRSS_SET_HYSTERESIS_ENABLE   ((SDL_pwrss_hysteresis) 1U)
 
#define SDL_PWRSS_GET_HYSTERESIS_VALUE   ((SDL_pwrss_hysteresis) 2U)
 
#define SDL_PWRSS_HYSTERESIS_NO_ACTION   ((SDL_pwrss_hysteresis) 3U)
 

POK/POR TRIM values

This enumerator defines the possible trim value for POK/POR modules Any value between 0 through 127 is valid TRIM value


*
*     POK        | Under Voltage   | Over Voltage     |                 
*                | Detection       | Detection        | Step Resolution 
*    ----------- | --------------- | ---------------- | ----------------
*     CORE_POK   | 475mV - 1.35V   |  725mV - 1.65V   | 0.0125V         
*     POK1.8     | 1.432V - 2.168V |  1.432V - 2.168V | 0.02V           
*     POK3.3     | 2.625V - 3.975V |  2.625V - 3.975V | 0.0375V         
*
*  

typedef uint8_t SDL_pwrss_trim
 
#define SDL_PWRSS_MAX_TRIM_VALUE   ((SDL_pwrss_trim) 127U)
 
#define SDL_PWRSS_TRIM_NO_ACTION   ((SDL_pwrss_trim) 128U)
 
#define SDL_PWRSS_GET_TRIM_VALUE   ((SDL_pwrss_trim) 129U)
 
#define SDL_PWRSS_INVALID_TRIM_VALUE   ((SDL_pwrss_trim) 255U)
 

POK/POR Voltage detection modes

This enumerator defines the possible values of Voltage Detection modes


typedef uint8_t SDL_pwrss_vd_mode
 
#define SDL_PWRSS_SET_UNDER_VOLTAGE_DET_ENABLE   ((SDL_pwrss_vd_mode) 0U)
 
#define SDL_PWRSS_SET_OVER_VOLTAGE_DET_ENABLE   ((SDL_pwrss_vd_mode) 1U)
 
#define SDL_PWRSS_GET_VOLTAGE_DET_MODE   ((SDL_pwrss_vd_mode) 2U)
 
#define SDL_PWRSS_VOLTAGE_DET_NO_ACTION   ((SDL_pwrss_vd_mode) 3U)
 

POK detection status

This enumerator defines the POK Detection status values


typedef uint8_t SDL_POK_detection_status
 
#define SDL_POK_DETECTION_DISABLED   ((SDL_POK_detection_status) 0U)
 
#define SDL_POK_DETECTION_ENABLED   ((SDL_POK_detection_status) 1U)
 

POK detection values

This enumerator defines the POK Detection values


typedef uint8_t SDL_POK_detection
 
#define SDL_POK_DETECTION_DISABLE   ((SDL_POK_detection) 0U)
 
#define SDL_POK_DETECTION_ENABLE   ((SDL_POK_detection) 1U)
 
#define SDL_POK_DETECTION_NO_ACTION   ((SDL_POK_detection) 2U)
 
#define SDL_POK_GET_DETECTION_VALUE   ((SDL_POK_detection) 3U)
 

POK Enable Selection source Values

This enumerator defines the POK Enable selection source


Selection source values

typedef uint8_t SDL_POK_enSelSrc
 
#define SDL_POK_ENSEL_HWTIEOFFS   ((SDL_POK_enSelSrc) 0U)
 
#define SDL_POK_ENSEL_PRG_CTRL   ((SDL_POK_enSelSrc) 1U)
 
#define SDL_POK_ENSEL_NO_ACTION   ((SDL_POK_enSelSrc) 2U)
 
#define SDL_POK_GET_ENSEL_VALUE   ((SDL_POK_enSelSrc) 3U)
 

POK voltage threshold status

This enumerator defines the Voltage threshold status


typedef uint8_t SDL_POK_thrStatus
 
#define SDL_VOLTAGE_ABOVE_THRESHOLD   ((SDL_POK_thrStatus) 0U)
 
#define SDL_VOLTAGE_BELOW_THRESHOLD   ((SDL_POK_thrStatus) 1U)
 
#define SDL_VOLTAGE_GOOD   ((SDL_POK_thrStatus) 2U)
 

POK trim selection values from HHV default or CTRL registers

This enumerator defines the trim selection values


typedef uint8_t SDL_por_trim_sel
 
#define SDL_POR_TRIM_SELECTION_FROM_HHV_DEFAULT   ((uint8_t) 0U)
 
#define SDL_POR_TRIM_SELECTION_FROM_CTRL_REGS   ((uint8_t) 1U)
 
#define SDL_POR_TRIM_SELECTION_NO_CHANGE   ((uint8_t) 2U)
 
#define SDL_POR_TRIM_SELECTION_GET_VALUE   ((uint8_t) 3U)
 

POR POR Override enable and set

This enumerator defines the override enable/set values


/set

typedef uint8_t SDL_por_override
 
#define SDL_POR_OVERRIDE_NOT_SET_DISABLE   ((SDL_por_override) 0U)
 
#define SDL_POR_OVERRIDE_NOT_SET_ENABLE   ((SDL_por_override) 1U)
 
#define SDL_POR_OVERRIDE_SET_DISABLE   ((SDL_por_override) 2U)
 
#define SDL_POR_OVERRIDE_SET_ENABLE   ((SDL_por_override) 3U)
 
#define SDL_POR_GET_OVERRIDE_VALUE   ((SDL_por_override) 4U)
 
#define SDL_POR_SET_OVERRIDE_NO_CHANGE   ((SDL_por_override) 5U)
 
#define SDL_OVERRIDE_SET_UNKNOWN   ((SDL_por_override) 0xFFU)
 

POR POR Override index

This enumerator defines the override index values


#define SDL_PORHV_OVERRIDE_INDEX   (0U)
 
#define SDL_BGAP_OVERRIDE_INDEX   (1U)
 
#define SDL_POKHV_OVERRIDE_INDEX   (2U)
 
#define SDL_POKLVA_OVERRIDE_INDEX   (3U)
 
#define SDL_POKLVB_OVERRIDE_INDEX   (4U)
 
#define SDL_MAX_OVERRIDE_INDEX   (5U)
 

POR Module state values

This enumerator defines the POR Module State


typedef uint8_t SDL_por_module_status
 
#define SDL_POR_MODULE_STATUS_FUNCTIONAL_MODE   ((SDL_por_module_status) 0U)
 
#define SDL_POR_MODULE_STATUS_RESET_MODE   ((SDL_por_module_status) 1U)
 

POK POK ID values

This enumerator defines the possible POK module ID values on J721E


typedef SDL_wkup_ctrl_mmr_cfg0Regs SDL_wkupCtrlRegsBase_t
 
typedef int8_t SDL_POK_Inst
 
#define SDL_FIRST_POK_ID   (0)
 
#define SDL_POK_VDDA_PMIC_IN_ID   (SDL_FIRST_POK_ID)
 
#define SDL_POK_VDD_CORE_UV_ID   (1)
 
#define SDL_POK_VDDSHV_WKUP_GEN_UV_ID   (2)
 
#define SDL_POK_VDD_CPU_UV_ID   (3)
 
#define SDL_POK_VDDR_MCU_UV_ID   (4)
 
#define SDL_POK_VMON_EXT_UV_ID   (5)
 
#define SDL_POK_VDD_MCU_OV_ID   (6)
 
#define SDL_POK_VDDR_CORE_UV_ID   (7)
 
#define SDL_POK_VDDSHV_WKUP_GEN_OV_ID   (8)
 
#define SDL_POK_VDD_CORE_OV_ID   (9)
 
#define SDL_POK_VDDR_MCU_OV_ID   (10)
 
#define SDL_POK_VDD_CPU_OV_ID   (11)
 
#define SDL_POK_VDDR_CORE_OV_ID   (12)
 
#define SDL_POK_VMON_EXT_OV_ID   (13)
 
#define SDL_POR_POKHV_UV_ID   (14)
 
#define SDL_POR_POKLV_UV_ID   (15)
 
#define SDL_POR_POKHV_OV_ID   (16)
 
#define SDL_LAST_POK_ID   (SDL_POR_POKHV_OV_ID)
 

Macro Definition Documentation

◆ SDL_TYPE_POK

#define SDL_TYPE_POK   ((SDL_pok_type) 1U)

POK type Power System Module

◆ SDL_TYPE_POK_SA

#define SDL_TYPE_POK_SA   ((SDL_pok_type) 2U)

POK_SA type Power System Module

◆ SDL_PWRSS_SET_HYSTERESIS_DISABLE

#define SDL_PWRSS_SET_HYSTERESIS_DISABLE   ((SDL_pwrss_hysteresis) 0U)

Disable hysteresis for the module

◆ SDL_PWRSS_SET_HYSTERESIS_ENABLE

#define SDL_PWRSS_SET_HYSTERESIS_ENABLE   ((SDL_pwrss_hysteresis) 1U)

Enable hysteresis for the module

◆ SDL_PWRSS_GET_HYSTERESIS_VALUE

#define SDL_PWRSS_GET_HYSTERESIS_VALUE   ((SDL_pwrss_hysteresis) 2U)

Get hysteresis value for the module

◆ SDL_PWRSS_HYSTERESIS_NO_ACTION

#define SDL_PWRSS_HYSTERESIS_NO_ACTION   ((SDL_pwrss_hysteresis) 3U)

No update on hysteresis for the module

◆ SDL_PWRSS_MAX_TRIM_VALUE

#define SDL_PWRSS_MAX_TRIM_VALUE   ((SDL_pwrss_trim) 127U)

TRIM is 7 bit value, when the trim value is <= to the MAX value, that value would be written to trim register Any other values, would be treated as the command as described belowTRIM is 7 bit value, and hence the maximum value is 127

◆ SDL_PWRSS_TRIM_NO_ACTION

#define SDL_PWRSS_TRIM_NO_ACTION   ((SDL_pwrss_trim) 128U)

No update on trim value read/write for the module

◆ SDL_PWRSS_GET_TRIM_VALUE

#define SDL_PWRSS_GET_TRIM_VALUE   ((SDL_pwrss_trim) 129U)

Command to read the TRIM value

◆ SDL_PWRSS_INVALID_TRIM_VALUE

#define SDL_PWRSS_INVALID_TRIM_VALUE   ((SDL_pwrss_trim) 255U)

Invalid TRIM value

◆ SDL_PWRSS_SET_UNDER_VOLTAGE_DET_ENABLE

#define SDL_PWRSS_SET_UNDER_VOLTAGE_DET_ENABLE   ((SDL_pwrss_vd_mode) 0U)

Disable under voltage detection for the module

◆ SDL_PWRSS_SET_OVER_VOLTAGE_DET_ENABLE

#define SDL_PWRSS_SET_OVER_VOLTAGE_DET_ENABLE   ((SDL_pwrss_vd_mode) 1U)

Enable over voltage detection for the module

◆ SDL_PWRSS_GET_VOLTAGE_DET_MODE

#define SDL_PWRSS_GET_VOLTAGE_DET_MODE   ((SDL_pwrss_vd_mode) 2U)

Get voltage detection for the module

◆ SDL_PWRSS_VOLTAGE_DET_NO_ACTION

#define SDL_PWRSS_VOLTAGE_DET_NO_ACTION   ((SDL_pwrss_vd_mode) 3U)

No update on voltage detection mode update for the module

◆ SDL_POK_DETECTION_DISABLED

#define SDL_POK_DETECTION_DISABLED   ((SDL_POK_detection_status) 0U)

POK Detection disabled

◆ SDL_POK_DETECTION_ENABLED

#define SDL_POK_DETECTION_ENABLED   ((SDL_POK_detection_status) 1U)

POK Detection Enabled

◆ SDL_POK_DETECTION_DISABLE

#define SDL_POK_DETECTION_DISABLE   ((SDL_POK_detection) 0U)

POK Detection disabled

◆ SDL_POK_DETECTION_ENABLE

#define SDL_POK_DETECTION_ENABLE   ((SDL_POK_detection) 1U)

POK Detection Enabled

◆ SDL_POK_DETECTION_NO_ACTION

#define SDL_POK_DETECTION_NO_ACTION   ((SDL_POK_detection) 2U)

POK Detection No action

◆ SDL_POK_GET_DETECTION_VALUE

#define SDL_POK_GET_DETECTION_VALUE   ((SDL_POK_detection) 3U)

POK Detection get value

◆ SDL_POK_ENSEL_HWTIEOFFS

#define SDL_POK_ENSEL_HWTIEOFFS   ((SDL_POK_enSelSrc) 0U)

POK enables come from hardware tie offs

◆ SDL_POK_ENSEL_PRG_CTRL

#define SDL_POK_ENSEL_PRG_CTRL   ((SDL_POK_enSelSrc) 1U)

POK enables come from CTRLMMR_WKUP_PRG0_CTRL register

◆ SDL_POK_ENSEL_NO_ACTION

#define SDL_POK_ENSEL_NO_ACTION   ((SDL_POK_enSelSrc) 2U)

POK enable selection no action

◆ SDL_POK_GET_ENSEL_VALUE

#define SDL_POK_GET_ENSEL_VALUE   ((SDL_POK_enSelSrc) 3U)

POK enable selection Get value

◆ SDL_VOLTAGE_ABOVE_THRESHOLD

#define SDL_VOLTAGE_ABOVE_THRESHOLD   ((SDL_POK_thrStatus) 0U)

◆ SDL_VOLTAGE_BELOW_THRESHOLD

#define SDL_VOLTAGE_BELOW_THRESHOLD   ((SDL_POK_thrStatus) 1U)

◆ SDL_VOLTAGE_GOOD

#define SDL_VOLTAGE_GOOD   ((SDL_POK_thrStatus) 2U)

◆ SDL_POR_TRIM_SELECTION_FROM_HHV_DEFAULT

#define SDL_POR_TRIM_SELECTION_FROM_HHV_DEFAULT   ((uint8_t) 0U)

Trim selections for Bandgap and PORs come from HHV defaults

◆ SDL_POR_TRIM_SELECTION_FROM_CTRL_REGS

#define SDL_POR_TRIM_SELECTION_FROM_CTRL_REGS   ((uint8_t) 1U)

Trim selections for Bandgap and POKs come from CTRLMMR_WKUP_POR_BANDGAP_CTRL and POR_POKxxx_CTRL registers

◆ SDL_POR_TRIM_SELECTION_NO_CHANGE

#define SDL_POR_TRIM_SELECTION_NO_CHANGE   ((uint8_t) 2U)

Trim selections for Bandgap and POKs No Change

◆ SDL_POR_TRIM_SELECTION_GET_VALUE

#define SDL_POR_TRIM_SELECTION_GET_VALUE   ((uint8_t) 3U)

Trim Read selections Bandgap and POKs

◆ SDL_POR_OVERRIDE_NOT_SET_DISABLE

#define SDL_POR_OVERRIDE_NOT_SET_DISABLE   ((SDL_por_override) 0U)

OVERRIDE IS NOT SET and DISABLED

◆ SDL_POR_OVERRIDE_NOT_SET_ENABLE

#define SDL_POR_OVERRIDE_NOT_SET_ENABLE   ((SDL_por_override) 1U)

OVERRIDE IS NOT SET and ENABLED

◆ SDL_POR_OVERRIDE_SET_DISABLE

#define SDL_POR_OVERRIDE_SET_DISABLE   ((SDL_por_override) 2U)

OVERRIDE IS SET and DISABLED

◆ SDL_POR_OVERRIDE_SET_ENABLE

#define SDL_POR_OVERRIDE_SET_ENABLE   ((SDL_por_override) 3U)

OVERRIDE IS SET and ENABLED

◆ SDL_POR_GET_OVERRIDE_VALUE

#define SDL_POR_GET_OVERRIDE_VALUE   ((SDL_por_override) 4U)

PORHV GET OVERRIDE VALUE

◆ SDL_POR_SET_OVERRIDE_NO_CHANGE

#define SDL_POR_SET_OVERRIDE_NO_CHANGE   ((SDL_por_override) 5U)

PORHV SET OVERRIDE VALUE NO CHANGE

◆ SDL_OVERRIDE_SET_UNKNOWN

#define SDL_OVERRIDE_SET_UNKNOWN   ((SDL_por_override) 0xFFU)

OVRD and SET Values unknown

◆ SDL_PORHV_OVERRIDE_INDEX

#define SDL_PORHV_OVERRIDE_INDEX   (0U)

PORHV Override index

◆ SDL_BGAP_OVERRIDE_INDEX

#define SDL_BGAP_OVERRIDE_INDEX   (1U)

Bandgap Override index

◆ SDL_POKHV_OVERRIDE_INDEX

#define SDL_POKHV_OVERRIDE_INDEX   (2U)

POKHV Override index

◆ SDL_POKLVA_OVERRIDE_INDEX

#define SDL_POKLVA_OVERRIDE_INDEX   (3U)

POKLVA Override index

◆ SDL_POKLVB_OVERRIDE_INDEX

#define SDL_POKLVB_OVERRIDE_INDEX   (4U)

POKLVB Override index

◆ SDL_MAX_OVERRIDE_INDEX

#define SDL_MAX_OVERRIDE_INDEX   (5U)

total Number of Override indeces

◆ SDL_POR_MODULE_STATUS_FUNCTIONAL_MODE

#define SDL_POR_MODULE_STATUS_FUNCTIONAL_MODE   ((SDL_por_module_status) 0U)

POR in functional mode

◆ SDL_POR_MODULE_STATUS_RESET_MODE

#define SDL_POR_MODULE_STATUS_RESET_MODE   ((SDL_por_module_status) 1U)

POR in Reset mode

◆ SDL_FIRST_POK_ID

#define SDL_FIRST_POK_ID   (0)

Invalid POK/POR ID

◆ SDL_POK_VDDA_PMIC_IN_ID

#define SDL_POK_VDDA_PMIC_IN_ID   (SDL_FIRST_POK_ID)

◆ SDL_POK_VDD_CORE_UV_ID

#define SDL_POK_VDD_CORE_UV_ID   (1)

◆ SDL_POK_VDDSHV_WKUP_GEN_UV_ID

#define SDL_POK_VDDSHV_WKUP_GEN_UV_ID   (2)

◆ SDL_POK_VDD_CPU_UV_ID

#define SDL_POK_VDD_CPU_UV_ID   (3)

◆ SDL_POK_VDDR_MCU_UV_ID

#define SDL_POK_VDDR_MCU_UV_ID   (4)

◆ SDL_POK_VMON_EXT_UV_ID

#define SDL_POK_VMON_EXT_UV_ID   (5)

◆ SDL_POK_VDD_MCU_OV_ID

#define SDL_POK_VDD_MCU_OV_ID   (6)

◆ SDL_POK_VDDR_CORE_UV_ID

#define SDL_POK_VDDR_CORE_UV_ID   (7)

◆ SDL_POK_VDDSHV_WKUP_GEN_OV_ID

#define SDL_POK_VDDSHV_WKUP_GEN_OV_ID   (8)

◆ SDL_POK_VDD_CORE_OV_ID

#define SDL_POK_VDD_CORE_OV_ID   (9)

◆ SDL_POK_VDDR_MCU_OV_ID

#define SDL_POK_VDDR_MCU_OV_ID   (10)

◆ SDL_POK_VDD_CPU_OV_ID

#define SDL_POK_VDD_CPU_OV_ID   (11)

◆ SDL_POK_VDDR_CORE_OV_ID

#define SDL_POK_VDDR_CORE_OV_ID   (12)

◆ SDL_POK_VMON_EXT_OV_ID

#define SDL_POK_VMON_EXT_OV_ID   (13)

◆ SDL_POR_POKHV_UV_ID

#define SDL_POR_POKHV_UV_ID   (14)

◆ SDL_POR_POKLV_UV_ID

#define SDL_POR_POKLV_UV_ID   (15)

◆ SDL_POR_POKHV_OV_ID

#define SDL_POR_POKHV_OV_ID   (16)

◆ SDL_LAST_POK_ID

#define SDL_LAST_POK_ID   (SDL_POR_POKHV_OV_ID)

Typedef Documentation

◆ SDL_pok_type

typedef uint8_t SDL_pok_type

◆ SDL_pwrss_hysteresis

typedef uint8_t SDL_pwrss_hysteresis

◆ SDL_pwrss_trim

typedef uint8_t SDL_pwrss_trim

◆ SDL_pwrss_vd_mode

typedef uint8_t SDL_pwrss_vd_mode

◆ SDL_POK_detection_status

typedef uint8_t SDL_POK_detection_status

◆ SDL_POK_detection

typedef uint8_t SDL_POK_detection

◆ SDL_POK_enSelSrc

typedef uint8_t SDL_POK_enSelSrc

◆ SDL_POK_thrStatus

typedef uint8_t SDL_POK_thrStatus

◆ SDL_por_trim_sel

typedef uint8_t SDL_por_trim_sel

◆ SDL_por_override

typedef uint8_t SDL_por_override

◆ SDL_por_module_status

typedef uint8_t SDL_por_module_status

◆ SDL_wkupCtrlRegsBase_t

typedef SDL_wkup_ctrl_mmr_cfg0Regs SDL_wkupCtrlRegsBase_t

◆ SDL_POK_Inst

typedef int8_t SDL_POK_Inst