16k: Move logic from device/google/shusky/BoardConfig-shusky-common.mk to zuma/BoardConfig-16k-common.mk
The makefile logic in device/google/shusky/BoardConfig-shusky-common.mk
is identical to the logic required for akita. Hence, this logic is
moved to device/google/zuma/BoardConfig-16k-common.mk to avoid
duplicating the file for akita.
Bug: 370842132
Bug: 349877551
Test: Built and booted up `aosp_shiba` and and `aosp_shiba-pgagnostic` targets
Flag: EXEMPT bugfix
Change-Id: Ibd060eae8f4e97ae8ff800f765e2310c984e5796
Merged-In: Ibd060eae8f4e97ae8ff800f765e2310c984e5796
diff --git a/BoardConfig-16k-common.mk b/BoardConfig-16k-common.mk
new file mode 100644
index 0000000..f7bee9d
--- /dev/null
+++ b/BoardConfig-16k-common.mk
@@ -0,0 +1,38 @@
+#
+# Copyright (C) 2024 The Android Open-Source Project
+#
+# 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
+#
+# http://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.
+#
+
+ifeq ($(TARGET_BOOTS_16K),true)
+# Configures the 16kb kernel directory.
+TARGET_KERNEL_DIR := $(TARGET_KERNEL_DIR)/16kb
+
+else ifeq ($(PRODUCT_16K_DEVELOPER_OPTION),true)
+# Configures the 16kb kernel and modules for OTA updates.
+TARGET_KERNEL_DIR_16K := $(TARGET_KERNEL_DIR)/16kb
+BOARD_KERNEL_PATH_16K := $(TARGET_KERNEL_DIR_16K)/Image.lz4
+
+BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_kernel_boot.modules.load)
+BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/system_dlkm.modules.load)
+BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_dlkm.modules.load)
+BOARD_KERNEL_MODULES_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(TARGET_KERNEL_DIR_16K)/$(notdir $(module)))
+BOARD_PREBUILT_DTBOIMAGE_16KB := $(TARGET_KERNEL_DIR_16K)/dtbo.img
+
+# Zuma targets use exynos-bcm_dbg.ko module instead of bcm_dbg.ko.
+BOARD_KERNEL_MODULES_16K := $(filter-out %/bcm_dbg.ko,$(BOARD_KERNEL_MODULES_16K))
+BOARD_KERNEL_MODULES_LOAD_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(notdir $(module)))
+
+BOARD_16K_OTA_USE_INCREMENTAL := true
+BOARD_16K_OTA_MOVE_VENDOR := true
+endif
diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk
index 3451d39..5c3cc93 100644
--- a/BoardConfig-common.mk
+++ b/BoardConfig-common.mk
@@ -16,6 +16,9 @@
include build/make/target/board/BoardConfigMainlineCommon.mk
include build/make/target/board/BoardConfigPixelCommon.mk
+# Include settings for 16k developer option, if enabled
+include device/google/zuma/BoardConfig-16k-common.mk
+
# HACK : To fix up after bring up multimedia devices.
TARGET_SOC := zuma