SmartSnippets DA1459x SDK
Files | Data Structures | Enumerations | Functions

Power Manager. More...

Files

file  hw_pmu_da1459x.h
 Power Manager header file for DA1459x.
 

Data Structures

struct  HW_PMU_1V8_RAIL_CONFIG
 1V8 power rail configuration More...
 
struct  HW_PMU_VDCDC_RAIL_CONFIG
 VDCDC power rail configuration. More...
 
struct  HW_PMU_VDD_RAIL_CONFIG
 VDD power rail configuration. More...
 

Enumerations

enum  HW_PMU_ERROR_CODE {
  HW_PMU_ERROR_NOERROR = 0, HW_PMU_ERROR_INVALID_ARGS = 1, HW_PMU_ERROR_NOT_ENOUGH_POWER = 2, HW_PMU_ERROR_XTAL32M_DBLR_ON = 3,
  HW_PMU_ERROR_XTAL32M_ON = 4, HW_PMU_ERROR_RC32M_ON = 5, HW_PMU_ERROR_RCX_ON = 6, HW_PMU_ERROR_RCX_LP = 7,
  HW_PMU_ERROR_XTAL32K_ON = 8, HW_PMU_ERROR_XTAL32K_LP = 9, HW_PMU_ERROR_FAST_WAKEUP_ON = 10, HW_PMU_ERROR_ACTION_NOT_POSSIBLE = 11,
  HW_PMU_ERROR_OTHER_LOADS_DEPENDENCY = 12, HW_PMU_ERROR_BOD_IS_ACTIVE = 13, HW_PMU_ERROR_BOD_THRESHOLD = 14, HW_PMU_ERROR_SLEEP_LDO = 15,
  HW_PMU_ERROR_EFLASH_OPS = 16
}
 PMU API Error Codes. More...
 
enum  HW_PMU_SRC_TYPE { HW_PMU_SRC_TYPE_LDO_LOW_RIPPLE = 0, HW_PMU_SRC_TYPE_DCDC_HIGH_EFFICIENCY = 1, HW_PMU_SRC_TYPE_VBAT = 2 }
 PMU API Source type. More...
 
enum  HW_PMU_POWER_RAIL_STATE { POWER_RAIL_DISABLED = 0, POWER_RAIL_ENABLED = 1 }
 Power rail state (enabled or disabled) More...
 
enum  HW_PMU_1V8_VOLTAGE { HW_PMU_1V8_VOLTAGE_1V8 = 0 }
 Voltage level options for the 1V8 power rail. More...
 
enum  HW_PMU_1V8_MAX_LOAD { HW_PMU_1V8_MAX_LDO_LOAD_2 = 0, HW_PMU_1V8_MAX_BYPASS_LOAD_2 = 1, HW_PMU_1V8_MAX_LDO_LOAD_20 = 2, HW_PMU_1V8_MAX_BYPASS_LOAD_20 = 3 }
 Maximum load current options for the 1V8 power rail. More...
 
enum  HW_PMU_VDCDC_VOLTAGE {
  HW_PMU_VDCDC_VOLTAGE_1V10 = 0, HW_PMU_VDCDC_VOLTAGE_1V15 = 1, HW_PMU_VDCDC_VOLTAGE_1V20 = 2, HW_PMU_VDCDC_VOLTAGE_1V25 = 3,
  HW_PMU_VDCDC_VOLTAGE_1V30 = 4, HW_PMU_VDCDC_VOLTAGE_1V35 = 5, HW_PMU_VDCDC_VOLTAGE_1V40 = 6, HW_PMU_VDCDC_VOLTAGE_1V45 = 7
}
 Voltage level options for VDCDC rail applicable in active state. More...
 
enum  HW_PMU_VDCDC_MAX_LOAD { HW_PMU_VDCDC_MAX_DCDC_LOAD_0_300 = 0, HW_PMU_VDCDC_MAX_LDO_LOAD_1 = 1, HW_PMU_VDCDC_MAX_DCDC_LOAD_40 = 2, HW_PMU_VDCDC_MAX_LDO_LOAD_40 = 3 }
 Maximum load current options for the VDCDC power rail. More...
 
