diff --git a/BoardConfig-common.mk b/BoardConfig-common.mk
index 6a467ae0..033ad532 100644
--- a/BoardConfig-common.mk
+++ b/BoardConfig-common.mk
@@ -1,7 +1,10 @@
#
# SPDX-FileCopyrightText: 2019 The Android Open-Source Project
+# SPDX-FileCopyrightText: The LineageOS Project
+# SPDX-FileCopyrightText: The Calyx Institute
# SPDX-License-Identifier: Apache-2.0
#
+
include build/make/target/board/BoardConfigMainlineCommon.mk
include build/make/target/board/BoardConfigPixelCommon.mk
@@ -56,11 +59,14 @@ TARGET_RECOVERY_UI_LIB := \
AB_OTA_UPDATER := true
AB_OTA_PARTITIONS += \
- system \
- system_dlkm \
- system_ext \
- product \
- vbmeta_system
+ system \
+ system_dlkm \
+ system_ext \
+ product \
+ vbmeta_system \
+ vbmeta_vendor \
+ vendor \
+ vendor_dlkm
ifneq ($(PRODUCT_BUILD_BOOT_IMAGE),false)
AB_OTA_PARTITIONS += boot
@@ -99,12 +105,22 @@ BOARD_AVB_BOOT_ALGORITHM := SHA256_RSA2048
BOARD_AVB_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
BOARD_AVB_BOOT_ROLLBACK_INDEX_LOCATION := 2
+# Enable chain partition for vendor.
+BOARD_AVB_VBMETA_VENDOR := vendor
+BOARD_AVB_VBMETA_VENDOR_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
+BOARD_AVB_VBMETA_VENDOR_ALGORITHM := SHA256_RSA2048
+BOARD_AVB_VBMETA_VENDOR_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
+BOARD_AVB_VBMETA_VENDOR_ROLLBACK_INDEX_LOCATION := 3
+
# Enable chained vbmeta for init_boot images
BOARD_AVB_INIT_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
BOARD_AVB_INIT_BOOT_ALGORITHM := SHA256_RSA2048
BOARD_AVB_INIT_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
BOARD_AVB_INIT_BOOT_ROLLBACK_INDEX_LOCATION := 4
+# Verified Boot
+BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
+
TARGET_USERIMAGES_USE_EXT4 := true
TARGET_USERIMAGES_USE_F2FS := true
BOARD_USERDATAIMAGE_PARTITION_SIZE := 11796480000
@@ -119,6 +135,13 @@ TARGET_COPY_OUT_PRODUCT := product
BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
TARGET_COPY_OUT_SYSTEM_EXT := system_ext
+# vendor.img
+BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
+
+# vendor_dlkm.img
+BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
+TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm
+
# persist.img
BOARD_PERSISTIMAGE_FILE_SYSTEM_TYPE := ext4
@@ -137,6 +160,9 @@ BOARD_GOOGLE_DYNAMIC_PARTITIONS_PARTITION_LIST := \
# Set error limit to BOARD_SUPER_PARTITON_SIZE - 500MB
BOARD_SUPER_PARTITION_ERROR_LIMIT := 8006926336
+# Reserve space for gapps install
+-include vendor/lineage/config/BoardConfigReservedSize.mk
+
# Build a separate system_dlkm partition
BOARD_USES_SYSTEM_DLKMIMAGE := true
BOARD_SYSTEM_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
@@ -227,5 +253,3 @@ BOARD_KERNEL_CMDLINE += log_buf_len=1024K
# Protected VM firmware
BOARD_PVMFWIMAGE_PARTITION_SIZE := 0x00100000
-
-include device/google/gs201/BoardConfigLineage.mk
diff --git a/BoardConfigLineage.mk b/BoardConfigLineage.mk
deleted file mode 100644
index 18b256a0..00000000
--- a/BoardConfigLineage.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-#
-# SPDX-FileCopyrightText: 2021-2024 The LineageOS Project
-# SPDX-FileCopyrightText: 2021-2024 The Calyx Institute
-# SPDX-License-Identifier: Apache-2.0
-#
-
-# Manifests
-DEVICE_MANIFEST_FILE += device/google/gs201/android.hardware.security.rkp-service.citadel.xml
-ifneq ($(BOARD_WITHOUT_RADIO),true)
-DEVICE_MANIFEST_FILE += device/google/gs201/manifest_radio_ds.xml
-endif
-
-# Partitions
-AB_OTA_PARTITIONS += \
- vendor \
- vendor_dlkm
-
-BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
-BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := ext4
-TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm
-
-# Enable chain partition for vendor.
-BOARD_AVB_VBMETA_VENDOR := vendor
-BOARD_AVB_VBMETA_VENDOR_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
-BOARD_AVB_VBMETA_VENDOR_ALGORITHM := SHA256_RSA2048
-BOARD_AVB_VBMETA_VENDOR_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
-BOARD_AVB_VBMETA_VENDOR_ROLLBACK_INDEX_LOCATION := 3
-
-AB_OTA_PARTITIONS += \
- vbmeta_vendor
-
-# Reserve space for gapps install
--include vendor/lineage/config/BoardConfigReservedSize.mk
-
-# Verified Boot
-BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
diff --git a/android.hardware.security.rkp-service.citadel.xml b/android.hardware.security.rkp-service.citadel.xml
deleted file mode 100644
index 035dfe0a..00000000
--- a/android.hardware.security.rkp-service.citadel.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
- android.hardware.security.keymint
- 3
- IRemotelyProvisionedComponent/strongbox
-
-
diff --git a/device.mk b/device.mk
index 89c7f430..bf226089 100644
--- a/device.mk
+++ b/device.mk
@@ -1,5 +1,7 @@
#
# SPDX-FileCopyrightText: 2011 The Android Open-Source Project
+# SPDX-FileCopyrightText: The LineageOS Project
+# SPDX-FileCopyrightText: The Calyx Institute
# SPDX-License-Identifier: Apache-2.0
#
@@ -187,6 +189,10 @@ PRODUCT_VENDOR_PROPERTIES += ro.surface_flinger.prime_shader_cache.ultrahdr=1
# Device Manifest, Device Compatibility Matrix for Treble
DEVICE_MANIFEST_FILE := \
device/google/gs201/manifest.xml
+ifneq ($(BOARD_WITHOUT_RADIO),true)
+DEVICE_MANIFEST_FILE += \
+ device/google/gs201/manifest_radio_ds.xml
+endif
DEVICE_MANIFEST_FILE += \
device/google/gs201/manifest_media.xml
@@ -195,6 +201,7 @@ DEVICE_MATRIX_FILE := \
device/google/gs201/compatibility_matrix.xml
DEVICE_PACKAGE_OVERLAYS += device/google/gs201/overlay
+DEVICE_PACKAGE_OVERLAYS += device/google/gs201/overlay-lineage
# This device is shipped with 33 (Android T)
PRODUCT_SHIPPING_API_LEVEL := 33
@@ -634,3 +641,37 @@ include device/google/gs-common/touch/twoshay/twoshay.mk
# since it can't be overridden from /vendor.
PRODUCT_PRODUCT_PROPERTIES += \
dumpstate.strict_run=false
+
+# AiAi Config
+PRODUCT_COPY_FILES += \
+ device/google/gs201/allowlist_com.google.android.as.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/sysconfig/allowlist_com.google.android.as.xml
+
+# Camera
+PRODUCT_PRODUCT_PROPERTIES += \
+ ro.vendor.camera.extensions.package=com.google.android.apps.camera.services \
+ ro.vendor.camera.extensions.service=com.google.android.apps.camera.services.extensions.service.PixelExtensions
+
+# Google Assistant
+PRODUCT_PRODUCT_PROPERTIES += ro.opa.eligible_device=true
+
+# Lineage Health
+include hardware/google/pixel/lineage_health/device.mk
+
+$(call soong_config_set,lineage_health,charging_control_supports_deadline,true)
+$(call soong_config_set,lineage_health,charging_control_supports_limit,true)
+$(call soong_config_set,lineage_health,charging_control_supports_toggle,false)
+
+# Linker config
+PRODUCT_VENDOR_LINKER_CONFIG_FRAGMENTS += \
+ device/google/gs201/linker.config.json
+
+# Parts
+PRODUCT_PACKAGES += \
+ GoogleParts
+
+# Tethering
+PRODUCT_PACKAGES += \
+ TetheringOverlay
+
+# Touch
+include hardware/google/pixel/touch/device.mk
diff --git a/lineage_common.mk b/lineage_common.mk
deleted file mode 100644
index 99434487..00000000
--- a/lineage_common.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-#
-# SPDX-FileCopyrightText: 2021-2024 The LineageOS Project
-# SPDX-FileCopyrightText: 2021-2024 The Calyx Institute
-# SPDX-License-Identifier: Apache-2.0
-#
-
-# Overlays
-DEVICE_PACKAGE_OVERLAYS += device/google/gs201/overlay-lineage
-
-# AiAi Config
-PRODUCT_COPY_FILES += \
- device/google/gs201/allowlist_com.google.android.as.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/sysconfig/allowlist_com.google.android.as.xml
-
-# Camera
-PRODUCT_PRODUCT_PROPERTIES += \
- ro.vendor.camera.extensions.package=com.google.android.apps.camera.services \
- ro.vendor.camera.extensions.service=com.google.android.apps.camera.services.extensions.service.PixelExtensions
-
-# Google Assistant
-PRODUCT_PRODUCT_PROPERTIES += ro.opa.eligible_device=true
-
-# Lineage Health
-include hardware/google/pixel/lineage_health/device.mk
-
-$(call soong_config_set,lineage_health,charging_control_supports_deadline,true)
-$(call soong_config_set,lineage_health,charging_control_supports_limit,true)
-$(call soong_config_set,lineage_health,charging_control_supports_toggle,false)
-
-# Linker config
-PRODUCT_VENDOR_LINKER_CONFIG_FRAGMENTS += \
- device/google/gs201/linker.config.json
-
-# Parts
-PRODUCT_PACKAGES += \
- GoogleParts
-
-# Tethering
-PRODUCT_PACKAGES += \
- TetheringOverlay
-
-# Touch
-include hardware/google/pixel/touch/device.mk
diff --git a/manifest.xml b/manifest.xml
index 8c6ed15e..e5a09381 100644
--- a/manifest.xml
+++ b/manifest.xml
@@ -3,4 +3,9 @@
android.hardware.boot
IBootControl/default
+
+ android.hardware.security.keymint
+ 3
+ IRemotelyProvisionedComponent/strongbox
+