diff --git a/plat/nvidia/tegra/common/tegra_pm.c b/plat/nvidia/tegra/common/tegra_pm.c index 8ba02d6f5652275900241444d5cfc3c7344b4567..a8c70eaa5bfab75e0822115eda51dffc87de21eb 100644 --- a/plat/nvidia/tegra/common/tegra_pm.c +++ b/plat/nvidia/tegra/common/tegra_pm.c @@ -27,14 +27,6 @@ extern uint64_t tegra_bl31_phys_base; extern uint64_t tegra_sec_entry_point; -/* - * tegra_fake_system_suspend acts as a boolean var controlling whether - * we are going to take fake system suspend code or normal system suspend code - * path. This variable is set inside the sip call handlers,when the kernel - * requests a SIP call to set the suspend debug flags. - */ -uint8_t tegra_fake_system_suspend; - /* * The following platform setup functions are weakly defined. They * provide typical implementations that will be overridden by a SoC. @@ -233,31 +225,10 @@ void tegra_pwr_domain_suspend(const psci_power_state_t *target_state) __dead2 void tegra_pwr_domain_power_down_wfi(const psci_power_state_t *target_state) { - uint8_t pwr_state = target_state->pwr_domain_state[PLAT_MAX_PWR_LVL]; - uint64_t rmr_el3 = 0; - /* call the chip's power down handler */ (void)tegra_soc_pwr_domain_power_down_wfi(target_state); - /* - * If we are in fake system suspend mode, ensure we start doing - * procedures that help in looping back towards system suspend exit - * instead of calling WFI by requesting a warm reset. - * Else, just call WFI to enter low power state. - */ - if ((tegra_fake_system_suspend != 0U) && - (pwr_state == (uint8_t)PSTATE_ID_SOC_POWERDN)) { - - /* warm reboot */ - rmr_el3 = read_rmr_el3(); - write_rmr_el3(rmr_el3 | RMR_WARM_RESET_CPU); - - } else { - /* enter power down state */ - wfi(); - } - - /* we can never reach here */ + wfi(); panic(); } diff --git a/plat/nvidia/tegra/common/tegra_sip_calls.c b/plat/nvidia/tegra/common/tegra_sip_calls.c index 957300e53bdf168dd527f611761305392d3bf0df..b8ba09562a94edf66be86f988a25aefa9db42bdd 100644 --- a/plat/nvidia/tegra/common/tegra_sip_calls.c +++ b/plat/nvidia/tegra/common/tegra_sip_calls.c @@ -24,12 +24,6 @@ #define TEGRA_SIP_NEW_VIDEOMEM_REGION 0x82000003 #define TEGRA_SIP_FIQ_NS_ENTRYPOINT 0x82000005 #define TEGRA_SIP_FIQ_NS_GET_CONTEXT 0x82000006 -#define TEGRA_SIP_ENABLE_FAKE_SYSTEM_SUSPEND 0xC2000007 - -/******************************************************************************* - * Fake system suspend mode control var - ******************************************************************************/ -extern uint8_t tegra_fake_system_suspend; /******************************************************************************* * SoC specific SiP handler @@ -162,26 +156,6 @@ uintptr_t tegra_sip_handler(uint32_t smc_fid, SMC_RET0(handle); - case TEGRA_SIP_ENABLE_FAKE_SYSTEM_SUSPEND: - /* - * System suspend fake mode is set if we are on VDK and we make - * a debug SIP call. This mode ensures that we excercise debug - * path instead of the regular code path to suit the pre-silicon - * platform needs. These include replacing the call to WFI by - * a warm reset request. - */ - if (tegra_platform_is_virt_dev_kit() != false) { - - tegra_fake_system_suspend = 1; - SMC_RET1(handle, 0); - } - - /* - * We return to the external world as if this SIP is not - * implemented in case, we are not running on VDK. - */ - break; - default: ERROR("%s: unhandled SMC (0x%x)\n", __func__, smc_fid); break; diff --git a/plat/nvidia/tegra/include/tegra_private.h b/plat/nvidia/tegra/include/tegra_private.h index 34a096cfbec52af1df9721a3c22654db5e47cb1b..fab0eafc311bcb641cea934053eb9ed5dae83170 100644 --- a/plat/nvidia/tegra/include/tegra_private.h +++ b/plat/nvidia/tegra/include/tegra_private.h @@ -97,8 +97,6 @@ void tegra_security_setup(void); void tegra_security_setup_videomem(uintptr_t base, uint64_t size); /* Declarations for tegra_pm.c */ -extern uint8_t tegra_fake_system_suspend; - void tegra_pm_system_suspend_entry(void); void tegra_pm_system_suspend_exit(void); int32_t tegra_system_suspended(void);