enum  HW_PMU_VDD_VOLTAGE {
  HW_PMU_VDD_VOLTAGE_0V90 = 0, HW_PMU_VDD_VOLTAGE_0V95 = 1, HW_PMU_VDD_VOLTAGE_1V00 = 2, HW_PMU_VDD_VOLTAGE_1V05 = 3,
  HW_PMU_VDD_VOLTAGE_1V10 = 4, HW_PMU_VDD_VOLTAGE_1V15 = 5, HW_PMU_VDD_VOLTAGE_1V20 = 6, HW_PMU_VDD_VOLTAGE_1V25 = 7,
  HW_PMU_VDD_VOLTAGE_SLEEP_0V75 = 8, HW_PMU_VDD_VOLTAGE_SLEEP_0V90 = 9, HW_PMU_VDD_VOLTAGE_INVALID
}
 Voltage level options for VDD rail. More...
 
enum  HW_PMU_VDD_MAX_LOAD { HW_PMU_VDD_MAX_LOAD_20 = 0, HW_PMU_VDD_MAX_LOAD_0_400 = 1 }
 Maximum load current options for the 1V8 power rail. More...
 

Functions

HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_enable (HW_PMU_1V8_MAX_LOAD max_load)
 Set 1V8 rail wakeup / active configuration. More...
 
HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_disable (void)
 Disable 1V8 rail in wakeup / active state. More...
 
HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_enable (HW_PMU_1V8_MAX_LOAD max_load)
 Enable 1V8 rail in sleep state. More...
 
HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_disable (void)
 Disable 1V8 rail in sleep state. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_active_config (HW_PMU_1V8_RAIL_CONFIG *rail_config)
 Get the 1V8 rail active state configuration. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onwakeup_config (HW_PMU_1V8_RAIL_CONFIG *rail_config)
 Get the 1V8 rail wakeup configuration. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onsleep_config (HW_PMU_1V8_RAIL_CONFIG *rail_config)
 Get the 1V8 rail sleep configuration. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdcdc_set_voltage (HW_PMU_VDCDC_VOLTAGE voltage)
 Set the voltage level of VDCDC rail. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdcdc_onwakeup_enable (HW_PMU_VDCDC_MAX_LOAD max_load)
 Set VDCDC rail wakeup / active configuration. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdcdc_onwakeup_disable (void)
 Disable VDCDC rail in wakeup / active state. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdcdc_onsleep_enable (HW_PMU_VDCDC_MAX_LOAD max_load)
 Enable the VDCDC rail in sleep state. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdcdc_onsleep_disable (void)
 Disable VDCDC rail in sleep state. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdcdc_active_config (HW_PMU_VDCDC_RAIL_CONFIG *rail_config)
 Get the VDCDC rail active state configuration. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdcdc_onwakeup_config (HW_PMU_VDCDC_RAIL_CONFIG *rail_config)
 Get the VDCDC rail wakeup configuration. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdcdc_onsleep_config (HW_PMU_VDCDC_RAIL_CONFIG *rail_config)
 Get the VDCDC rail sleep configuration. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdd_set_voltage (HW_PMU_VDD_VOLTAGE voltage)
 Set the voltage level of VDD rail. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdd_onwakeup_enable (HW_PMU_VDD_MAX_LOAD max_load)
 Set VDD rail wakeup / active configuration. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdd_onwakeup_disable (void)
 Disable VDD rail in wakeup / active state. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdd_onsleep_enable (HW_PMU_VDD_MAX_LOAD max_load)
 Enable VDD rail in sleep state. More...
 
HW_PMU_ERROR_CODE hw_pmu_vdd_onsleep_disable (void)
 Disable VDD rail in sleep state. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdd_active_config (HW_PMU_VDD_RAIL_CONFIG *rail_config)
 Get the VDD rail active state configuration. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdd_onwakeup_config (HW_PMU_VDD_RAIL_CONFIG *rail_config)
 Get the VDD rail wakeup configuration. More...
 
HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdd_onsleep_config (HW_PMU_VDD_RAIL_CONFIG *rail_config)
 Get the VDD rail sleep configuration. More...
 

Detailed Description

Power Manager.

Enumeration Type Documentation

◆ HW_PMU_1V8_MAX_LOAD

Maximum load current options for the 1V8 power rail.

Enumerator
HW_PMU_1V8_MAX_LDO_LOAD_2 

2mA supplied by LDO_IO_RET

HW_PMU_1V8_MAX_BYPASS_LOAD_2 

2mA supplied by VBAT

HW_PMU_1V8_MAX_LDO_LOAD_20 

20mA supplied by LDO_IO

HW_PMU_1V8_MAX_BYPASS_LOAD_20 

20mA supplied by VBAT

◆ HW_PMU_1V8_VOLTAGE

Voltage level options for the 1V8 power rail.

Enumerator
HW_PMU_1V8_VOLTAGE_1V8 

1.8V

◆ HW_PMU_ERROR_CODE

PMU API Error Codes.

Enumerator
HW_PMU_ERROR_NOERROR 

No Error.

HW_PMU_ERROR_INVALID_ARGS 

Invalid arguments.

HW_PMU_ERROR_NOT_ENOUGH_POWER 

Current LDO config cannot supply enough power for this config.

HW_PMU_ERROR_XTAL32M_DBLR_ON 

Doubler is on.

HW_PMU_ERROR_XTAL32M_ON 

XTAL32M is on.

HW_PMU_ERROR_RC32M_ON 

RC32M is on.

HW_PMU_ERROR_RCX_ON 

RCX is on.

HW_PMU_ERROR_RCX_LP 

RCX set as LP clock.

HW_PMU_ERROR_XTAL32K_ON 

XTAL32K is on.

HW_PMU_ERROR_XTAL32K_LP 

XTAL32K set as LP clock.

HW_PMU_ERROR_FAST_WAKEUP_ON 

Fast wakeup is on.

HW_PMU_ERROR_ACTION_NOT_POSSIBLE 

Action not possible to execute.

HW_PMU_ERROR_OTHER_LOADS_DEPENDENCY 

Other loads dependency.

HW_PMU_ERROR_BOD_IS_ACTIVE 

BOD is active.

HW_PMU_ERROR_BOD_THRESHOLD 

BOD threshold level.

HW_PMU_ERROR_SLEEP_LDO 

Sleep LDO configured with voltage below 0.9V.

HW_PMU_ERROR_EFLASH_OPS 

eFLASH write or erase operation is ongoing

◆ HW_PMU_POWER_RAIL_STATE

Power rail state (enabled or disabled)

Depending on the context it either imply disabled / enabled in sleep state or active / wakeup state.

Enumerator
POWER_RAIL_DISABLED 

The rail is disabled.

POWER_RAIL_ENABLED 

The rail is enabled.

◆ HW_PMU_SRC_TYPE

PMU API Source type.

This allows the user to select a high-efficiency and high-ripple source (DCDC) or low-efficiency and low-ripple source (LDO) for a Power Rail.

Enumerator
HW_PMU_SRC_TYPE_LDO_LOW_RIPPLE 

Low ripple source (LDO)

HW_PMU_SRC_TYPE_DCDC_HIGH_EFFICIENCY 

High efficiency (and ripple) source (DCDC)

HW_PMU_SRC_TYPE_VBAT 

Bypass mode for LDO_IO/LDO_IO_RET.

◆ HW_PMU_VDCDC_MAX_LOAD

Maximum load current options for the VDCDC power rail.

Enumerator
HW_PMU_VDCDC_MAX_DCDC_LOAD_0_300 

300uA

HW_PMU_VDCDC_MAX_LDO_LOAD_1 

1mA

HW_PMU_VDCDC_MAX_DCDC_LOAD_40 

40mA

HW_PMU_VDCDC_MAX_LDO_LOAD_40 

40mA

◆ HW_PMU_VDCDC_VOLTAGE

Voltage level options for VDCDC rail applicable in active state.

