Enable Secure Hf build

Change-Id: Ic98ea1b20e2b15b7359dfd7f5b0380e731f36869
Signed-off-by: Jose Marinho <jose.marinho@arm.com>
diff --git a/BUILD.gn b/BUILD.gn
index c215a5a..3f8d096 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -22,6 +22,7 @@
     "//src:hafnium(:qemu_aarch64_clang)",
     "//src:hafnium(:rpi4_clang)",
     "//src/arch/aarch64/qemuloader:bl(:qemu_aarch64_clang)",
+    "//src:hafnium(:secure_aem_v8a_fvp_clang)",
   ]
 }
 
@@ -33,14 +34,19 @@
     "//test/arch(:aem_v8a_fvp_clang)",
     "//test/arch(:qemu_aarch64_clang)",
     "//test/arch(:rpi4_clang)",
+    "//test/arch(:secure_aem_v8a_fvp_clang)",
     "//test/linux(:aem_v8a_fvp_vm_clang)",
     "//test/linux(:qemu_aarch64_vm_clang)",
     "//test/linux(:rpi4_vm_clang)",
+    "//test/linux(:secure_aem_v8a_fvp_vm_clang)",
     "//test/vmapi(:aem_v8a_fvp_vm_clang)",
     "//test/vmapi(:qemu_aarch64_vm_clang)",
     "//test/vmapi(:rpi4_vm_clang)",
+    "//test/vmapi(:secure_aem_v8a_fvp_vm_clang)",
     "//test/vmapi/arch/aarch64/gicv3:gicv3_test(:aem_v8a_fvp_vm_clang)",
     "//test/vmapi/arch/aarch64/gicv3:gicv3_test(:qemu_aarch64_vm_clang)",
+    "//test/vmapi/arch/aarch64/gicv3:gicv3_test(:secure_aem_v8a_fvp_vm_clang)",
+    "//test/secure_world_baremetal(:secure_aem_v8a_fvp_vm_clang)",
   ]
 }
 
@@ -53,9 +59,27 @@
   max_vms = 6
 }
 
+aarch64_toolchains("secure_aem_v8a_fvp") {
+  cpu = "cortex-a57"
+  origin_address = "0x06000000"
+  boot_flow = "//src/boot_flow:linux"
+  console = "//src/arch/aarch64/pl011"
+  iommu = "//src/iommu:absent"
+  gic_version = 3
+  gicd_base_address = "0x2f000000"
+  gicr_base_address = "0x2f100000"
+  heap_pages = 60
+  max_cpus = 8
+  max_vms = 16
+  toolchain_args = {
+    secure_world = "1"
+    pl011_base_address = "0x1c090000"
+  }
+}
+
 aarch64_toolchains("aem_v8a_fvp") {
   cpu = "cortex-a57"
-  origin_address = "0x80000000"
+  origin_address = "0x88000000"
   boot_flow = "//src/boot_flow:linux"
   console = "//src/arch/aarch64/pl011"
   iommu = "//src/iommu:absent"
@@ -83,6 +107,7 @@
   max_cpus = 8
   max_vms = 16
   toolchain_args = {
+    secure_world = "0"
     pl011_base_address = "0x09000000"
   }
 }
@@ -98,6 +123,7 @@
   max_cpus = 4
   max_vms = 16
   toolchain_args = {
+    secure_world = "0"
     gpio_base_address = "0xfe200000"
     aux_base_address = "0xfe215000"
     core_freq_mhz = 500
@@ -118,6 +144,7 @@
   max_cpus = 8
   max_vms = 16
   toolchain_args = {
+    secure_world = "0"
     pl011_base_address = "0x09000000"
   }
 }
diff --git a/secure_aem_v8a_fvp/BUILD.gn b/secure_aem_v8a_fvp/BUILD.gn
new file mode 100644
index 0000000..707cdef
--- /dev/null
+++ b/secure_aem_v8a_fvp/BUILD.gn
@@ -0,0 +1,16 @@
+# Copyright 2019 The Hafnium Authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+source_set("secure_aem_v8a_fvp") {
+}