PDK API Guide for J721E
pmic_power_lp8764x.h File Reference

Introduction

PMIC LP8764x Leo PMIC Power Resources Driver API/interface file.

Go to the source code of this file.

Macros

PMIC Power Resource Type for LEO TPS6594x

#define PMIC_LP8764X_POWER_RESOURCE_TYPE_VCCA   (0U)
 
#define PMIC_LP8764X_POWER_RESOURCE_TYPE_BUCK   (1U)
 
#define PMIC_LP8764X_POWER_RESOURCE_TYPE_LDO   (2U)
 
#define PMIC_LP8764X_POWER_RESOURCE_TYPE_VMON   (3U)
 
PMIC Power Resources for HERA lp8764x

#define PMIC_LP8764X_POWER_SOURCE_VCCA   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_VCCA << 8U) | 0x0U))
 
#define PMIC_LP8764X_REGULATOR_BUCK1   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_BUCK << 8U) | 0x1U))
 
#define PMIC_LP8764X_REGULATOR_BUCK2   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_BUCK << 8U) | 0x2U))
 
#define PMIC_LP8764X_REGULATOR_BUCK3   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_BUCK << 8U) | 0x3U))
 
#define PMIC_LP8764X_REGULATOR_BUCK4   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_BUCK << 8U) | 0x4U))
 
#define PMIC_LP8764X_POWER_SOURCE_VMON1   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_VMON << 8U) | 0x5U))
 
#define PMIC_LP8764X_POWER_SOURCE_VMON2   ((((uint16_t)PMIC_LP8764X_POWER_RESOURCE_TYPE_VMON << 8U) | 0x6U))
 
PMIC Residual voltage check Enable/Disable

Valid only for VMON1, VMON2, LDO, BUCK

#define PMIC_LP8764X_REGULATOR_VMON_RV_SEL_ENABLE   (0x1U)
 Used to enable the residual voltage check. More...
 
#define PMIC_LP8764X_REGULATOR_VMON_RV_SEL_DISABLE   (0x0U)
 Used to disable the residual voltage check. More...
 
PMIC Pull-down resistor Enable/Disable for BUCK Regulator.

#define PMIC_LP8764X_REGULATOR_BUCK_PLDN_ENABLE   (0x1U)
 Used to enable the pull down resistor for BUCK regulator. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_PLDN_DISABLE   (0x0U)
 Used to disable the pull down resistor for BUCK regulator. More...
 
PMIC Voltage monitor Enable/Disable for BUCK/VMON1/VMON2/VCCA. Enable/Disable OV and UV comparators for VMON1/VMON2/VCCA. Enable/Disable OV, UV, SC and ILIM for BUCK

#define PMIC_LP8764X_VMON_DISABLE   (0x0U)
 Used to disable the voltage monitor. More...
 
#define PMIC_LP8764X_VMON_ENABLE   (0x1U)
 Used to enable the voltage monitor. More...
 
PMIC Select output voltage register for BUCK.

Valid only for BUCK Regulator

#define PMIC_LP8764X_REGULATOR_BUCK_VOUT_SEL_VOUT2   (bool)true
 Used to select VOUT2 register for voltage selection. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VOUT_SEL_VOUT1   (bool)false
 Used to select VOUT1 register for voltage selection. More...
 
PMIC Select between Automatic transitions between PFM and PWM modes OR Forced to PWM operation

Valid only for BUCK regulators.

#define PMIC_LP8764X_REGULATOR_PWM_MODE   (0x1U)
 Used to select PWM mode. More...
 
#define PMIC_LP8764X_REGULATOR_AUTO_PWM_PFM_MODE   (0x0U)
 Used to select Automatic transition between PFM and PWM modes. More...
 
PMIC Select btetween multi-phase operation OR AUTO mode with Automatic phase adding and shedding.

Valid only for BUCK regulators.

#define PMIC_LP8764X_REGULATOR_PWM_MP_MODE   (0x1U)
 Used to select multi-phase operation. More...
 
#define PMIC_LP8764X_REGULATOR_AUTO_PHASE_MODE   (0x0U)
 Used to select Automatic phase adding and shedding mode. More...
 
PMIC Enable/Disable BUCK Regulator.

#define PMIC_LP8764X_BUCK_REGULATOR_ENABLE   (0x1U)
 Used to enable the BUCK regulator. More...
 
#define PMIC_LP8764X_BUCK_REGULATOR_DISABLE   (0x0U)
 Used to disable the BUCK regulator. More...
 