Enumerator
HW_PMU_VDCDC_VOLTAGE_1V10 

1.10V

HW_PMU_VDCDC_VOLTAGE_1V15 

1.15V

HW_PMU_VDCDC_VOLTAGE_1V20 

1.20V

HW_PMU_VDCDC_VOLTAGE_1V25 

1.25V

HW_PMU_VDCDC_VOLTAGE_1V30 

1.30V

HW_PMU_VDCDC_VOLTAGE_1V35 

1.35V

HW_PMU_VDCDC_VOLTAGE_1V40 

1.40V

HW_PMU_VDCDC_VOLTAGE_1V45 

1.45V

◆ HW_PMU_VDD_MAX_LOAD

Maximum load current options for the 1V8 power rail.

Enumerator
HW_PMU_VDD_MAX_LOAD_20 

20mA

HW_PMU_VDD_MAX_LOAD_0_400 

400uA

◆ HW_PMU_VDD_VOLTAGE

Voltage level options for VDD rail.

Enumerator
HW_PMU_VDD_VOLTAGE_0V90 

0.90V during active state

HW_PMU_VDD_VOLTAGE_0V95 

0.95V during active state

HW_PMU_VDD_VOLTAGE_1V00 

1.00V during active state

HW_PMU_VDD_VOLTAGE_1V05 

1.05V during active state

HW_PMU_VDD_VOLTAGE_1V10 

1.10V during active state

HW_PMU_VDD_VOLTAGE_1V15 

1.15V during active state

HW_PMU_VDD_VOLTAGE_1V20 

1.20V during active state

HW_PMU_VDD_VOLTAGE_1V25 

1.25V during active state

HW_PMU_VDD_VOLTAGE_SLEEP_0V75 

0.75V during sleep state

HW_PMU_VDD_VOLTAGE_SLEEP_0V90 

0.90V during sleep state

HW_PMU_VDD_VOLTAGE_INVALID 

Invalid voltage.

Function Documentation

◆ hw_pmu_1v8_onsleep_disable()

HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_disable ( void  )

Disable 1V8 rail in sleep state.

This function disables all the 1V8 power sources used during the sleep state.

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

◆ hw_pmu_1v8_onsleep_enable()

HW_PMU_ERROR_CODE hw_pmu_1v8_onsleep_enable ( HW_PMU_1V8_MAX_LOAD  max_load)

Enable 1V8 rail in sleep state.

This function enables the 1V8 power sources used during the sleep state. Depending on the input parameter the power source could be either LDO_IO_RET or VBAT (bypass mode in sleep mode).

If none of the power sources is available HW_PMU_ERROR_NOT_ENOUGH_POWER error code will be returned.

param[in] max_load The maximum current that can be supplied to the loads of the rail

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an error code otherwise.

Valid input parameters: max load mA Source HW_PMU_1V8_MAX_LDO_LOAD_2 LDO_IO_RET HW_PMU_1V8_MAX_BYPASS_LOAD_2 VBAT (Bypass mode)

◆ hw_pmu_1v8_onwakeup_disable()

HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_disable ( void  )

Disable 1V8 rail in wakeup / active state.

This function disables all the 1V8 power sources used during the wakeup / active state.

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

◆ hw_pmu_1v8_onwakeup_enable()

HW_PMU_ERROR_CODE hw_pmu_1v8_onwakeup_enable ( HW_PMU_1V8_MAX_LOAD  max_load)

Set 1V8 rail wakeup / active configuration.

This function sets the 1V8 rail configuration during the wakeup / active state. This is effective immediately. Depending on the input parameter, the appropriate power source will be selected:

  • High current - Enable LDO_IO or bypass mode in active mode, disable other power sources.
  • Low current - Enable LDO_IO_RET, disable other power sources. The rail cannot be enabled if the power sources that supply it are off. In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will be returned.
Parameters
[in]max_loadThe maximum current that can be supplied to the loads of the rail
Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

