diff options
author | Kalyani Chidambaram Vaidyanathan <kalyanic@nvidia.com> | 2023-01-30 17:44:26 -0800 |
---|---|---|
committer | Varun Wadekar <vwadekar@nvidia.com> | 2023-03-09 21:59:52 +0200 |
commit | 40a4e2d84c38ffae899eaa2c33c1e280312919cf (patch) | |
tree | f5a3bc40145b324005bfbe2582f111a784af2dd8 /plat/nvidia/tegra/soc | |
parent | 4121a2c3205e12da62d0be8c3ca4e44fada2fcf1 (diff) | |
download | arm-trusted-firmware-40a4e2d84c38ffae899eaa2c33c1e280312919cf.tar.gz |
fix(tegra210): support legacy SMC_ID 0xC2FEFE00
This patch introduces a workaround to support the legacy SMC FID
0xC2FEFE00 to maintain compatibility with older software components.
Change-Id: Icf2ef9cfa6b28c09bbab325a642d0b3b20b23535
Signed-off-by: Kalyani Chidambaram Vaidyanathan <kalyanic@nvidia.com>
Diffstat (limited to 'plat/nvidia/tegra/soc')
-rw-r--r-- | plat/nvidia/tegra/soc/t210/plat_sip_calls.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/plat/nvidia/tegra/soc/t210/plat_sip_calls.c b/plat/nvidia/tegra/soc/t210/plat_sip_calls.c index e3484bea9..93d12832e 100644 --- a/plat/nvidia/tegra/soc/t210/plat_sip_calls.c +++ b/plat/nvidia/tegra/soc/t210/plat_sip_calls.c @@ -1,6 +1,6 @@ /* * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. - * Copyright (c) 2020, NVIDIA Corporation. All rights reserved. + * Copyright (c) 2020-2023, NVIDIA Corporation. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -33,6 +33,7 @@ /******************************************************************************* * Tegra210 SiP SMCs ******************************************************************************/ +#define TEGRA_SIP_PMC_COMMANDS_LEGACY U(0xC2FEFE00) #define TEGRA_SIP_PMC_COMMANDS U(0xC2FFFE00) /******************************************************************************* @@ -54,7 +55,7 @@ int plat_sip_handler(uint32_t smc_fid, if (!ns) SMC_RET1(handle, SMC_UNK); - if (smc_fid == TEGRA_SIP_PMC_COMMANDS) { + if ((smc_fid == TEGRA_SIP_PMC_COMMANDS) || (smc_fid == TEGRA_SIP_PMC_COMMANDS_LEGACY)) { /* check the address is within PMC range and is 4byte aligned */ if ((x2 >= TEGRA_PMC_SIZE) || (x2 & 0x3)) return -EINVAL; |