PMIC Deglitch time select for BUCKx_VMON/VCCA_VMON/VMONx

#define PMIC_LP8764X_POWER_RESOURCE_DEGLITCH_SEL_4US   (0x0U)
 Used to select the degitch time as 4 usec. More...
 
#define PMIC_LP8764X_POWER_RESOURCE_DEGLITCH_SEL_20US   (0x1U)
 Used to select the degitch time as 20 usec. More...
 
PMIC Powergood level for VCCA

#define PMIC_LP8764X_VCCA_PG_3V3_LEVEL   (0x0U)
 Used to select the powergood level for VCCA to be 3.3v. More...
 
#define PMIC_LP8764X_VCCA_PG_5V_LEVEL   (0x1U)
 Used to select the powergood level for VCCA to be 5v. More...
 
OV/UV voltage monitoring range selection for VMON1/VMON2

#define PMIC_LP8764X_VMON_RANGE_0V3_3V34   (bool)false
 Used to select range 0.3 -3.34V. More...
 
#define PMIC_LP8764X_VMON_RANGE_3V35_5V   (bool)true
 Used to select range 3.5 -5V. More...
 
PMIC Switch Peak Current limit for BUCK Regulator

#define PMIC_LP8764X_REGULATOR_BUCK_CURRENT_LIMIT_2A5   (0x2U)
 Used to configure BUCK current limit as 2.5 Ampere. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_CURRENT_LIMIT_3A5   (0x3U)
 Used to configure BUCK current limit as 3.5 Ampere. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_CURRENT_LIMIT_4A5   (0x4U)
 Used to configure BUCK current limit as 4.5 Ampere. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_CURRENT_LIMIT_5A5   (0x5U)
 Used to configure BUCK current limit as 5.5 Ampere. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_CURRENT_LIMIT_6A5   (0x6U)
 Used to configure BUCK current limit as 6.5 Ampere. More...
 
PMIC Output voltage slew rate for BUCKx/VMONx

#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_33MV   (0x0U)
 Used to configure BUCK current limit as 30mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_20MV   (0x1U)
 Used to configure BUCK current limit as 20mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_10MV   (0x2U)
 Used to configure BUCK current limit as 10mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_05MV   (0x3U)
 Used to configure BUCK current limit as 5mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_2MV5   (0x4U)
 Used to configure BUCK current limit as 2.5mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_1MV3   (0x5U)
 Used to configure BUCK current limit as 1.3mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_0MV63   (0x6U)
 Used to configure BUCK current limit as 0.63mv. More...
 
#define PMIC_LP8764X_REGULATOR_BUCK_VMON_SLEW_RATE_0MV31   (0x7U)
 Used to configure BUCK current limit as 0.31mv. More...
 
PMIC Power Good Over/Under voltage threshold level for BUCK/LDO/VCCA

For LDO/BUCK - Over/Under Volatge thershold level are +x1 mv/ +x2 % or -x1 mv/ -x2 % respectively. For VCCA only perc For VCCA - Over/Under Volatge thershold level are +x2 % or -x2 % respectively.

#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_30_OR_3   (0U)
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_35_OR_3P5   (1U)
 Used to select over/under voltage threshold level as +/-35mv or +/-3.5%. More...
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_40_OR_4   (2U)
 Used to select over/under voltage threshold level as +/-40mv or +/-4%. More...
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_50_OR_5   (3U)
 Used to select over/under voltage threshold level as +/-50mv or +/-5%. More...
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_60_OR_6   (4U)
 Used to select over/under voltage threshold level as +/-60mv or +/-6%. More...
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_70_OR_7   (5U)
 Used to select over/under voltage threshold level as +/-70mv or +/-7%. More...
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_80_OR_8   (6U)
 Used to select over/under voltage threshold level as +/-80mv or +/-8%. More...
 
#define PMIC_LP8764X_PG_OV_UV_THRESHOLD_LVL_100_OR_10   (7U)
 Used to select over/under voltage threshold level as +/-100mv or +/-10%. More...
 
PMIC Rail group selection for all power resources.

#define PMIC_LP8764X_POWER_RAIL_SEL_NONE   (0x0U)
 Used to select rail group as no group Note: Software can prevent the SoC/MCU Power Error Handling, which normally shuts down the SOC/MCU power rails, by setting the relevent regulators to PMIC_LP8764X_POWER_RAIL_SEL_NONE. More...
 
#define PMIC_LP8764X_POWER_RAIL_SEL_MCU   (0x1U)
 Used to select rail group as MCU rail group. More...
 
