refactor: add explicit underlying types to enums

* Set the underlying type of `ffa_error` to `uint32_t`. This reduces the
  need for explicit casts in most cases.
* Set the underlying types for other enums to `uint32_t`, where they are
  specified as such in the FF-A specification (`ffa_version`,
  `ffa_feature_id`, `ffa_mem_perm`, `ffa_framework_msg_func`).
* Set the underlying types of `ffa_data_access`,
  `ffa_instruction_access`, `ffa_memory_type`,
  `ffa_memory_cacheability`, `ffa_memory_shareability`,
  `ffa_memory_security` to `uint8_t`. This allows them to be stored
  directly in the `ffa_data_access_t` and `ffa_memory_attributes_t`
  structs without increasing their size.

Change-Id: I7da103f7507929ffb2e66914daa3cd9e67186300
Signed-off-by: Karl Meakin <karl.meakin@arm.com>
diff --git a/src/ffa/hypervisor/init.c b/src/ffa/hypervisor/init.c
index b87ca54..f9c98e8 100644
--- a/src/ffa/hypervisor/init.c
+++ b/src/ffa/hypervisor/init.c
@@ -66,7 +66,7 @@
 	 */
 	ret = arch_other_world_call((struct ffa_value){
 		.func = FFA_VERSION_32, .arg1 = FFA_VERSION_COMPILED});
-	if (ret.func == (uint32_t)FFA_NOT_SUPPORTED) {
+	if (ret.func == FFA_NOT_SUPPORTED) {
 		panic("Hypervisor and SPMC versions are not compatible.\n");
 	}