S32 SDK
smc_hal.h File Reference
#include "device_registers.h"
#include "status.h"
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  power_manager_user_config_t
 Power mode user configuration structure. More...
 
struct  smc_power_mode_protection_config_t
 Power mode protection configuration Implements smc_power_mode_protection_config_t_Class. More...
 
struct  smc_power_mode_config_t
 Power mode control configuration used for calling the SMC_SYS_SetPowerMode API Implements smc_power_mode_config_t_Class. More...
 
struct  smc_version_info_t
 SMC module version number Implements smc_version_info_t_Class. More...
 

Enumerations

enum  power_manager_modes_t {
  POWER_MANAGER_HSRUN, POWER_MANAGER_RUN, POWER_MANAGER_VLPR, POWER_MANAGER_STOP,
  POWER_MANAGER_VLPS, POWER_MANAGER_STOP1, POWER_MANAGER_STOP2, POWER_MANAGER_MAX
}
 Power modes enumeration. More...
 
enum  power_mode_stat_t {
  STAT_RUN = 0x01, STAT_STOP = 0x02, STAT_VLPR = 0x04, STAT_VLPW = 0x08,
  STAT_VLPS = 0x10, STAT_HSRUN = 0x80, STAT_INVALID = 0xFF
}
 Power Modes in PMSTAT Implements power_mode_stat_t_Class. More...
 
enum  power_modes_protect_t { ALLOW_HSRUN, ALLOW_VLP, ALLOW_MAX }
 Power Modes Protection Implements power_modes_protect_t_Class. More...
 
enum  smc_run_mode_t { SMC_RUN, SMC_RESERVED_RUN, SMC_VLPR, SMC_HSRUN }
 Run mode definition Implements smc_run_mode_t_Class. More...
 
enum  smc_stop_mode_t { SMC_STOP = 0U, SMC_RESERVED_STOP1 = 1U, SMC_VLPS = 2U }
 Stop mode definition Implements smc_stop_mode_t_Class. More...
 
enum  smc_stop_option_t { SMC_STOP_RESERVED = 0x00, SMC_STOP1 = 0x01, SMC_STOP2 = 0x02 }
 STOP option Implements smc_stop_option_t_Class. More...
 

Functions

System mode controller APIs
void SMC_HAL_GetVersion (const SMC_Type *const baseAddr, smc_version_info_t *const versionInfo)
 Get the version of the SMC module. More...
 
status_t SMC_HAL_SetPowerMode (SMC_Type *const baseAddr, const smc_power_mode_config_t *const powerModeConfig)
 Configures the power mode. More...
 
void SMC_HAL_SetProtectionMode (SMC_Type *const baseAddr, const smc_power_mode_protection_config_t *const protectConfig)
 Configures all power mode protection settings. More...
 
bool SMC_HAL_GetProtectionMode (const SMC_Type *const baseAddr, const power_modes_protect_t protect)
 Gets the the current power mode protection setting. More...
 
static void SMC_HAL_SetRunModeControl (SMC_Type *const baseAddr, const smc_run_mode_t runMode)
 Configures the the RUN mode control setting. More...
 
static smc_run_mode_t SMC_HAL_GetRunModeControl (const SMC_Type *const baseAddr)
 Gets the current RUN mode configuration setting. More...
 
static void SMC_HAL_SetStopModeControl (SMC_Type *const baseAddr, const smc_stop_mode_t stopMode)
 Configures the STOP mode control setting. More...
 
static smc_stop_mode_t SMC_HAL_GetVlpsaModeControl (const SMC_Type *const baseAddr)
 Checks whether the last very low power stop sequence has been aborted. More...
 
static smc_stop_mode_t SMC_HAL_GetStopModeControl (const SMC_Type *const baseAddr)
 Gets the current STOP mode control settings. More...
 
static void SMC_HAL_SetStopOption (SMC_Type *const baseAddr, const smc_stop_option_t option)
 Configures the STOPO (Stop Option). More...
 
static smc_stop_option_t SMC_HAL_GetStopOption (const SMC_Type *const baseAddr)
 Gets the configuration of the STOPO option. More...
 
static power_mode_stat_t SMC_HAL_GetPowerModeStatus (const SMC_Type *const baseAddr)
 Gets the current power mode stat. More...