Valid input parameters: max load mA Source HW_PMU_1V8_MAX_LDO_LOAD_20 LDO_IO HW_PMU_1V8_MAX_LDO_LOAD_2 LDO_IO_RET HW_PMU_1V8_MAX_BYPASS_LOAD_20 VBAT (Bypass mode)

◆ hw_pmu_get_1v8_active_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_active_config ( HW_PMU_1V8_RAIL_CONFIG rail_config)

Get the 1V8 rail active state configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail 1V8 has been configured properly to work in active state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_1v8_onsleep_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onsleep_config ( HW_PMU_1V8_RAIL_CONFIG rail_config)

Get the 1V8 rail sleep configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail 1V8 has been configured properly to work in sleep state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_1v8_onwakeup_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_1v8_onwakeup_config ( HW_PMU_1V8_RAIL_CONFIG rail_config)

Get the 1V8 rail wakeup configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail 1V8 has been configured properly to work in wakeup state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_vdcdc_active_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdcdc_active_config ( HW_PMU_VDCDC_RAIL_CONFIG rail_config)

Get the VDCDC rail active state configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail VDCDC has been configured properly to work in active state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_vdcdc_onsleep_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdcdc_onsleep_config ( HW_PMU_VDCDC_RAIL_CONFIG rail_config)

Get the VDCDC rail sleep configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail VDCDC has been configured properly to work in sleep state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_vdcdc_onwakeup_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdcdc_onwakeup_config ( HW_PMU_VDCDC_RAIL_CONFIG rail_config)

Get the VDCDC rail wakeup configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail VDCDC has been configured properly to work in wakeup state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_vdd_active_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdd_active_config ( HW_PMU_VDD_RAIL_CONFIG rail_config)

Get the VDD rail active state configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail VDD has been configured properly to work in active state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_vdd_onsleep_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdd_onsleep_config ( HW_PMU_VDD_RAIL_CONFIG rail_config)

Get the VDD rail sleep configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail VDD has been configured properly to work in sleep state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_get_vdd_onwakeup_config()

HW_PMU_POWER_RAIL_STATE hw_pmu_get_vdd_onwakeup_config ( HW_PMU_VDD_RAIL_CONFIG rail_config)

Get the VDD rail wakeup configuration.

Parameters
[out]rail_configThe rail configuration
Returns
POWER_RAIL_ENABLED if the rail VDD has been configured properly to work in wakeup state, or POWER_RAIL_DISABLED otherwise.

◆ hw_pmu_vdcdc_onsleep_disable()

HW_PMU_ERROR_CODE hw_pmu_vdcdc_onsleep_disable ( void  )

Disable VDCDC rail in sleep state.

This function disables all the VDCDC power sources used during the sleep state.

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

◆ hw_pmu_vdcdc_onsleep_enable()

HW_PMU_ERROR_CODE hw_pmu_vdcdc_onsleep_enable ( HW_PMU_VDCDC_MAX_LOAD  max_load)

Enable the VDCDC rail in sleep state.

This function enables the VDCDC rail during the sleep state. Depending on the input parameter the power source could be either LDO_IO_LOW_RET or DCDC

If none of the power sources is available HW_PMU_ERROR_NOT_ENOUGH_POWER error code will be returned.

param[in] max_load The maximum current that can be supplied to the loads of the rail

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an error code otherwise.

Valid input parameters: max load mA Source HW_PMU_VDCDC_MAX_LDO_LOAD_1 LDO_LOW_RET HW_PMU_VDCDC_MAX_DCDC_LOAD_0_300 DCDC

◆ hw_pmu_vdcdc_onwakeup_disable()

HW_PMU_ERROR_CODE hw_pmu_vdcdc_onwakeup_disable ( void  )

Disable VDCDC rail in wakeup / active state.

This function disables all the VDCDC power sources used during the wakeup / active state.

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

◆ hw_pmu_vdcdc_onwakeup_enable()

HW_PMU_ERROR_CODE hw_pmu_vdcdc_onwakeup_enable ( HW_PMU_VDCDC_MAX_LOAD  max_load)

Set VDCDC rail wakeup / active configuration.

