refactor: SP manifest defines

This patch makes the partition manifest defines related to number of
memory regions, device regions, interrupts and streams pre device region
into platform build options, as opposed to being defined in header
files.
Large SoCs tend to have many memory regions and device regions that need
to be covered in SPs. An example SP is a RAS SP which requires access to
large number of memory regions and device regions to triage RAS issues.
Moreover, such SPs need to handle a large number of interrupts as well
and the current limits of 8 memory regions, 8 device regions and 4
interrupts per device regions are inadequate.
By making this a platform specific build option, it allows freedom for
platforms to choose the right number of regions and interrupts per
device.
This patch extends the allowed limit of memory and device regions to 64K
and have up to 256 interrupts and streams per device region.
Also note that the new defines are in platform.gni as opposed to in
architecture specific build/args gni files since SP specific details
have leaked into manifest.h, which is included in many architecture
agnostic files. Adding it into args.gni in the aarch64 folder yielded
compile errors which require further modification to many other
unrelated BUILD.gn files.

Change-Id: If71e154319e66f2864b18c33936a049d8cde4db4
Signed-off-by: Raghu Krishnamurthy <raghu.ncstate@gmail.com>
diff --git a/inc/hf/manifest.h b/inc/hf/manifest.h
index f3c5989..30d79cc 100644
--- a/inc/hf/manifest.h
+++ b/inc/hf/manifest.h
@@ -20,11 +20,6 @@
 
 #define SP_RTX_BUF_NAME_SIZE 10
 
-#define SP_MAX_MEMORY_REGIONS 8
-#define SP_MAX_DEVICE_REGIONS 8
-#define SP_MAX_INTERRUPTS_PER_DEVICE 4
-#define SP_MAX_STREAMS_PER_DEVICE 4
-
 /** FF-A manifest memory and device regions attributes. */
 #define MANIFEST_REGION_ATTR_READ (UINT32_C(1) << 0)
 #define MANIFEST_REGION_ATTR_WRITE (UINT32_C(1) << 1)
@@ -85,7 +80,7 @@
 	/** Memory attributes - mandatory */
 	uint32_t attributes;
 	/** List of physical interrupt ID's and their attributes - optional */
-	struct interrupt interrupts[SP_MAX_INTERRUPTS_PER_DEVICE];
+	struct interrupt interrupts[PARTITION_MAX_INTERRUPTS_PER_DEVICE];
 	/** Count of physical interrupts - optional */
 	uint8_t interrupt_count;
 	/** SMMU ID - optional */
@@ -93,7 +88,7 @@
 	/** Count of Stream IDs assigned to device - optional */
 	uint8_t stream_count;
 	/** List of Stream IDs assigned to device - optional */
-	uint32_t stream_ids[SP_MAX_STREAMS_PER_DEVICE];
+	uint32_t stream_ids[PARTITION_MAX_STREAMS_PER_DEVICE];
 	/** Exclusive access to an endpoint - optional */
 	bool exclusive_access;
 	/** Name of Device region - optional */
@@ -166,11 +161,11 @@
 	uint32_t stream_ep_ids[1];
 
 	/** Memory regions */
-	uint8_t mem_region_count;
-	struct memory_region mem_regions[SP_MAX_MEMORY_REGIONS];
+	uint16_t mem_region_count;
+	struct memory_region mem_regions[PARTITION_MAX_MEMORY_REGIONS];
 	/** Device regions */
-	uint8_t dev_region_count;
-	struct device_region dev_regions[SP_MAX_DEVICE_REGIONS];
+	uint16_t dev_region_count;
+	struct device_region dev_regions[PARTITION_MAX_DEVICE_REGIONS];
 };
 
 /**