From d3ad2f99ce7c7b9957fda694d102b4d4e7a038cb Mon Sep 17 00:00:00 2001 From: Juan Yescas Date: Tue, 2 Jul 2024 11:13:44 -0700 Subject: [PATCH] 16kb: Set 16kb TARGET_ vars in BoardConfig files and targets TARGET_ build variables MUST NOT be set up in device* files. In the device* files, the PRODUCT_ variables are not defined properly and only after the build system finishes parsing all the product files, we can set up TARGET_ vars based on PRODUCT_ vars. During the parsing of the BoardConfig files, the PRODUCT_ vars are defined and their values can not be changed. Test: Built and tested husky-next and husky-pgagnostic targets $ source build/envsetup.sh $ lunch husky-trunk_staging-userdebug $ get_build_var PRODUCT_16K_DEVELOPER_OPTION true $ get_build_var TARGET_BOOTS_16K $ get_build_var TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE $ get_build_var TARGET_KERNEL_DIR device/google/shusky-kernels/6.1/trunk-12034122 $ get_build_var BOARD_KERNEL_PATH_16K device/google/shusky-kernels/6.1/trunk-12034122/16kb/Image.lz4 $ get_build_var TARGET_KERNEL_DIR_16K device/google/shusky-kernels/6.1/trunk-12034122/16kb $ get_build_var ADDITIONAL_PRODUCT_PROPERTIES | grep 16k ro.product.build.16k_page.enabled=true $ get_build_var PRODUCT_COPY_FILES | grep efs device/google/zuma/conf/init.efs.16k.rc:vendor/etc/init/init.efs.rc $ get_build_var PRODUCT_SOONG_NAMESPACES | grep insmod device/google/gs-common/insmod/4k Bug: 350529323 Bug: 346868433 Flag: EXEMPT bugfix Change-Id: Ic1da7f21b696f1659ef7d7b0b7089c3d2c03103e --- BoardConfig-shusky-common.mk | 6 +++++- device-husky.mk | 6 +----- device-shiba.mk | 6 +----- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/BoardConfig-shusky-common.mk b/BoardConfig-shusky-common.mk index f2ede26..90ceb83 100644 --- a/BoardConfig-shusky-common.mk +++ b/BoardConfig-shusky-common.mk @@ -14,7 +14,11 @@ # limitations under the License. # -ifeq ($(PRODUCT_16K_DEVELOPER_OPTION),true) +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 diff --git a/device-husky.mk b/device-husky.mk index 50a1582..a9f860d 100644 --- a/device-husky.mk +++ b/device-husky.mk @@ -31,11 +31,7 @@ ifeq ($(filter factory_husky, $(TARGET_PRODUCT)),) include device/google/shusky/uwb/uwb_calibration.mk endif -ifeq ($(PRODUCT_BOOTS_16K),true) -TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE := ext4 -TARGET_KERNEL_DIR := $(RELEASE_KERNEL_HUSKY_DIR)/16kb -TARGET_RW_FILE_SYSTEM_TYPE := ext4 -else +ifneq ($(TARGET_BOOTS_16K),true) PRODUCT_16K_DEVELOPER_OPTION := $(RELEASE_GOOGLE_HUSKY_16K_DEVELOPER_OPTION) endif diff --git a/device-shiba.mk b/device-shiba.mk index f96a9a1..d178c67 100644 --- a/device-shiba.mk +++ b/device-shiba.mk @@ -24,11 +24,7 @@ TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_SHIBA_DIR)/kernel-headers LOCAL_PATH := device/google/shusky -ifeq ($(PRODUCT_BOOTS_16K),true) -TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE := ext4 -TARGET_KERNEL_DIR := $(RELEASE_KERNEL_SHIBA_DIR)/16kb -TARGET_RW_FILE_SYSTEM_TYPE := ext4 -else +ifneq ($(TARGET_BOOTS_16K),true) PRODUCT_16K_DEVELOPER_OPTION := $(RELEASE_GOOGLE_SHIBA_16K_DEVELOPER_OPTION) endif