mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 17:44:19 +00:00

This patch mainly initializes the SPM and provides common APIs for SPM to enable the use of its various features. Signed-off-by: Wenzhen Yu <wenzhen.yu@mediatek.com> Change-Id: I9facb6bf9962bb2d5fcacd945846bfaeb4c87a55
100 lines
2.6 KiB
C
100 lines
2.6 KiB
C
/*
|
|
* Copyright (c) 2025, Mediatek Inc. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef MT_SPM_SMC_H
|
|
#define MT_SPM_SMC_H
|
|
|
|
/*
|
|
* SPM dispatcher's smc id definition
|
|
* Please adding custom smc id here for spm dispatcher
|
|
*/
|
|
#define MT_SPM_STATUS_SUSPEND_SLEEP BIT(27)
|
|
|
|
enum mt_spm_smc_uid {
|
|
MT_SPM_SMC_UID_STATUS,
|
|
MT_SPM_SMC_UID_PCM_WDT,
|
|
MT_SPM_SMC_UID_PCM_TIMER,
|
|
MT_SPM_SMC_UID_FW_TYPE,
|
|
MT_SPM_SMC_UID_PHYPLL_MODE,
|
|
MT_SPM_SMC_UID_SET_PENDING_IRQ_INIT,
|
|
MT_SPM_SMC_UID_FW_INIT = 0x5731,
|
|
};
|
|
|
|
/*
|
|
* SPM dbg dispatcher's smc id definition
|
|
* Please adding custom smc id here for spm dbg dispatcher
|
|
*/
|
|
enum mt_spm_dbg_smc_uid {
|
|
MT_SPM_DBG_SMC_UID_IDLE_PWR_CTRL,
|
|
MT_SPM_DBG_SMC_UID_IDLE_CNT,
|
|
MT_SPM_DBG_SMC_UID_SUSPEND_PWR_CTRL,
|
|
MT_SPM_DBG_SMC_UID_SUSPEND_DBG_CTRL,
|
|
MT_SPM_DBG_SMC_UID_FS,
|
|
MT_SPM_DBG_SMC_UID_RC_SWITCH,
|
|
MT_SPM_DBG_SMC_UID_RC_CNT,
|
|
MT_SPM_DBG_SMC_UID_COND_CHECK,
|
|
MT_SPM_DBG_SMC_UID_COND_BLOCK,
|
|
MT_SPM_DBG_SMC_UID_BLOCK_LATCH,
|
|
MT_SPM_DBG_SMC_UID_BLOCK_DETAIL,
|
|
MT_SPM_DBG_SMC_UID_RES_NUM,
|
|
MT_SPM_DBG_SMC_UID_RES_REQ,
|
|
MT_SPM_DBG_SMC_UID_RES_USAGE,
|
|
MT_SPM_DBG_SMC_UID_RES_USER_NUM,
|
|
MT_SPM_DBG_SMC_UID_RES_USER_VALID,
|
|
MT_SPM_DBG_SMC_UID_RES_USER_NAME,
|
|
MT_SPM_DBG_SMC_UID_DOE_RESOURCE_CTRL,
|
|
MT_SPM_DBG_SMC_UID_DOE_RC,
|
|
MT_SPM_DBG_SMC_UID_RC_COND_CTRL,
|
|
MT_SPM_DBG_SMC_UID_RC_RES_CTRL,
|
|
MT_SPM_DBG_SMC_UID_RC_RES_INFO,
|
|
MT_SPM_DBG_SMC_UID_RC_BBLPM,
|
|
MT_SPM_DBG_SMC_UID_RC_TRACE,
|
|
MT_SPM_DBG_SMC_UID_RC_TRACE_TIME,
|
|
MT_SPM_DBG_SMC_UID_DUMP_PLL,
|
|
MT_SPM_DBG_SMC_HWCG_NUM,
|
|
MT_SPM_DBG_SMC_HWCG_STATUS,
|
|
MT_SPM_DBG_SMC_HWCG_SETTING,
|
|
MT_SPM_DBG_SMC_HWCG_DEF_SETTING,
|
|
MT_SPM_DBG_SMC_HWCG_RES_NAME,
|
|
MT_SPM_DBG_SMC_UID_RC_NOTIFY_CTRL,
|
|
MT_SPM_DBG_SMC_VCORE_LP_ENABLE,
|
|
MT_SPM_DBG_SMC_VCORE_LP_VOLT,
|
|
MT_SPM_DBG_SMC_VSRAM_LP_ENABLE,
|
|
MT_SPM_DBG_SMC_VSRAM_LP_VOLT,
|
|
MT_SPM_DBG_SMC_PERI_REQ_NUM,
|
|
MT_SPM_DBG_SMC_PERI_REQ_STATUS,
|
|
MT_SPM_DBG_SMC_PERI_REQ_SETTING,
|
|
MT_SPM_DBG_SMC_PERI_REQ_DEF_SETTING,
|
|
MT_SPM_DBG_SMC_PERI_REQ_RES_NAME,
|
|
MT_SPM_DBG_SMC_PERI_REQ_STATUS_RAW,
|
|
MT_SPM_DBG_SMC_IDLE_PWR_STAT,
|
|
MT_SPM_DBG_SMC_SUSPEND_PWR_STAT,
|
|
MT_SPM_DBG_SMC_LP_REQ_STAT,
|
|
MT_SPM_DBG_SMC_COMMON_SODI_CTRL,
|
|
MT_SPM_DBG_SMC_SPM_TIMESTAMP,
|
|
MT_SPM_DBG_SMC_SPM_TIMESTAMP_SIZE,
|
|
MT_SPM_DBG_SMC_UID_COMMON_SODI_PWR_CTRL,
|
|
};
|
|
|
|
enum wake_status_enum {
|
|
WAKE_STA_ASSERT_PC,
|
|
WAKE_STA_R12,
|
|
WAKE_STA_R12_EXT,
|
|
WAKE_STA_RAW_STA,
|
|
WAKE_STA_RAW_EXT_STA,
|
|
WAKE_STA_WAKE_MISC,
|
|
WAKE_STA_TIMER_OUT,
|
|
WAKE_STA_R13,
|
|
WAKE_STA_IDLE_STA,
|
|
WAKE_STA_REQ_STA,
|
|
WAKE_STA_DEBUG_FLAG,
|
|
WAKE_STA_DEBUG_FLAG1,
|
|
WAKE_STA_EVENT_REG,
|
|
WAKE_STA_ISR,
|
|
WAKE_STA_MAX_COUNT,
|
|
};
|
|
|
|
#endif /* MT_SPM_SMC_H */
|