#define PMIC_LP8764X_POWER_RAIL_SEL_SOC   (0x2U)
 Used to select rail group as SOC rail group. More...
 
#define PMIC_LP8764X_POWER_RAIL_SEL_OTHER   (0x3U)
 Used to select rail group as other rail group. More...
 
PMIC Power-Good source Type for HERA LP8764x

#define PMIC_LP8764X_PGOOD_SOURCE_TYPE_VCCA   (0U)
 
#define PMIC_LP8764X_PGOOD_SOURCE_TYPE_BUCK   (1U)
 
#define PMIC_LP8764X_PGOOD_SOURCE_TYPE_NRSTOUT   (2U)
 
#define PMIC_LP8764X_PGOOD_SOURCE_TYPE_NRSTOUT_SOC   (3U)
 
#define PMIC_LP8764X_PGOOD_SOURCE_TYPE_TDIE   (4U)
 
#define PMIC_LP8764X_PGOOD_SOURCE_TYPE_VMON   (6U)
 
PMIC Power-Good sources for HERA LP8764x

#define PMIC_LP8764X_PGOOD_SOURCE_VCCA   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_VCCA << 8U) | 0U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_BUCK1   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_BUCK << 8U) | 1U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_BUCK2   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_BUCK << 8U) | 2U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_BUCK3   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_BUCK << 8U) | 3U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_BUCK4   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_BUCK << 8U) | 4U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_NRSTOUT   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_NRSTOUT << 8U) | 5U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_NRSTOUT_SOC   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_NRSTOUT_SOC << 8U) | 6U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_TDIE   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_TDIE << 8U) | 7U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_VMON1   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_VMON << 8U) | 8U))
 
#define PMIC_LP8764X_PGOOD_SOURCE_VMON2   ((((uint16_t)PMIC_LP8764X_PGOOD_SOURCE_TYPE_VMON << 8U) | 9U))
 
Type of voltage monitoring for PGOOD signal:

#define PMIC_LP8764X_POWER_GOOD_UV_MONITOR_ENABLE   (0x0U)
 Only undervoltage is monitored. More...
 
#define PMIC_LP8764X_POWER_GOOD_UV_OV_MONITOR_ENABLE   (0x1U)
 Both undervoltage and overvoltage are monitored. More...
 
PGOOD signal polarity

#define PMIC_LP8764X_POWER_PGOOD_POL_HIGH   (0x0U)
 PGOOD signal is high when monitored inputs are valid. More...
 
#define PMIC_LP8764X_POWER_PGOOD_POL_LOW   (0x1U)
 PGOOD signal is low when monitored inputs are valid. More...
 
PGOOD signal source control from nRSTOUT_SOC pin

#define PMIC_LP8764X_POWER_PGOOD_SEL_NRSTOUT_SOC_MASKED   (0x0U)
 Signal is Masked. More...
 
#define PMIC_LP8764X_POWER_PGOOD_SEL_NRSTOUT_SOC   (0x1U)
 nRSTOUT_SOC pin low state forces PGOOD signal to low More...
 
PGOOD signal source control from nRSTOUT pin

#define PMIC_LP8764X_POWER_PGOOD_SEL_NRSTOUT_MASKED   (0x0U)
 Signal is Masked. More...
 
#define PMIC_LP8764X_POWER_PGOOD_SEL_NRSTOUT   (0x1U)
 nRSTOUT pin low state forces PGOOD signal to low More...
 
PGOOD signal source control from thermal warning

#define PMIC_LP8764X_POWER_PGOOD_SEL_TDIE_WARN_MASKED   (0x0U)
 Signal is Masked. More...
 
#define PMIC_LP8764X_POWER_PGOOD_SEL_TDIE_WARN   (0x1U)
 Thermal warning affecting to PGOOD signal. More...
 
PGOOD signal source control from VCCA monitoring

#define PMIC_LP8764X_POWER_PGOOD_SEL_VCCA_VMON_DISABLE   (0x0U)
 Signal is Masked. More...
 
#define PMIC_LP8764X_POWER_PGOOD_SEL_VCCA_VMON_ENABLE   (0x1U)
 VCCA/VMON OV/UV threshold affecting PGOOD signal. More...
 
PGOOD signal source control for BUCK and LDO monitoring

#define PMIC_LP8764X_POWER_PGOOD_SEL_SRC_MASKED   (0x0U)
 Signal is Masked. More...
 
#define PMIC_LP8764X_POWER_PGOOD_SEL_SRC_VOLTAGE   (0x1U)
 Powergood threshold voltage. More...
 