This function sets the VDCDC rail configuration during the wakeup / active state. This is effective immediately. Depending on the input parameter, the appropriate power source will be selected:

  • High current - Enable LDO_LOW or DCDC

The rail cannot be enabled if the power sources that supply it are off. In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will be returned.

Parameters
[in]max_loadThe maximum current that can be supplied to the loads of the rail
Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

Valid input parameters: max load mA Source HW_PMU_VDCDC_MAX_DCDC_LOAD_40 DCDC HW_PMU_VDCDC_MAX_LDO_LOAD_40 LDO_LOW

◆ hw_pmu_vdcdc_set_voltage()

HW_PMU_ERROR_CODE hw_pmu_vdcdc_set_voltage ( HW_PMU_VDCDC_VOLTAGE  voltage)

Set the voltage level of VDCDC rail.

This function sets the voltage level of the VDCDC rail during active / wakeup state. The voltage level setting is common no matter the power source (DCDC or LDO_LOW / LDO_LOW_RET).

The input voltage should be set at least 200mV higher than that of VDD. Otherwise an error code is returned.

Parameters
[in]voltageThe voltage of the rail
Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been configured properly, or an error code otherwise.

Valid input parameters

See also
HW_PMU_VDCDC_VOLTAGE

◆ hw_pmu_vdd_onsleep_disable()

HW_PMU_ERROR_CODE hw_pmu_vdd_onsleep_disable ( void  )

Disable VDD rail in sleep state.

This function disables all the VDD power sources used during the sleep state.

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

◆ hw_pmu_vdd_onsleep_enable()

HW_PMU_ERROR_CODE hw_pmu_vdd_onsleep_enable ( HW_PMU_VDD_MAX_LOAD  max_load)

Enable VDD rail in sleep state.

This function enables the VDD power sources used during the sleep state. The only power source is LDO_IO_RET.

If it is not available HW_PMU_ERROR_NOT_ENOUGH_POWER error code will be returned.

param[in] max_load The maximum current that can be supplied to the loads of the rail

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been enabled, or an error code otherwise.

Valid input parameters: max load mA Source HW_PMU_VDD_MAX_LOAD_0_400 LDO_CORE_RET

◆ hw_pmu_vdd_onwakeup_disable()

HW_PMU_ERROR_CODE hw_pmu_vdd_onwakeup_disable ( void  )

Disable VDD rail in wakeup / active state.

This function disables all the VDD power sources used during the wakeup / active state.

Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

◆ hw_pmu_vdd_onwakeup_enable()

HW_PMU_ERROR_CODE hw_pmu_vdd_onwakeup_enable ( HW_PMU_VDD_MAX_LOAD  max_load)

Set VDD rail wakeup / active configuration.

This function sets the VDD rail configuration during the wakeup / active state. This is effective immediately. Depending on the input parameter, the appropriate power source will be selected:

  • High current - Enable LDO_CORE, disable other power sources.
  • Low current - LDO_CORE_RET, dsiable other power sources.

The rail cannot be enabled if the power sources that supply it are off. In this case HW_PMU_ERROR_NOT_ENOUGH_POWER error code will be returned.

Parameters
[in]max_loadThe maximum current that can be supplied to the loads of the rail
Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been disabled, or an error code otherwise.

Valid input parameters: max load mA Source HW_PMU_VDD_MAX_LOAD_20 LDO_CORE HW_PMU_VDD_MAX_LOAD_0_400 LDO_CORE_RET

◆ hw_pmu_vdd_set_voltage()

HW_PMU_ERROR_CODE hw_pmu_vdd_set_voltage ( HW_PMU_VDD_VOLTAGE  voltage)

Set the voltage level of VDD rail.

This function sets the voltage level of the VDD rail during active / wakeup or sleep state.

The input voltage should be set at least 200mV lower than that of VDCDC. Otherwise an error code is returned.

Parameters
[in]voltageThe voltage of the rail
Returns
Returns HW_PMU_ERROR_NOERROR if the rail has been configured properly, or an error code otherwise.

Valid input parameters

See also
HW_PMU_VDCDC_VOLTAGE