![]() |
MCUXpresso SDK API Reference Manual
Rev 2.16.000
NXP Semiconductors
|
The MCUXpresso SDK provides a peripheral driver for the System Power Control (SPC) module of MCUXpresso SDK devices. The SPC module contains and controls two LDOs and one DCDC used for regulating System Core.
API functions are provided to configure on-chip regulators in active mode and low power modes. For Active modes, SPC_ConfigActiveModeRegulators() function accepts different parameters to config the voltage level and drive strength for each on-chip regulator. For Active mode, Some APIs also provided individually to config each on-chip regulator's voltage level and drive strength. For low power modes, SPC_ConfigLowPowerModeRegulators() function accepts different parameters to config the voltage level and drive strength for each on-chip regulator. For low power mode, some APIs also provided individually to config each on-chip regulator's voltage level and driver strength. For gating each Voltage detector for each voltage domain, there are also some APIs provided.
Data Structures | |
| struct | spc_lowpower_request_config_t |
| Low Power Request output pin configuration. More... | |
| struct | spc_intergrated_power_switch_config_t |
| Integrated power switch configuration. More... | |
| struct | spc_active_mode_core_ldo_option_t |
| Core LDO regulator options in Active mode. More... | |
| struct | spc_active_mode_sys_ldo_option_t |
| System LDO regulator options in Active mode. More... | |
| struct | spc_active_mode_dcdc_option_t |
| DCDC regulator options in Active mode. More... | |
| struct | spc_lowpower_mode_core_ldo_option_t |
| Core LDO regulator options in Low Power mode. More... | |
| struct | spc_lowpower_mode_sys_ldo_option_t |
| System LDO regulator options in Low Power mode. More... | |
| struct | spc_lowpower_mode_dcdc_option_t |
| DCDC regulator options in Low Power mode. More... | |
| struct | spc_voltage_detect_option_t |
| CORE/SYS/IO VDD Voltage Detect options. More... | |
| struct | spc_dcdc_burst_config_t |
| DCDC Burst configuration. More... | |
| struct | spc_core_voltage_detect_config_t |
| Core Voltage Detect configuration. More... | |
| struct | spc_system_voltage_detect_config_t |
| System Voltage Detect Configuration. More... | |
| struct | spc_io_voltage_detect_config_t |
| IO Voltage Detect Configuration. More... | |
| struct | spc_active_mode_regulators_config_t |
| Active mode configuration. More... | |
| struct | spc_lowpower_mode_regulators_config_t |
| Low Power Mode configuration. More... | |
Driver version | |
| #define | FSL_SPC_DRIVER_VERSION (MAKE_VERSION(2, 5, 0)) |
| SPC driver version 2.5.0. More... | |
SPC Status | |
| uint8_t | SPC_GetPeriphIOIsolationStatus (SPC_Type *base) |
| Gets Isolation status for each power domains. More... | |
| static void | SPC_ClearPeriphIOIsolationFlag (SPC_Type *base) |
| Clears peripherals and I/O pads isolation flags for each power domains. More... | |
| static bool | SPC_GetBusyStatusFlag (SPC_Type *base) |
| Gets SPC busy status flag. More... | |
| static bool | SPC_CheckLowPowerReqest (SPC_Type *base) |
| Checks system low power request. More... | |
| static void | SPC_ClearLowPowerRequest (SPC_Type *base) |
| Clears system low power request, set SPC in active mode. More... | |
| static bool | SPC_CheckPowerSwitchState (SPC_Type *base) |
| Checks power switch state. More... | |
| spc_power_domain_low_power_mode_t | SPC_GetPowerDomainLowPowerMode (SPC_Type *base, spc_power_domain_id_t powerDomainId) |
| Gets selected power domain's requested low power mode. More... | |
| static bool | SPC_CheckPowerDomainLowPowerRequest (SPC_Type *base, spc_power_domain_id_t powerDomainId) |
| Checks power domain's low power request. More... | |
| static void | SPC_ClearPowerDomainLowPowerRequestFlag (SPC_Type *base, spc_power_domain_id_t powerDomainId) |
| Clears selected power domain's low power request flag. More... | |
Low Power Request configuration. | |
| void | SPC_SetLowPowerRequestConfig (SPC_Type *base, const spc_lowpower_request_config_t *config) |
| Configs Low power request output pin. More... | |
Smart Power Switch Control Interfaces | |
| static void | SPC_SoftwareGatePowerSwitch (SPC_Type *base, bool gate) |
| Gates/Un-gates power switch in software mode. More... | |
| static void | SPC_PowerModeControlPowerSwitch (SPC_Type *base) |
| Gates power switch at low power modes entry, and un-gates power switch at low power mode wakeup. More... | |
Wake up configuration. | |
| static void | SPC_SetWakeUpValue (SPC_Type *base, uint32_t data) |
| Set the address of the function/image to be executed if chip wake from power down or deep power down mode. More... | |
| static uint32_t | SPC_GetWakeUpValue (SPC_Type *base) |
| Gets back the WakeUp value. More... | |
HP Mode configuration | |
| static bool | SPC_CheckHPCfgSelected (SPC_Type *base) |
| Check if HP_CFG selected as active configuration register. More... | |
| static void | SPC_EnableHighPowerRequest (SPC_Type *base, bool enable) |
| Enable/disable high power request feature. More... | |
| static void | SPC_OverrideHighPowerRequest (SPC_Type *base, spc_hp_override_request_option_t opt) |
| Override high power request manually. More... | |
| static spc_core_ldo_voltage_level_t | SPC_GetHighPowerModeCoreLDOVDDVoltageLevel (SPC_Type *base) |
| Get voltage level of CORE LDO in high power mode. More... | |
| static spc_bandgap_mode_t | SPC_GetHighPowerModeBandgapMode (SPC_Type *base) |
| Get bandgap mode in high power mode. More... | |
| static uint32_t | SPC_GetHighPowerModeVoltageDetectStatus (SPC_Type *base) |
| Get enabled state of all voltage detectors. More... | |
| status_t | SPC_SetHighPowerModeBandgapModeConfig (SPC_Type *base, spc_bandgap_mode_t mode) |
| Set bandgap mode in high power mode. More... | |
| static void | SPC_EnableHighPowerModeCMPBandgapBuffer (SPC_Type *base, bool enable) |
| Enable/disable CMP buffer in high power mode. More... | |
| static void | SPC_DisableHighPowerModeVddCoreGlitchDetect (SPC_Type *base, bool disable) |
| Disable/enable VDD Core Glitch detect feature in high power mode. More... | |
| status_t | SPC_SetHighPowerModeCoreLDORegulatorConfig (SPC_Type *base, spc_hp_mode_core_ldo_option_t *option) |
| Configure CORE LDO regulator in high power mode. More... | |
| status_t | SPC_SetHighPowerModeSystemLDORegulatorConfig (SPC_Type *base, spc_hp_mode_sys_ldo_option_t *option) |
| Configure System LDO regulator in high power mode. More... | |
| status_t | SPC_SetHighPowerModeDCDCRegulatorConfig (SPC_Type *base, spc_hp_mode_dcdc_option_t *option) |
| Configure DCDC regulator in high power mode. More... | |
| status_t | SPC_SetHighPowerModeRegulatorsConfig (SPC_Type *base, spc_hp_mode_regulators_config_t *config) |
| Set configuration of regulators in high power mode. More... | |
| static void | SPC_EnableHighPowerModeCoreLowVoltageDetect (SPC_Type *base, bool enable) |
| Enable/disable low voltage detect for VDD_CORE in high power mode. More... | |
| static void | SPC_EnableHighPowerModeCoreHighVoltageDetect (SPC_Type *base, bool enable) |
| Enable/disable high voltage detect for VDD_CORE in high power mode. More... | |
| static void | SPC_EnableHighPowerModeSystemLowVoltageDetect (SPC_Type *base, bool enable) |
| Enable/disable low voltage detect for VDD_SYS in high power mode. More... | |
| static void | SPC_EnableHighPowerModeSystemHighVoltageDetect (SPC_Type *base, bool enable) |
| Enable/disable high voltage detect for VDD_SYS in high power mode. More... | |
| static void | SPC_EnableHighPowerModeIOLowVoltageDetect (SPC_Type *base, bool enable) |
| Enable/disable low voltage detect for VDD_IO_ABC in high power mode. More... | |
| static void | SPC_EnableHighPowerModeIOHighVoltageDetect (SPC_Type *base, bool enable) |
| Enable/disable high voltage detect for VDD_IO_ABC in high power mode. More... | |
Active Mode configuration. | |
| static spc_core_ldo_voltage_level_t | SPC_GetActiveModeCoreLDOVDDVoltageLevel (SPC_Type *base) |
| Gets CORE LDO VDD Regulator Voltage level. More... | |
| static spc_bandgap_mode_t | SPC_GetActiveModeBandgapMode (SPC_Type *base) |
| Gets the Bandgap mode in Active mode. More... | |
| static uint32_t | SPC_GetActiveModeVoltageDetectStatus (SPC_Type *base) |
| Gets all voltage detectors status in Active mode. More... | |
| void | SPC_SetActiveModeIntegratedPowerSwitchConfig (SPC_Type *base, const spc_intergrated_power_switch_config_t *config) |
| Configs Integrated power switch in active mode. More... | |
| status_t | SPC_SetActiveModeBandgapModeConfig (SPC_Type *base, spc_bandgap_mode_t mode) |
| Configs Bandgap mode in Active mode. More... | |
| static void | SPC_EnableActiveModeCMPBandgapBuffer (SPC_Type *base, bool enable) |
| Enables/Disable the CMP Bandgap Buffer in Active mode. More... | |
| static void | SPC_SetActiveModeVoltageTrimDelay (SPC_Type *base, uint16_t delay) |
| Sets the delay when the regulators change voltage level in Active mode. More... | |
| status_t | SPC_SetActiveModeRegulatorsConfig (SPC_Type *base, const spc_active_mode_regulators_config_t *config) |
| Configs regulators in Active mode. More... | |
| static void | SPC_DisableActiveModeVddCoreGlitchDetect (SPC_Type *base, bool disable) |
| Disable/Enable VDD Core Glitch Detect in Active mode. More... | |
Low Power mode configuration. | |
| void | SPC_SetLowPowerModeIntegratedPowerSwitchConfig (SPC_Type *base, const spc_intergrated_power_switch_config_t *config) |
| Configs Integrated power switch in Low Power mode. More... | |
| static spc_core_ldo_drive_strength_t | SPC_GetLowPowerCoreLDOVDDDriveStrength (SPC_Type *base) |
| Gets CORE LDO VDD Drive Strength for Low Power modes. More... | |
| static spc_core_ldo_voltage_level_t | SPC_GetLowPowerCoreLDOVDDVoltageLevel (SPC_Type *base) |
| Gets the CORE LDO VDD Regulator Voltage Level for Low Power modes. More... | |
| static spc_bandgap_mode_t | SPC_GetLowPowerModeBandgapMode (SPC_Type *base) |
| Gets the Bandgap mode in Low Power mode. More... | |
| static uint32_t | SPC_GetLowPowerModeVoltageDetectStatus (SPC_Type *base) |
| Gets the status of all voltage detectors in Low Power mode. More... | |
| static void | SPC_EnableLowPowerModeLowPowerIREF (SPC_Type *base, bool enable) |
| Enables/Disables Low Power IREF in low power modes. More... | |
| status_t | SPC_SetLowPowerModeBandgapmodeConfig (SPC_Type *base, spc_bandgap_mode_t mode) |
| Configs Bandgap mode in Low Power mode. More... | |
| static void | SPC_EnableLowPowerModeCMPBandgapBufferMode (SPC_Type *base, bool enable) |
| Enables/Disables CMP Bandgap Buffer. More... | |
| static void | SPC_EnableLowPowerModeCoreVDDInternalVoltageScaling (SPC_Type *base, bool enable) |
| Enables/Disables CORE VDD IVS(Internal Voltage Scaling) in low power modes. More... | |
| static void | SPC_SetLowPowerWakeUpDelay (SPC_Type *base, uint16_t delay) |
| Sets the delay when exit the low power modes. More... | |
| status_t | SPC_SetLowPowerModeRegulatorsConfig (SPC_Type *base, const spc_lowpower_mode_regulators_config_t *config) |
| Configs regulators in Low Power mode. More... | |
| static void | SPC_DisableLowPowerModeVddCoreGlitchDetect (SPC_Type *base, bool disable) |
| Disable/Enable VDD Core Glitch Detect in low power mode. More... | |
Voltage Detect Status. | |
| static uint8_t | SPC_GetVoltageDetectStatusFlag (SPC_Type *base) |
| Get Voltage Detect Status Flags. More... | |
| static void | SPC_ClearVoltageDetectStatusFlag (SPC_Type *base, uint8_t mask) |
| Clear Voltage Detect Status Flags. More... | |
Voltage Detect configuration for Core voltage domain. | |
| void | SPC_SetCoreVoltageDetectConfig (SPC_Type *base, const spc_core_voltage_detect_config_t *config) |
| Configs CORE voltage detect options. More... | |
| static void | SPC_LockCoreVoltageDetectResetSetting (SPC_Type *base) |
| Locks Core voltage detect reset setting. More... | |
| static void | SPC_UnlockCoreVoltageDetectResetSetting (SPC_Type *base) |
| Unlocks Core voltage detect reset setting. More... | |
| status_t | SPC_EnableActiveModeCoreHighVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the Core High Voltage Detector in Active mode. More... | |
| status_t | SPC_EnableActiveModeCoreLowVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the Core Low Voltage Detector in Active mode. More... | |
| status_t | SPC_EnableLowPowerModeCoreHighVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the Core High Voltage Detector in Low Power mode. More... | |
| status_t | SPC_EnableLowPowerModeCoreLowVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the Core Low Voltage Detector in Low Power mode. More... | |
Voltage detect configuration for System Voltage domain. | |
| void | SPC_SetSystemVDDLowVoltageLevel (SPC_Type *base, spc_low_voltage_level_select_t level) |
| Set system VDD Low-voltage level selection. More... | |
| void | SPC_SetSystemVoltageDetectConfig (SPC_Type *base, const spc_system_voltage_detect_config_t *config) |
| Configs SYS voltage detect options. More... | |
| static void | SPC_LockSystemVoltageDetectResetSetting (SPC_Type *base) |
| Lock System voltage detect reset setting. More... | |
| static void | SPC_UnlockSystemVoltageDetectResetSetting (SPC_Type *base) |
| Unlock System voltage detect reset setting. More... | |
| status_t | SPC_EnableActiveModeSystemHighVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the System High Voltage Detector in Active mode. More... | |
| status_t | SPC_EnableActiveModeSystemLowVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disable the System Low Voltage Detector in Active mode. More... | |
| status_t | SPC_EnableLowPowerModeSystemHighVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the System High Voltage Detector in Low Power mode. More... | |
| status_t | SPC_EnableLowPowerModeSystemLowVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the System Low Voltage Detector in Low Power mode. More... | |
Voltage detect configuration for IO voltage domain. | |
| void | SPC_SetIOVDDLowVoltageLevel (SPC_Type *base, spc_low_voltage_level_select_t level) |
| Set IO VDD Low-Voltage level selection. More... | |
| void | SPC_SetIOVoltageDetectConfig (SPC_Type *base, const spc_io_voltage_detect_config_t *config) |
| Configs IO voltage detect options. More... | |
| static void | SPC_LockIOVoltageDetectResetSetting (SPC_Type *base) |
| Lock IO Voltage detect reset setting. More... | |
| static void | SPC_UnlockIOVoltageDetectResetSetting (SPC_Type *base) |
| Unlock IO voltage detect reset setting. More... | |
| status_t | SPC_EnableActiveModeIOHighVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the IO High Voltage Detector in Active mode. More... | |
| status_t | SPC_EnableActiveModeIOLowVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the IO Low Voltage Detector in Active mode. More... | |
| status_t | SPC_EnableLowPowerModeIOHighVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the IO High Voltage Detector in Low Power mode. More... | |
| status_t | SPC_EnableLowPowerModeIOLowVoltageDetect (SPC_Type *base, bool enable) |
| Enables/Disables the IO Low Voltage Detector in Low Power mode. More... | |
External Voltage domains configuration. | |
| void | SPC_SetExternalVoltageDomainsConfig (SPC_Type *base, uint8_t lowPowerIsoMask, uint8_t IsoMask) |
| Configs external voltage domains. More... | |
| static uint8_t | SPC_GetExternalDomainsStatus (SPC_Type *base) |
| Gets External Domains status. More... | |
Set CORE LDO Regulator. | |
| static void | SPC_EnableCoreLDORegulator (SPC_Type *base, bool enable) |
| Enable/Disable Core LDO regulator. More... | |
| static void | SPC_PullDownCoreLDORegulator (SPC_Type *base, bool pulldown) |
| Enable/Disable the CORE LDO Regulator pull down in Deep Power Down. More... | |
| status_t | SPC_SetActiveModeCoreLDORegulatorConfig (SPC_Type *base, const spc_active_mode_core_ldo_option_t *option) |
| Configs Core LDO VDD Regulator in Active mode. More... | |
| status_t | SPC_SetLowPowerModeCoreLDORegulatorConfig (SPC_Type *base, const spc_lowpower_mode_core_ldo_option_t *option) |
| Configs CORE LDO Regulator in low power mode. More... | |
Set System LDO Regulator. | |
| static void | SPC_EnableSystemLDORegulator (SPC_Type *base, bool enable) |
| Enable/Disable System LDO regulator. More... | |
| static void | SPC_EnableSystemLDOSinkFeature (SPC_Type *base, bool sink) |
| Enable/Disable current sink feature of System LDO Regulator. More... | |
| status_t | SPC_SetActiveModeSystemLDORegulatorConfig (SPC_Type *base, const spc_active_mode_sys_ldo_option_t *option) |
| Configs System LDO VDD Regulator in Active mode. More... | |
| status_t | SPC_SetLowPowerModeSystemLDORegulatorConfig (SPC_Type *base, const spc_lowpower_mode_sys_ldo_option_t *option) |
| Configs System LDO regulator in low power modes. More... | |
Set DCDC Regulator. | |
| static void | SPC_EnableDCDCRegulator (SPC_Type *base, bool enable) |
| Enable/Disable DCDC Regulator. More... | |
| void | SPC_SetDCDCBurstConfig (SPC_Type *base, spc_dcdc_burst_config_t *config) |
| Config DCDC Burst options. More... | |
| void | SPC_SetDCDCRefreshCount (SPC_Type *base, uint16_t count) |
| Set the count value of the reference clock. More... | |
| status_t | SPC_SetActiveModeDCDCRegulatorConfig (SPC_Type *base, const spc_active_mode_dcdc_option_t *option) |
| Configs DCDC VDD Regulator in Active mode. More... | |
| status_t | SPC_SetLowPowerModeDCDCRegulatorConfig (SPC_Type *base, const spc_lowpower_mode_dcdc_option_t *option) |
| Configs DCDC VDD Regulator in Low power modes. More... | |
SRAM Control Interfaces. | |
| void | SPC_SetSRAMOperateVoltage (SPC_Type *base, spc_sram_operat_voltage_t voltage) |
| Set the SRAM operate voltage level. More... | |
| struct spc_lowpower_request_config_t |
Data Fields | |
| bool | enable |
| Low Power Request Output enable. More... | |
| spc_lowpower_request_pin_polarity_t | polarity |
| Low Power Request Output pin polarity select. More... | |
| spc_lowpower_request_output_override_t | override |
| Low Power Request Output Override. More... | |
| bool spc_lowpower_request_config_t::enable |
| spc_lowpower_request_pin_polarity_t spc_lowpower_request_config_t::polarity |
| spc_lowpower_request_output_override_t spc_lowpower_request_config_t::override |
| struct spc_intergrated_power_switch_config_t |
Data Fields | |
| bool | wakeup |
| Assert an output pin to un-gate the integrated power switch. More... | |
| bool | sleep |
| Assert an output pin to power gate the intergrated power switch. More... | |
| bool spc_intergrated_power_switch_config_t::wakeup |
| bool spc_intergrated_power_switch_config_t::sleep |
| struct spc_active_mode_core_ldo_option_t |
Data Fields | |
| spc_core_ldo_voltage_level_t | CoreLDOVoltage |
| Core LDO Regulator Voltage Level selection in Active mode. More... | |
| spc_core_ldo_drive_strength_t | CoreLDODriveStrength |
| Core LDO Regulator Drive Strength selection in Active mode. | |
| spc_core_ldo_voltage_level_t spc_active_mode_core_ldo_option_t::CoreLDOVoltage |
| struct spc_active_mode_sys_ldo_option_t |
Data Fields | |
| spc_sys_ldo_voltage_level_t | SysLDOVoltage |
| System LDO Regulator Voltage Level selection in Active mode. More... | |
| spc_sys_ldo_drive_strength_t | SysLDODriveStrength |
| System LDO Regulator Drive Strength selection in Active mode. More... | |
| spc_sys_ldo_voltage_level_t spc_active_mode_sys_ldo_option_t::SysLDOVoltage |
| spc_sys_ldo_drive_strength_t spc_active_mode_sys_ldo_option_t::SysLDODriveStrength |
| struct spc_active_mode_dcdc_option_t |
Data Fields | |
| spc_dcdc_voltage_level_t | DCDCVoltage |
| DCDC Regulator Voltage Level selection in Active mode. More... | |
| spc_dcdc_drive_strength_t | DCDCDriveStrength |
| DCDC VDD Regulator Drive Strength selection in Active mode. More... | |
| spc_dcdc_voltage_level_t spc_active_mode_dcdc_option_t::DCDCVoltage |
| spc_dcdc_drive_strength_t spc_active_mode_dcdc_option_t::DCDCDriveStrength |
| struct spc_lowpower_mode_core_ldo_option_t |
Data Fields | |
| spc_core_ldo_voltage_level_t | CoreLDOVoltage |
| Core LDO Regulator Voltage Level selection in Low Power mode. More... | |
| spc_core_ldo_drive_strength_t | CoreLDODriveStrength |
| Core LDO Regulator Drive Strength selection in Low Power mode. | |
| spc_core_ldo_voltage_level_t spc_lowpower_mode_core_ldo_option_t::CoreLDOVoltage |
| struct spc_lowpower_mode_sys_ldo_option_t |
Data Fields | |
| spc_sys_ldo_drive_strength_t | SysLDODriveStrength |
| System LDO Regulator Drive Strength selection in Low Power mode. More... | |
| spc_sys_ldo_drive_strength_t spc_lowpower_mode_sys_ldo_option_t::SysLDODriveStrength |
| struct spc_lowpower_mode_dcdc_option_t |
Data Fields | |
| spc_dcdc_voltage_level_t | DCDCVoltage |
| DCDC Regulator Voltage Level selection in Low Power mode. More... | |
| spc_dcdc_drive_strength_t | DCDCDriveStrength |
| DCDC VDD Regulator Drive Strength selection in Low Power mode. More... | |
| spc_dcdc_voltage_level_t spc_lowpower_mode_dcdc_option_t::DCDCVoltage |
| spc_dcdc_drive_strength_t spc_lowpower_mode_dcdc_option_t::DCDCDriveStrength |
| struct spc_voltage_detect_option_t |
Data Fields | |
| bool | HVDInterruptEnable |
| CORE/SYS/IO VDD High Voltage Detect interrupt enable. More... | |
| bool | HVDResetEnable |
| CORE/SYS/IO VDD High Voltage Detect reset enable. More... | |
| bool | LVDInterruptEnable |
| CORE/SYS/IO VDD Low Voltage Detect interrupt enable. More... | |
| bool | LVDResetEnable |
| CORE/SYS/IO VDD Low Voltage Detect reset enable. More... | |
| bool spc_voltage_detect_option_t::HVDInterruptEnable |
| bool spc_voltage_detect_option_t::HVDResetEnable |
| bool spc_voltage_detect_option_t::LVDInterruptEnable |
| bool spc_voltage_detect_option_t::LVDResetEnable |
| struct spc_dcdc_burst_config_t |
Data Fields | |
| bool | sofwareBurstRequest |
| Enable/Disable DCDC Software Burst Request. More... | |
| bool | externalBurstRequest |
| Enable/Disable DCDC External Burst Request. More... | |
| bool | stabilizeBurstFreq |
| Enable/Disable DCDC frequency stabilization. More... | |
| uint8_t | freq |
| The frequency of the current burst. More... | |
| bool spc_dcdc_burst_config_t::sofwareBurstRequest |
| bool spc_dcdc_burst_config_t::externalBurstRequest |
| bool spc_dcdc_burst_config_t::stabilizeBurstFreq |
| uint8_t spc_dcdc_burst_config_t::freq |
| struct spc_core_voltage_detect_config_t |
Data Fields | |
| spc_voltage_detect_option_t | option |
| Core VDD Voltage Detect option. More... | |
| spc_voltage_detect_option_t spc_core_voltage_detect_config_t::option |
| struct spc_system_voltage_detect_config_t |
Data Fields | |
| spc_voltage_detect_option_t | option |
| System VDD Voltage Detect option. More... | |
| spc_low_voltage_level_select_t | level |
| spc_voltage_detect_option_t spc_system_voltage_detect_config_t::option |
| spc_low_voltage_level_select_t spc_system_voltage_detect_config_t::level |
| struct spc_io_voltage_detect_config_t |
Data Fields | |
| spc_voltage_detect_option_t | option |
| IO VDD Voltage Detect option. More... | |
| spc_low_voltage_level_select_t | level |
| IO VDD Low-voltage level selection. More... | |
| spc_voltage_detect_option_t spc_io_voltage_detect_config_t::option |
| spc_low_voltage_level_select_t spc_io_voltage_detect_config_t::level |
| struct spc_active_mode_regulators_config_t |
| struct spc_lowpower_mode_regulators_config_t |
| #define FSL_SPC_DRIVER_VERSION (MAKE_VERSION(2, 5, 0)) |
| anonymous enum |
| enum _spc_power_domains |
| enum spc_bandgap_mode_t |
| uint8_t SPC_GetPeriphIOIsolationStatus | ( | SPC_Type * | base | ) |
This function gets the status which indicates whether certain peripheral and the IO pads are in a latched state as a result of having been in POWERDOWN mode.
| base | SPC peripheral base address. |
|
inlinestatic |
This function clears peripherals and I/O pads isolation flags for each power domains. After recovering from the POWERDOWN mode, user must invoke this function to release the I/O pads and certain peripherals to their normal run mode state. Before invoking this function, user must restore chip configuration in particular pin configuration for enabled WUU wakeup pins.
| base | SPC peripheral base address. |
|
inlinestatic |
This function gets SPC busy status flag. When SPC executing any type of power mode transition in ACTIVE mode or any of the SOC low power mode, the SPC busy status flag is set and this function returns true. When changing CORE LDO voltage level and DCDC voltage level in ACTIVE mode, the SPC busy status flag is set and this function return true.
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| spc_power_domain_low_power_mode_t SPC_GetPowerDomainLowPowerMode | ( | SPC_Type * | base, |
| spc_power_domain_id_t | powerDomainId | ||
| ) |
| base | SPC peripheral base address. |
| powerDomainId | Power Domain Id, please refer to spc_power_domain_id_t. |
|
inlinestatic |
| base | SPC peripheral base address. |
| powerDomainId | Power Domain Id, please refer to spc_power_domain_id_t. |
|
inlinestatic |
| base | SPC peripheral base address. |
| powerDomainId | Power Domain Id, please refer to spc_power_domain_id_t. |
| void SPC_SetLowPowerRequestConfig | ( | SPC_Type * | base, |
| const spc_lowpower_request_config_t * | config | ||
| ) |
This function config the low power request output pin
| base | SPC peripheral base address. |
| config | Pointer the spc_lowpower_request_config_t structure. |
|
inlinestatic |
| base | SPC peripheral base address. |
| gate | Used to gate/ungate power switch
|
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| data | The address of the function/image to be executed if wakeup from low power mode. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| false | ACTIVE_CFG selected as the active configuration register. |
| true | HP_CFG selected as the active configuration register. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to specify enable/disable the high power request feature:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| opt | Specify the option of high power override request, please refer to spc_hp_override_request_option_t. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| status_t SPC_SetHighPowerModeBandgapModeConfig | ( | SPC_Type * | base, |
| spc_bandgap_mode_t | mode | ||
| ) |
| base | SPC peripheral base address. |
| mode | Specify the bandgap mode in high power mode. |
| kStatus_SPC_BandgapModeWrong | The Bandgap can not be disabled in high power mode. |
| kStatus_Success | Config Bandgap mode in high power mode successful. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable CMP buffer:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| disable | Used to disable/enable VDD Core Glitch detect feature:
|
| status_t SPC_SetHighPowerModeCoreLDORegulatorConfig | ( | SPC_Type * | base, |
| spc_hp_mode_core_ldo_option_t * | option | ||
| ) |
| base | SPC peripheral base address. |
| option | Pointer to the CORE LDO regulator configuration, please refer to spc_hp_mode_core_ldo_option_t. |
| kStatus_Success | Config Core LDO regulator in High power mode successful. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_CORELDOLowDriveStrengthIgnore | If any voltage detect enabled, core_ldo's drive strength can not set to low. |
| kStatus_SPC_CORELDOVoltageWrong | The selected voltage level in high power mode is not allowed. |
| status_t SPC_SetHighPowerModeSystemLDORegulatorConfig | ( | SPC_Type * | base, |
| spc_hp_mode_sys_ldo_option_t * | option | ||
| ) |
| base | SPC peripheral base address. |
| option | Pointer to the SYSTEM LDO regulator configuration, please refer to spc_hp_mode_sys_ldo_option_t. |
| kStatus_Success | Config System LDO regulator in Active power mode successful. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_SYSLDOOverDriveVoltageFail | Fail to regulator to Over Drive Voltage. |
| kStatus_SPC_SYSLDOLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
| status_t SPC_SetHighPowerModeDCDCRegulatorConfig | ( | SPC_Type * | base, |
| spc_hp_mode_dcdc_option_t * | option | ||
| ) |
| base | SPC peripheral base address. |
| option | Pointer to the DCDC regulator configuration, please refer to spc_hp_mode_dcdc_option_t. |
| kStatus_Success | Config DCDC regulator in Active power mode successful. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_DCDCLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
| status_t SPC_SetHighPowerModeRegulatorsConfig | ( | SPC_Type * | base, |
| spc_hp_mode_regulators_config_t * | config | ||
| ) |
| base | SPC peripheral base address. |
| config | Pointer to the regulator configuration, please refer to spc_hp_mode_regulators_config_t. |
| kStatus_Success | Config regulators in High power mode successful. |
| kStatus_SPC_BandgapModeWrong | The bandgap mode setting in high power mode is wrong. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_CORELDOVoltageWrong | The selected voltage level in high mode is not allowed. |
| kStatus_SPC_SYSLDOOverDriveVoltageFail | Fail to regulator to Over Drive Voltage. |
| kStatus_SPC_SYSLDOLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
| kStatus_SPC_DCDCLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable low voltage detect feature for VDD_CORE in high power mode:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable high voltage detect feature for VDD_CORE in high power mode:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable low voltage detect feature for VDD_SYS in high power mode:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable high voltage detect feature for VDD_SYS in high power mode:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable low voltage detect feature for VDD_IO_ABC in high power mode:
|
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Used to enable/disable high voltage detect feature for VDD_IO_ABC in high power mode:
|
|
inlinestatic |
This function returns the voltage level of CORE LDO Regulator in Active mode.
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| void SPC_SetActiveModeIntegratedPowerSwitchConfig | ( | SPC_Type * | base, |
| const spc_intergrated_power_switch_config_t * | config | ||
| ) |
| base | SPC peripheral base address. |
| config | Pointer to spc_intergrated_power_switch_config_t pointer. |
| status_t SPC_SetActiveModeBandgapModeConfig | ( | SPC_Type * | base, |
| spc_bandgap_mode_t | mode | ||
| ) |
| base | SPC peripheral base address. |
| mode | The Bandgap mode be selected. |
| kStatus_SPC_BandgapModeWrong | The Bandgap can not be disabled in active mode. |
| kStatus_Success | Config Bandgap mode in Active power mode successful. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Enable/Disable CMP Bandgap buffer. true - Enable Buffer Stored Reference voltage to CMP. false - Disable Buffer Stored Reference voltage to CMP. |
|
inlinestatic |
| base | SPC peripheral base address. |
| delay | The number of SPC timer clock cycles. |
| status_t SPC_SetActiveModeRegulatorsConfig | ( | SPC_Type * | base, |
| const spc_active_mode_regulators_config_t * | config | ||
| ) |
This function provides the method to config all on-chip regulators in active mode.
| base | SPC peripheral base address. |
| config | Pointer to spc_active_mode_regulators_config_t structure. |
| kStatus_Success | Config regulators in Active power mode successful. |
| kStatus_SPC_BandgapModeWrong | The bandgap mode setting in Active mode is wrong. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_CORELDOVoltageWrong | The selected voltage level in active mode is not allowed. |
| kStatus_SPC_SYSLDOOverDriveVoltageFail | Fail to regulator to Over Drive Voltage. |
| kStatus_SPC_SYSLDOLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
| kStatus_SPC_DCDCLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
|
inlinestatic |
| base | SPC peripheral base address. |
| disable | Used to disable/enable VDD Core Glitch detect feature.
|
| void SPC_SetLowPowerModeIntegratedPowerSwitchConfig | ( | SPC_Type * | base, |
| const spc_intergrated_power_switch_config_t * | config | ||
| ) |
| base | SPC peripheral base address. |
| config | Pointer to spc_intergrated_power_switch_config_t pointer. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
This function enables/disables Low Power IREF. Low Power IREF can only get disabled in Deep power down mode. In other low power modes, the Low Power IREF is always enabled.
| base | SPC peripheral base address. |
| enable | Enable/Disable Low Power IREF. true - Enable Low Power IREF for Low Power modes. false - Disable Low Power IREF for Deep Power Down mode. |
| status_t SPC_SetLowPowerModeBandgapmodeConfig | ( | SPC_Type * | base, |
| spc_bandgap_mode_t | mode | ||
| ) |
This function configs Bandgap mode in Low Power mode. IF user want to disable Bandgap while keeping any of the Regulator in Normal Driver Strength or if any of the High voltage detectors/Low voltage detectors are kept enabled, the Bandgap mode will be set as Bandgap Enabled with Buffer Disabled.
| base | SPC peripheral base address. |
| mode | The Bandgap mode be selected. |
| kStatus_SPC_BandgapModeWrong | The bandgap mode setting in Low Power mode is wrong. |
| kStatus_Success | Config Bandgap mode in Low Power power mode successful. |
|
inlinestatic |
This function gates CMP bandgap buffer. CMP bandgap buffer is automatically disabled and turned off in Deep Power Down mode.
| base | SPC peripheral base address. |
| enable | Enable/Disable CMP Bandgap buffer. true - Enable Buffer Stored Reference Voltage to CMP. false - Disable Buffer Stored Reference Voltage to CMP. |
|
inlinestatic |
This function gates CORE VDD IVS. When enabled, the IVS regulator will scale the external input CORE VDD to a lower voltage level to reduce internal leakage. IVS is invalid in Sleep or Deep power down mode.
| base | SPC peripheral base address. |
| enable | Enable/Disable IVS. true - enable CORE VDD IVS in Deep Sleep mode or Power Down mode. false - disable CORE VDD IVS in Deep Sleep mode or Power Down mode. |
|
inlinestatic |
| base | SPC peripheral base address. |
| delay | The number of SPC timer clock cycles that the SPC waits on exit from low power modes. |
| status_t SPC_SetLowPowerModeRegulatorsConfig | ( | SPC_Type * | base, |
| const spc_lowpower_mode_regulators_config_t * | config | ||
| ) |
This function provides the method to config all on-chip regulators in Low Power mode.
| base | SPC peripheral base address. |
| config | Pointer to spc_lowpower_mode_regulators_config_t structure. |
| kStatus_Success | Config regulators in Low power mode successful. |
| kStatus_SPC_BandgapModeWrong | The bandgap mode setting in Low Power mode is wrong. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_CORELDOVoltageWrong | The selected voltage level is wrong. |
| kStatus_SPC_CORELDOLowDriveStrengthIgnore | Set driver strength to low will be ignored. |
| #kStatus_SPC_CORELDOVoltageSetFail. | Fail to change Core LDO voltage level. |
| kStatus_SPC_SYSLDOLowDriveStrengthIgnore | Set driver strength to low will be ignored. |
| kStatus_SPC_DCDCPulseRefreshModeIgnore | Set driver strength to Pulse Refresh mode will be ignored. |
| kStatus_SPC_DCDCLowDriveStrengthIgnore | Set driver strength to Low Drive Strength will be ignored. |
|
inlinestatic |
| base | SPC peripheral base address. |
| disable | Used to disable/enable VDD Core Glitch detect feature.
|
|
inlinestatic |
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| mask | The mask of the voltage detect status flags. See _spc_voltage_detect_flags for details. |
| void SPC_SetCoreVoltageDetectConfig | ( | SPC_Type * | base, |
| const spc_core_voltage_detect_config_t * | config | ||
| ) |
This function config CORE voltage detect options.
| base | SPC peripheral base address. |
| config | Pointer to spc_core_voltage_detect_config_t structure. |
|
inlinestatic |
This function locks core voltage detect reset setting. After invoking this function any configuration of Core voltage detect reset will be ignored.
| base | SPC peripheral base address. |
|
inlinestatic |
This function unlocks core voltage detect reset setting. If locks the Core voltage detect reset setting, invoking this function to unlock.
| base | SPC peripheral base address. |
| status_t SPC_EnableActiveModeCoreHighVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable Core HVD. true - Enable Core High voltage detector in active mode. false - Disable Core High voltage detector in active mode. |
| kStatus_Success | Enable/Disable Core High Voltage Detect successfully. |
| status_t SPC_EnableActiveModeCoreLowVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable Core LVD. true - Enable Core Low voltage detector in active mode. false - Disable Core Low voltage detector in active mode. |
| kStatus_Success | Enable/Disable Core Low Voltage Detect successfully. |
| status_t SPC_EnableLowPowerModeCoreHighVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
This function enables/disables the Core High Voltage Detector. If enabled the Core High Voltage detector. The Bandgap mode in low power mode must be programmed so that Bandgap is enabled.
| base | SPC peripheral base address. |
| enable | Enable/Disable Core HVD. true - Enable Core High voltage detector in low power mode. false - Disable Core High voltage detector in low power mode. |
| kStatus_Success | Enable/Disable Core High Voltage Detect in low power mode successfully. |
| status_t SPC_EnableLowPowerModeCoreLowVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
This function enables/disables the Core Low Voltage Detector. If enabled the Core Low Voltage detector. The Bandgap mode in low power mode must be programmed so that Bandgap is enabled.
| base | SPC peripheral base address. |
| enable | Enable/Disable Core HVD. true - Enable Core Low voltage detector in low power mode. false - Disable Core Low voltage detector in low power mode. |
| kStatus_Success | Enable/Disable Core Low Voltage Detect in low power mode successfully. |
| void SPC_SetSystemVDDLowVoltageLevel | ( | SPC_Type * | base, |
| spc_low_voltage_level_select_t | level | ||
| ) |
This function selects the system VDD low-voltage level. Changing system VDD low-voltage level must be done after disabling the System VDD low voltage reset and interrupt.
| base | SPC peripheral base address. |
| level | System VDD Low-Voltage level selection. |
| void SPC_SetSystemVoltageDetectConfig | ( | SPC_Type * | base, |
| const spc_system_voltage_detect_config_t * | config | ||
| ) |
This function config SYS voltage detect options.
| base | SPC peripheral base address. |
| config | Pointer to spc_system_voltage_detect_config_t structure. |
|
inlinestatic |
This function locks system voltage detect reset setting. After invoking this function any configuration of System Voltage detect reset will be ignored.
| base | SPC peripheral base address. |
|
inlinestatic |
This function unlocks system voltage detect reset setting. If locks the System voltage detect reset setting, invoking this function to unlock.
| base | SPC peripheral base address. |
| status_t SPC_EnableActiveModeSystemHighVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable System HVD. true - Enable System High voltage detector in active mode. false - Disable System High voltage detector in active mode. |
| kStatus_Success | Enable/Disable System High Voltage Detect successfully. |
| status_t SPC_EnableActiveModeSystemLowVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable System LVD. true - Enable System Low voltage detector in active mode. false - Disable System Low voltage detector in active mode. |
| kStatus_Success | Enable/Disable the System Low Voltage Detect successfully. |
| status_t SPC_EnableLowPowerModeSystemHighVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable System HVD. true - Enable System High voltage detector in low power mode. false - Disable System High voltage detector in low power mode. |
| kStatus_Success | Enable/Disable System High Voltage Detect in low power mode successfully. |
| status_t SPC_EnableLowPowerModeSystemLowVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable System HVD. true - Enable System Low voltage detector in low power mode. false - Disable System Low voltage detector in low power mode. |
| kStatus_Success | Enables System Low Voltage Detect in low power mode successfully. |
| void SPC_SetIOVDDLowVoltageLevel | ( | SPC_Type * | base, |
| spc_low_voltage_level_select_t | level | ||
| ) |
This function selects the IO VDD Low-voltage level. Changing IO VDD low-voltage level must be done after disabling the IO VDD low voltage reset and interrupt.
| base | SPC peripheral base address. |
| level | IO VDD Low-voltage level selection. |
| void SPC_SetIOVoltageDetectConfig | ( | SPC_Type * | base, |
| const spc_io_voltage_detect_config_t * | config | ||
| ) |
This function config IO voltage detect options.
| base | SPC peripheral base address. |
| config | Pointer to spc_voltage_detect_config_t structure. |
|
inlinestatic |
This function locks IO voltage detect reset setting. After invoking this function any configuration of system voltage detect reset will be ignored.
| base | SPC peripheral base address. |
|
inlinestatic |
This function unlocks IO voltage detect reset setting. If locks the IO voltage detect reset setting, invoking this function to unlock.
| base | SPC peripheral base address. |
| status_t SPC_EnableActiveModeIOHighVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable IO HVD. true - Enable IO High voltage detector in active mode. false - Disable IO High voltage detector in active mode. |
| kStatus_Success | Enable/Disable IO High Voltage Detect successfully. |
| status_t SPC_EnableActiveModeIOLowVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable IO LVD. true - Enable IO Low voltage detector in active mode. false - Disable IO Low voltage detector in active mode. |
| kStatus_Success | Enable IO Low Voltage Detect successfully. |
| status_t SPC_EnableLowPowerModeIOHighVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable IO HVD. true - Enable IO High voltage detector in low power mode. false - Disable IO High voltage detector in low power mode. |
| kStatus_Success | Enable IO High Voltage Detect in low power mode successfully. |
| status_t SPC_EnableLowPowerModeIOLowVoltageDetect | ( | SPC_Type * | base, |
| bool | enable | ||
| ) |
| base | SPC peripheral base address. |
| enable | Enable/Disable IO LVD. true - Enable IO Low voltage detector in low power mode. false - Disable IO Low voltage detector in low power mode. |
| kStatus_Success | Enable/Disable IO Low Voltage Detect in low power mode successfully. |
| void SPC_SetExternalVoltageDomainsConfig | ( | SPC_Type * | base, |
| uint8_t | lowPowerIsoMask, | ||
| uint8_t | IsoMask | ||
| ) |
This function configs external voltage domains isolation.
| base | SPC peripheral base address. |
| lowPowerIsoMask | The mask of external domains isolate enable during low power mode. Please read the Reference Manual for the Bitmap. |
| IsoMask | The mask of external domains isolate. Please read the Reference Manual for the Bitmap. |
|
inlinestatic |
This function configs external voltage domains status.
| base | SPC peripheral base address. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Enable/Disable CORE LDO Regulator. true - Enable CORE LDO Regulator. false - Disable CORE LDO Regulator. |
|
inlinestatic |
| base | SPC peripheral base address. |
| pulldown | Enable/Disable CORE LDO pulldown in Deep Power Down mode. true - CORE LDO Regulator will discharge in Deep Power Down mode. false - CORE LDO Regulator will not discharge in Deep Power Down mode. |
| status_t SPC_SetActiveModeCoreLDORegulatorConfig | ( | SPC_Type * | base, |
| const spc_active_mode_core_ldo_option_t * | option | ||
| ) |
| base | SPC peripheral base address. |
| option | Pointer to the spc_active_mode_core_ldo_option_t structure. |
| kStatus_Success | Config Core LDO regulator in Active power mode successful. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_CORELDOLowDriveStrengthIgnore | If any voltage detect enabled, core_ldo's drive strength can not set to low. |
| kStatus_SPC_CORELDOVoltageWrong | The selected voltage level in active mode is not allowed. |
| status_t SPC_SetLowPowerModeCoreLDORegulatorConfig | ( | SPC_Type * | base, |
| const spc_lowpower_mode_core_ldo_option_t * | option | ||
| ) |
This function configs CORE LDO Regulator in Low Power mode. If CORE LDO VDD Drive Strength is set to Normal, the CORE LDO VDD regulator voltage level in Active mode must be equal to the voltage level in Low power mode. And the Bandgap must be programmed to select bandgap enabled. Core VDD voltage levels for the Core LDO low power regulator can only be changed when the CORE LDO Drive Strength set as Normal.
| base | SPC peripheral base address. |
| option | Pointer to the spc_lowpower_mode_core_ldo_option_t structure. |
| kStatus_Success | Config Core LDO regulator in power mode successfully. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_CORELDOLowDriveStrengthIgnore | Set driver strength to low will be ignored. |
| #kStatus_SPC_CORELDOVoltageSetFail. | Fail to change Core LDO voltage level. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Enable/Disable System LDO Regulator. true - Enable System LDO Regulator. false - Disable System LDO Regulator. |
|
inlinestatic |
| base | SPC peripheral base address. |
| sink | Enable/Disable current sink feature. true - Enable current sink feature of System LDO Regulator. false - Disable current sink feature of System LDO Regulator. |
| status_t SPC_SetActiveModeSystemLDORegulatorConfig | ( | SPC_Type * | base, |
| const spc_active_mode_sys_ldo_option_t * | option | ||
| ) |
This function configs System LDO VDD Regulator in Active mode. If System LDO VDD Drive Strength is set to Normal, the Bandgap mode in Active mode must be programmed to a value that enables the bandgap. If any voltage detects are kept enabled, configuration to set System LDO VDD drive strength to low will be ignored. If select System LDO VDD Regulator voltage level to Over Drive Voltage, the Drive Strength of System LDO VDD Regulator must be set to Normal otherwise the regulator Drive Strength will be forced to Normal. If select System LDO VDD Regulator voltage level to Over Drive Voltage, the High voltage detect must be disabled. Otherwise it will be fail to regulator to Over Drive Voltage.
| base | SPC peripheral base address. |
| option | Pointer to the spc_active_mode_sys_ldo_option_t structure. |
| kStatus_Success | Config System LDO regulator in Active power mode successful. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_SYSLDOOverDriveVoltageFail | Fail to regulator to Over Drive Voltage. |
| kStatus_SPC_SYSLDOLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
| status_t SPC_SetLowPowerModeSystemLDORegulatorConfig | ( | SPC_Type * | base, |
| const spc_lowpower_mode_sys_ldo_option_t * | option | ||
| ) |
This function configs System LDO regulator in low power modes. If System LDO VDD Regulator Drive strength is set to normal, bandgap mode in low power mode must be programmed to a value that enables the Bandgap. If any High voltage detectors or Low Voltage detectors are kept enabled, configuration to set System LDO Regulator drive strength as Low will be ignored.
| base | SPC peripheral base address. |
| option | Pointer to spc_lowpower_mode_sys_ldo_option_t structure. |
| kStatus_Success | Config System LDO regulator in Low Power Mode successfully. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_SYSLDOLowDriveStrengthIgnore | Set driver strength to low will be ignored. |
|
inlinestatic |
| base | SPC peripheral base address. |
| enable | Enable/Disable DCDC Regulator. true - Enable DCDC Regulator. false - Disable DCDC Regulator. |
| void SPC_SetDCDCBurstConfig | ( | SPC_Type * | base, |
| spc_dcdc_burst_config_t * | config | ||
| ) |
| base | SPC peripheral base address. |
| config | Pointer to spc_dcdc_burst_config_t structure. |
| void SPC_SetDCDCRefreshCount | ( | SPC_Type * | base, |
| uint16_t | count | ||
| ) |
This function set the count value of the reference clock to control the frequency of dcdc refresh when dcdc is configured in Pulse Refresh mode.
| base | SPC peripheral base address. |
| count | The count value, 16 bit width. |
| status_t SPC_SetActiveModeDCDCRegulatorConfig | ( | SPC_Type * | base, |
| const spc_active_mode_dcdc_option_t * | option | ||
| ) |
This function configs DCDC VDD Regulator in Active mode. If DCDDC VDD Drive Strength is set to Normal, the Bandgap mode in Active mode must be programmed to a value that enable the bandgap. If any voltage detects are kept enabled, configuration to set DCDC VDD drive strength to low will be ignored. When switching DCDC from low drive strength to Normal driver strength, make sure the DCDC high VDD LVL setting to the same level that was set prior to switching the DCDC to low drive strength.
| base | SPC peripheral base address. |
| option | Pointer to the spc_active_mode_dcdc_option_t structure. |
| kStatus_Success | Config DCDC regulator in Active power mode successful. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_DCDCLowDriveStrengthIgnore | Set driver strength to Low will be ignored. |
| status_t SPC_SetLowPowerModeDCDCRegulatorConfig | ( | SPC_Type * | base, |
| const spc_lowpower_mode_dcdc_option_t * | option | ||
| ) |
This function configs DCDC VDD Regulator in Low Power modes. If DCDC VDD Drive Strength is set to Normal, the Bandgap mode in Low Power mode must be programmed to a value that enables the Bandgap. If any of voltage detectors are kept enabled, configuration to set DCDC VDD Drive Strength to Low or Pulse mode will be ignored. In Deep Power Down mode, DCDC regulator is always turned off.
| base | SPC peripheral base address. |
| option | Pointer to the spc_lowpower_mode_dcdc_option_t structure. |
| kStatus_Success | Config DCDC regulator in low power mode successfully. |
| kStatus_SPC_Busy | The SPC instance is busy to execute any type of power mode transition. |
| kStatus_SPC_DCDCPulseRefreshModeIgnore | Set driver strength to Pulse Refresh mode will be ignored. |
| kStatus_SPC_DCDCLowDriveStrengthIgnore | Set driver strength to Low Drive Strength will be ignored. |
| void SPC_SetSRAMOperateVoltage | ( | SPC_Type * | base, |
| spc_sram_operat_voltage_t | voltage | ||
| ) |
| base | SPC peripheral base address. |
| voltage | Target SRAM operate voltage level, please refer to spc_sram_operat_voltage_t. |