feat(smccc): add FEAT_EBEP to FEATURE_AVAILABILITY

Change-Id: Ia545d5c226d3504cd821c704e765542b7d2b838c
Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
diff --git a/include/lib/aarch64/arch.h b/include/lib/aarch64/arch.h
index fbef12f..88d1f6b 100644
--- a/include/lib/aarch64/arch.h
+++ b/include/lib/aarch64/arch.h
@@ -338,6 +338,9 @@
 /* ID_AA64DFR1_EL1 definitions */
 #define ID_AA64DFR1_BRP_SHIFT			U(8)
 #define ID_AA64DFR1_BRP_WIDTH			U(8)
+#define ID_AA64DFR1_EBEP_SHIFT			U(48)
+#define ID_AA64DFR1_EBEP_WIDTH			U(4)
+#define ID_AA64DFR1_EBEP_SUPPORTED		U(1)
 
 /* ID_AA64ISAR0_EL1 definitions */
 #define ID_AA64ISAR0_EL1			S3_0_C0_C6_0
@@ -771,7 +774,7 @@
 #define MDCR_EnPMSS_BIT		(ULL(1) << 44)
 #define MDCR_EBWE_BIT		(ULL(1) << 43)
 #define MDCR_EnPMS3_BIT		(ULL(1) << 42)
-#define MDCR_PMEE(x)		((x) << 40)
+#define MDCR_PMEE(x)		(ULL(x) << 40)
 #define MDCR_EnTB2_BIT		(ULL(1) << 39)
 #define MDCR_E3BREC_BIT		(ULL(1) << 38)
 #define MDCR_E3BREW_BIT		(ULL(1) << 37)
diff --git a/include/lib/aarch64/arch_features.h b/include/lib/aarch64/arch_features.h
index a873501..c8cad18 100644
--- a/include/lib/aarch64/arch_features.h
+++ b/include/lib/aarch64/arch_features.h
@@ -625,4 +625,10 @@
 	return EXTRACT(ID_AA64PFR2_EL1_GCIE, read_id_aa64pfr2_el1())
 			>= ID_AA64PFR2_EL1_GCIE_SUPPORTED;
 }
+
+static inline bool is_feat_ebep_supported(void)
+{
+	return EXTRACT(ID_AA64DFR1_EBEP, read_id_aa64dfr1_el1())
+			>= ID_AA64DFR1_EBEP_SUPPORTED;
+}
 #endif /* ARCH_FEATURES_H */
diff --git a/tftf/tests/runtime_services/arm_arch_svc/smccc_feature_availability.c b/tftf/tests/runtime_services/arm_arch_svc/smccc_feature_availability.c
index 76b74a9..b70bf54 100644
--- a/tftf/tests/runtime_services/arm_arch_svc/smccc_feature_availability.c
+++ b/tftf/tests/runtime_services/arm_arch_svc/smccc_feature_availability.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2024, Arm Limited. All rights reserved.
+ * Copyright (c) 2024-2025, Arm Limited. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  */
@@ -117,6 +117,7 @@
 	CHECK_BIT_SET(is_feat_doublelock_present,		MDCR_TDOSA_BIT);
 	CHECK_BIT_SET(always_present,				MDCR_TDA_BIT);
 	CHECK_BIT_SET(get_feat_pmuv3_supported,			MDCR_TPM_BIT);
+	CHECK_BIT_SET(is_feat_ebep_supported,			MDCR_PMEE(1));
 	CHECK_NO_BITS_SET(MDCR_EL3);
 
 	reg = get_feature_for_reg(MPAM3_EL3_OPCODE);