diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 75d36094..d5c82dd1 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -72,7 +72,8 @@ update-repos:
 # Available options for building are
 #  TOOLCHAINS: [gcc, clang, armgcc, external-gccarm]
 #  TCLIBC: [glibc, musl]
-#  FIRMWARE: [uboot, edk2]
+#  FIRMWARE: [u-boot, edk2]
+#  TS: [none, trusted-services]
 #  VIRT: [none, xen]
 #  TESTING: testimage
 
@@ -88,7 +89,7 @@ corstone1000-fvp:
   extends: .build
   parallel:
     matrix:
-      - TESTING: [testimage,tftf]
+      - TESTING: [testimage, tftf]
   tags:
     - x86_64
 
@@ -127,7 +128,7 @@ juno:
   parallel:
     matrix:
       - TOOLCHAINS: [gcc, clang]
-        FIRMWARE: [uboot, edk2]
+        FIRMWARE: [u-boot, edk2]
 
 musca-b1:
   extends: .build
@@ -163,7 +164,7 @@ qemuarm64:
   parallel:
     matrix:
       - TOOLCHAINS: [gcc, clang]
-        EFI: [uboot, edk2]
+        FIRMWARE: [u-boot, edk2]
         TESTING: testimage
       - VIRT: xen
 
@@ -179,7 +180,7 @@ qemuarm:
   parallel:
     matrix:
       - TOOLCHAINS: [gcc, clang]
-        EFI: [uboot, edk2]
+        FIRMWARE: [u-boot, edk2]
         TESTING: testimage
       - VIRT: xen
 
diff --git a/ci/clang.yml b/ci/clang.yml
index a2063f19..7559f6b0 100644
--- a/ci/clang.yml
+++ b/ci/clang.yml
@@ -6,5 +6,5 @@ repos:
     url: https://github.com/kraj/meta-clang
 
 local_conf_header:
-  clang: |
+  toolchain: |
     TOOLCHAIN = "clang"
diff --git a/ci/gcc.yml b/ci/gcc.yml
new file mode 100644
index 00000000..a3943680
--- /dev/null
+++ b/ci/gcc.yml
@@ -0,0 +1,7 @@
+header:
+  version: 11
+
+#NOTE: This is the default for poky.  This is only being added for completeness/clarity
+local_conf_header:
+  toolchain: |
+    TOOLCHAIN = "gcc"
diff --git a/ci/glibc.yml b/ci/glibc.yml
new file mode 100644
index 00000000..adc85a76
--- /dev/null
+++ b/ci/glibc.yml
@@ -0,0 +1,7 @@
+header:
+  version: 11
+
+#NOTE: This is the default for poky.  This is only being added for completeness/clarity
+local_conf_header:
+  libc: |
+    TCLIBC = "glibc"
diff --git a/ci/jobs-to-kas b/ci/jobs-to-kas
index d6896b77..b8615a5f 100755
--- a/ci/jobs-to-kas
+++ b/ci/jobs-to-kas
@@ -18,7 +18,7 @@ for i in $(echo $1 | cut -s -d ':' -f 2 | sed 's/[][,]//g'); do
 	# defaults, we can simply ignore those parameters.  They are necessary
 	# to pass in so that matrix can correctly setup all of the permutations
 	# of each individual run.
-	if [[ $i == 'none' || $i == 'gcc' || $i == 'glibc' || $i == 'uboot' ]]; then
+	if [[ $i == 'none' ]]; then
 		continue
 	fi
 	FILES+=":ci/$i.yml"
diff --git a/ci/u-boot.yml b/ci/u-boot.yml
new file mode 100644
index 00000000..76bdd23e
--- /dev/null
+++ b/ci/u-boot.yml
@@ -0,0 +1,8 @@
+header:
+  version: 11
+
+local_conf_header:
+  bootfirmware: |
+    PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
+    TFA_UBOOT = "1"
+    TFA_UEFI = "0"