#define PMIC_LP8764X_POWER_PGOOD_SEL_SRC_VOLTAGE_CURRENT   (0x2U)
 Powergood threshold voltage AND current limit. More...
 
Status whether the output current is above/below current limit level

#define PMIC_LP8764X_POWER_CURRENT_LIMIT_STATUS_ABOVE_LIMIT   (0x0U)
 Status indicating that output current is above current limit level. More...
 
#define PMIC_LP8764X_POWER_CURRENT_LIMIT_STATUS_BELOW_LIMIT   (0x1U)
 Status indicating that output current is below current limit level. More...
 
Status whether the output voltage is above/below voltage threshold for LDO and BUCK

#define PMIC_LP8764X_REGULATOR_OUTPUT_UNDER_VOLTAGE_STATUS_ABOVE_UV   (0x0U)
 Status indicating that output voltage is above under-voltage threshold. More...
 
#define PMIC_LP8764X_REGULATOR_OUTPUT_UNDER_VOLTAGE_STATUS_BELOW_UV   (0x1U)
 Status indicating that output voltage is below under-voltage threshold. More...
 
#define PMIC_LP8764X_REGULATOR_OUTPUT_OVER_VOLTAGE_STATUS_ABOVE_OV   (0x0U)
 Status indicating that output voltage is above over-voltage threshold. More...
 
#define PMIC_LP8764X_REGULATOR_OUTPUT_OVER_VOLTAGE_STATUS_BELOW_OV   (0x1U)
 Status indicating that output voltage is below over-voltage threshold. More...
 
Status whether the input voltage is above/below under-voltage level for VCCA/VMON

#define PMIC_LP8764X_VCCA_VMON_INPUT_UNDER_VOLTAGE_STATUS_ABOVE_UV   (0x0U)
 Status indicating that input voltage is above under-voltage level. More...
 
#define PMIC_LP8764X_VCCA_VMON_INPUT_UNDER_VOLTAGE_STATUS_BELOW_UV   (0x1U)
 Status indicating that input voltage is below under-voltage level. More...
 
Status whether the input voltage is above/below over-voltage level for VCCA/VMON

#define PMIC_LP8764X_VCCA_VMON_INPUT_OVER_VOLTAGE_STATUS_ABOVE_OV   (0x0U)
 Status indicating that input voltage is above over-voltage level. More...
 
#define PMIC_LP8764X_VCCA_VMON_INPUT_OVER_VOLTAGE_STATUS_BELOW_OV   (0x1U)
 Status indicating that input voltage is below over-voltage level. More...
 
Status whether the voltage is above/below over-voltage protection level for VCCA

#define PMIC_LP8764X_VCCA_OVER_VOLTAGE_LVL_STATUS_ABOVE_OV   (0x0U)
 Status indicating that voltage is above over-voltage protection level. More...
 
#define PMIC_LP8764X_VCCA_OVER_VOLTAGE_LVL_STATUS_BELOW_OV   (0x1U)
 Status indicating that voltage is below over-voltage protection level. More...
 
PMIC Thermal shutdown threshold level.

#define PMIC_LP8764X_THERMAL_TEMP_TSD_ORD_140C   (0U)
 Used to set the Thermal shutdown threshold level to 140 Celsius. More...
 
#define PMIC_LP8764X_THERMAL_TEMP_TSD_ORD_145C   (1U)
 Used to set the Thermal shutdown threshold level to 145 Celsius. More...
 
PMIC Thermal warning threshold level.

#define PMIC_LP8764X_THERMAL_TEMP_WARN_120C   (0U)
 Used to set the Thermal warning threshold level to 120 Celsius. More...
 
#define PMIC_LP8764X_THERMAL_TEMP_WARN_130C   (1U)
 Used to set the Thermal warning threshold level to 130 Celsius. More...
 
PMIC Power Interrupt selection

#define PMIC_LP8764X_POWER_OV_INT   (0U)
 
#define PMIC_LP8764X_POWER_UV_INT   (1U)
 
#define PMIC_LP8764X_POWER_ILIM_INT   (3U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_TWARN   (0U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_NRSTOUT_READBACK   (1U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_SOC_PWR_ERR   (2U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_MCU_PWR_ERR   (3U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_ORD_SHUTDOWN   (4U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_IMM_SHUTDOWN   (5U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_NRSTOUT_SOC_READBACK   (6U)
 
#define PMIC_LP8764X_POWER_INTERRUPT_EN_DRV_READBACK   (7U)