brillo: Configure EFI parameters and build image.

BUG=29123391
TEST=Manually tested output full-disk-image.img with qemu. Checked for
presence of EFI application and executed it.

Change-Id: I87eb08ceca11e8c862465fe33a63752c447c5753
diff --git a/brillo_uefi_x86_64/BoardConfig.mk b/brillo_uefi_x86_64/BoardConfig.mk
index e552c39..cb00fb0 100644
--- a/brillo_uefi_x86_64/BoardConfig.mk
+++ b/brillo_uefi_x86_64/BoardConfig.mk
@@ -14,7 +14,7 @@
 # limitations under the License.
 #
 
-# 512 MiB - keep in sync with brillo_partitions.bpt
+# 512 MiB - keep in sync with brillo_partitions.bpt.
 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 536870912
 # No ramdisk.
 BOARD_BUILD_SYSTEM_ROOT_IMAGE := true
@@ -23,7 +23,7 @@
 # No ramdisk.
 BOARD_USES_FULL_RECOVERY_IMAGE := true
 
-# Additional bpt file specifying EFI
+# Additional bpt file specifying EFI.
 BOARD_BPT_INPUT_FILES += device/generic/brillo/brillo_uefi_x86_64/device-partitions.bpt
 
 # Standard devices would usually define an SoC. Here we define
@@ -36,3 +36,9 @@
 PRODUCT_COPY_FILES += \
     device/generic/brillo/brillo_uefi_x86_64/fstab.brillo_uefi_x86_64:root/fstab.brillo_uefi_x86_64 \
     device/generic/brillo/brillo_uefi_x86_64/provision-device:provision-device
+
+# EFI partitions size attribute.
+EFI_IMAGE_SIZE := 314572800
+
+# UEFI-specific applications.
+EFI_INPUT_FILES := device/generic/brillo/brillo_uefi_x86_64/boot_loader/brillo_boot_loader.efi:brillo_boot_loader.efi
\ No newline at end of file
diff --git a/brillo_uefi_x86_64/provision-device b/brillo_uefi_x86_64/provision-device
index cfd9ab4..e837899 100755
--- a/brillo_uefi_x86_64/provision-device
+++ b/brillo_uefi_x86_64/provision-device
@@ -22,6 +22,7 @@
 bpttool make_disk_image \
         --output ${OS}/full-disk-image.img \
         --input ${OS}/partition-table.bpt \
+        --image EFI:${OS}/EFI.img \
         --image boot_a:${OS}/boot.img \
         --image boot_b:${OS}/boot.img \
         --image system_a:${OS}/system.img \