Introduce TARGET_KERNEL_USE to specify kernel version

Copied from device/linaro/hikey. This uses a command line variable,
TARGET_KERNEL_USE, to specify which kernel to install and use at
runtime. The correct kernel and dtb file are picked up automatically.

The kernel defaults to 4.14.

Bug: 110964307
Change-Id: I044038de8ba82beb9bc46ddb749efbd308fba03b
Signed-off-by: Alistair Strachan <astrachan@google.com>
diff --git a/boot_fit/Android.mk b/boot_fit/Android.mk
index c16ccfe..d816146 100644
--- a/boot_fit/Android.mk
+++ b/boot_fit/Android.mk
@@ -17,12 +17,12 @@
 $(BOOTIMG_FIT): PRIVATE_INSTALLED_KERNEL_TARGET := $(BOOTIMG_FIT_INSTALLED_KERNEL_TARGET)
 $(BOOTIMG_FIT): PRIVATE_INSTALLED_RAMDISK_TARGET := $(BOOTIMG_FIT_INSTALLED_RAMDISK_TARGET)
 $(BOOTIMG_FIT): $(BOOTIMG_FIT_INSTALLED_KERNEL_TARGET) $(BOOTIMG_FIT_INSTALLED_RAMDISK_TARGET)
-$(BOOTIMG_FIT): $(BOARD_DIR)/$(ITS) $(MKIMAGE) $(DTC) $(wildcard $(LOCAL_KERNEL)/*.dtb)
+$(BOOTIMG_FIT): $(BOARD_DIR)/$(ITS) $(MKIMAGE) $(DTC) $(wildcard $(LOCAL_KERNEL)/$(TARGET_KERNEL_USE)/*.dtb)
 	mkdir -p $(PRIVATE_INTERMEDIATES)
 	cp $(PRIVATE_BOARD_DIR)/$(PRIVATE_ITS) $(PRIVATE_INTERMEDIATES)/
 	cp $(PRIVATE_INSTALLED_RAMDISK_TARGET) $(PRIVATE_INTERMEDIATES)/
 	cp $(PRIVATE_INSTALLED_KERNEL_TARGET) $(PRIVATE_INTERMEDIATES)/zImage
-	cp $(LOCAL_KERNEL)/*.dtb $(PRIVATE_INTERMEDIATES)/
+	cp $(LOCAL_KERNEL)/$(TARGET_KERNEL_USE)/*.dtb $(PRIVATE_INTERMEDIATES)/
 	PATH=$(HOST_OUT_EXECUTABLES):$$PATH $(PRIVATE_MKIMAGE) -D "$(PRIVATE_DTC_FLAGS_MKIMAGE)" -f $(PRIVATE_INTERMEDIATES)/$(PRIVATE_ITS) $@
 
 include $(CLEAR_VARS)
diff --git a/device.mk b/device.mk
index 1530e5c..74911a0 100644
--- a/device.mk
+++ b/device.mk
@@ -21,7 +21,8 @@
 DEVICE_PACKAGE_OVERLAYS := device/ti/beagle_x15/overlay
 
 LOCAL_KERNEL := device/ti/beagle_x15-kernel
-TARGET_PREBUILT_KERNEL := $(LOCAL_KERNEL)/zImage
+TARGET_KERNEL_USE ?= 4.14
+TARGET_PREBUILT_KERNEL := $(LOCAL_KERNEL)/$(TARGET_KERNEL_USE)/zImage
 PRODUCT_COPY_FILES += $(TARGET_PREBUILT_KERNEL):kernel
 
 # Graphics