test(realm): add test for FEAT_DIT

Add testcase to enable FEAT_DIT in realm.
Test if DIT Bit is preserved across context switch RL/NS.

Change-Id: I26cbaaf669b53ecba14a451955b6f847c45e0575
Signed-off-by: Shruti Gupta <shruti.gupta@arm.com>
diff --git a/realm/realm_payload_main.c b/realm/realm_payload_main.c
index 93e2404..ce25f43 100644
--- a/realm/realm_payload_main.c
+++ b/realm/realm_payload_main.c
@@ -130,6 +130,20 @@
 	return false;
 }
 
+bool test_realm_dit_check_cmd(void)
+{
+	if (is_armv8_4_dit_present()) {
+		write_dit(DIT_BIT);
+		realm_printf("Testing DIT=0x%lx\n", read_dit());
+		/* Test if DIT is preserved after HOST_CALL */
+		if (read_dit() == DIT_BIT) {
+			return true;
+		}
+	}
+	return false;
+}
+
+
 static bool test_realm_instr_fetch_cmd(void)
 {
 	u_register_t base;
@@ -229,6 +243,9 @@
 		case REALM_PAUTH_FAULT:
 			test_succeed = test_realm_pauth_fault();
 			break;
+		case REALM_DIT_CHECK_CMD:
+			test_succeed = test_realm_dit_check_cmd();
+			break;
 		case REALM_GET_RSI_VERSION:
 			test_succeed = realm_get_rsi_version();
 			break;