ivy: Introduce new test Secure Partition

In order to test multiple partitions it is needed to have at least two
different partitions with different services. This way it isn't possible
to accidentally call partition A with a service of partition B and have
it work correctly.

Cactus is meant to be the main test Secure Partition. It is the one
meant to have most of the tests that a Secure Partition has to do. Ivy
is meant to be more minimalistic. In the future, Cactus may be modified
to be a S-EL1 partition while Ivy will remain as a S-EL0 partition.

Change-Id: I29d09b9f9400b58568f9b90344a4034332a6e6e1
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
diff --git a/spm/ivy/ivy_def.h b/spm/ivy/ivy_def.h
new file mode 100644
index 0000000..11eeacf
--- /dev/null
+++ b/spm/ivy/ivy_def.h
@@ -0,0 +1,47 @@
+/*
+ * Copyright (c) 2018, Arm Limited. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#ifndef IVY_DEF_H
+#define IVY_DEF_H
+
+/*
+ * Layout of the Secure Partition image.
+ */
+
+/* Up to 2 MiB at an arbitrary address that doesn't overlap the devices. */
+#define IVY_IMAGE_BASE			ULL(0x90000000)
+#define IVY_IMAGE_SIZE			ULL(0x200000)
+
+/* Memory reserved for stacks */
+#define IVY_STACKS_SIZE			ULL(0x1000)
+
+/* Memory shared between EL3 and S-EL0 (64 KiB). */
+#define IVY_SPM_BUF_BASE		(IVY_IMAGE_BASE + IVY_IMAGE_SIZE)
+#define IVY_SPM_BUF_SIZE		ULL(0x10000)
+
+/* Memory shared between Normal world and S-EL0 (64 KiB). */
+#define IVY_NS_BUF_BASE			(IVY_SPM_BUF_BASE + IVY_SPM_BUF_SIZE)
+#define IVY_NS_BUF_SIZE			ULL(0x10000)
+
+/*
+ * UUIDs of Secure Services provided by Cactus
+ */
+
+#define IVY_SERVICE1_UUID	U(0x76543210), U(0x89ABCDEF), U(0x76543210), U(0xFEDCBA98)
+
+#define IVY_SERVICE1_UUID_RD	U(0x76543210) U(0x89ABCDEF) U(0x76543210) U(0xFEDCBA98)
+
+/*
+ * Service IDs
+ */
+/* Print a magic number unique to IVY and return */
+#define IVY_PRINT_MAGIC			U(1001)
+/* Return a magic number unique to IVY */
+#define IVY_GET_MAGIC			U(1002)
+
+#define IVY_MAGIC_NUMBER		U(0x97531842)
+
+#endif /* IVY_DEF_H */