From a53d137753e900a27f387dd940dbe9ea791eb6e7 Mon Sep 17 00:00:00 2001 From: Manorit Chawdhry Date: Mon, 29 Jan 2024 17:36:49 +0530 Subject: [PATCH] Revert "fix(ti): do not take system power reference in bl31_platform_setup()" The workaround that we required to get over the timing issue with our Device Manager is fixed in [0], revert the workaround as it is no longer required. [0]: https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/commit?id=9ad862b528112f7bc26d80668fbb9b38521cddf9 This reverts commit 9977948112d732935362a3fe8518e3b2e4b7f6b7. It also adds a check to make this backward compatible. Change-Id: Icf10f9df9558de1ae7ba6f5f586485111aac4f8d Signed-off-by: Manorit Chawdhry --- plat/ti/k3/common/k3_bl31_setup.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plat/ti/k3/common/k3_bl31_setup.c b/plat/ti/k3/common/k3_bl31_setup.c index 97a416f01..63fe02065 100644 --- a/plat/ti/k3/common/k3_bl31_setup.c +++ b/plat/ti/k3/common/k3_bl31_setup.c @@ -136,6 +136,27 @@ void bl31_platform_setup(void) version.firmware_revision, version.firmware_description); + /* + * Older firmware have a timing issue with DM that crashes few TF-A + * lite devices while trying to make calls to DM. Since there is no way + * to detect what current DM version we are running - we rely on the + * corresponding TIFS versioning to handle this check and ensure that + * the platform boots up + * + * Upgrading to TIFS version 9.1.7 along with the corresponding DM from + * ti-linux-firmware will enable this functionality. + */ + if (version.firmware_revision > 9 || + (version.firmware_revision == 9 && version.sub_version > 1) || + (version.firmware_revision == 9 && version.sub_version == 1 && + version.patch_version >= 7) + ) { + if (ti_sci_device_get(PLAT_BOARD_DEVICE_ID)) { + WARN("Unable to take system power reference\n"); + } + } else { + NOTICE("Upgrade Firmwares for Power off functionality\n"); + } } void platform_mem_init(void)