exynos9610: Include samsung_slsi-linaro soong namespaces
[GitHub/LineageOS/android_device_motorola_exynos9610-common.git] / BoardConfigCommon.mk
1 #
2 # Copyright (C) 2020-2021 The LineageOS Project
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 # http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16
17 COMMON_PATH := device/motorola/exynos9610-common
18
19 ## Include path
20 TARGET_SPECIFIC_HEADER_PATH := $(COMMON_PATH)/include
21
22 ## Inherit proprietary vendor configuartion
23 include vendor/motorola/exynos9610-common/BoardConfigVendor.mk
24
25 # BUILD_BROKEN_*
26 BUILD_BROKEN_DUP_RULES := true
27 BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
28
29 ## A/B
30 AB_OTA_UPDATER := true
31
32 AB_OTA_PARTITIONS += \
33 boot \
34 dtbo \
35 system \
36 vbmeta \
37 vendor
38
39 ## Architecture
40 TARGET_ARCH := arm64
41 TARGET_ARCH_VARIANT := armv8-a
42 TARGET_CPU_ABI := arm64-v8a
43 TARGET_CPU_ABI2 :=
44 TARGET_CPU_VARIANT := generic
45 TARGET_CPU_VARIANT_RUNTIME := cortex-a73
46
47 ## Architecture (Secondary)
48 TARGET_2ND_ARCH := arm
49 TARGET_2ND_ARCH_VARIANT := armv8-a
50 TARGET_2ND_CPU_ABI := armeabi-v7a
51 TARGET_2ND_CPU_ABI2 := armeabi
52 TARGET_2ND_CPU_VARIANT := generic
53 TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a53
54
55 ## Bluetooth
56 BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(COMMON_PATH)/bluetooth
57 BOARD_HAVE_BLUETOOTH_SLSI := true
58
59 ## Boot Image
60 # Extracted with libbootimg
61 BOARD_BOOTIMG_HEADER_VERSION := 1
62 BOARD_KERNEL_BASE := 0x10000000
63 BOARD_KERNEL_CMDLINE := loop.max_part=7 androidboot.boot_devices=13520000.ufs
64 BOARD_KERNEL_OFFSET := 0x00008000
65 BOARD_KERNEL_PAGESIZE := 2048
66 BOARD_RAMDISK_OFFSET := 0x00000000
67 BOARD_SECOND_OFFSET := 0x00000000
68 BOARD_TAGS_OFFSET := 0x00000000
69
70 BOARD_MKBOOTIMG_ARGS := --base $(BOARD_KERNEL_BASE) --pagesize $(BOARD_KERNEL_PAGESIZE) --kernel_offset $(BOARD_KERNEL_OFFSET) --second_offset $(BOARD_SECOND_OFFSET) --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_TAGS_OFFSET) --header_version $(BOARD_BOOTIMG_HEADER_VERSION)
71
72 ## Bootloader
73 TARGET_BOOTLOADER_IS_2ND := true
74
75 ## Display
76 TARGET_SCREEN_DENSITY := 420
77
78 ## DTBO
79 BOARD_DTBO_CFG := $(COMMON_PATH)/configs/dtboimg.cfg
80 BOARD_KERNEL_SEPARATED_DTBO := true
81
82 ## Filesystem
83 BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
84 TARGET_COPY_OUT_VENDOR := vendor
85 TARGET_FS_CONFIG_GEN += $(COMMON_PATH)/config.fs
86 TARGET_USERIMAGES_USE_EXT4 := true
87 TARGET_USERIMAGES_USE_F2FS := true
88
89 ## FM Radio
90 BOARD_HAVE_SLSI_FM := true
91
92 ## Kernel
93 BOARD_KERNEL_IMAGE_NAME := Image
94 TARGET_KERNEL_CLANG_VERSION := r416183b
95 TARGET_KERNEL_CLANG_PATH := $(abspath .)/prebuilts/clang/kernel/$(HOST_PREBUILT_TAG)/clang-$(TARGET_KERNEL_CLANG_VERSION)
96 TARGET_KERNEL_LLVM_BINUTILS := false
97 TARGET_KERNEL_SOURCE := kernel/motorola/exynos9610
98
99 ## Lineage Health
100 TARGET_HEALTH_CHARGING_CONTROL_CHARGING_ENABLED := 0
101 TARGET_HEALTH_CHARGING_CONTROL_CHARGING_DISABLED := 1
102 TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_BYPASS := false
103 TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_TOGGLE := true
104 TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_DEADLINE := false
105
106 ## Manifest
107 DEVICE_MANIFEST_FILE := $(COMMON_PATH)/manifest.xml
108
109 ## Partitions
110 BOARD_BOOTIMAGE_PARTITION_SIZE := 67108864
111 BOARD_DTBOIMG_PARTITION_SIZE := 1048576
112 BOARD_FLASH_BLOCK_SIZE := 131072 # (BOARD_KERNEL_PAGESIZE * 64)
113 BOARD_SYSTEMIMAGE_PARTITION_SIZE := 3221225472
114 BOARD_USERDATAIMAGE_PARTITION_SIZE := 118974455808
115 BOARD_USES_METADATA_PARTITION := true
116 BOARD_VENDORIMAGE_PARTITION_SIZE := 805306368
117
118 ## Platform
119 TARGET_BOARD_PLATFORM := exynos9610
120 TARGET_BOOTLOADER_BOARD_NAME := exynos9610
121 TARGET_SOC := exynos9610
122
123 ## Properties
124 BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
125 TARGET_PRODUCT_PROP += $(COMMON_PATH)/product.prop
126 TARGET_SYSTEM_PROP += $(COMMON_PATH)/system.prop
127 TARGET_VENDOR_PROP += $(COMMON_PATH)/vendor.prop
128
129 ## Recovery
130 BOARD_USES_RECOVERY_AS_BOOT := true
131 TARGET_NO_RECOVERY := true
132 TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/recovery.fstab
133 TARGET_RECOVERY_PIXEL_FORMAT := "ABGR_8888"
134
135 ## RIL
136 ENABLE_VENDOR_RIL_SERVICE := true
137
138 ## Security
139 VENDOR_SECURITY_PATCH := 2022-05-01
140
141 ## SELinux
142 BOARD_SEPOLICY_TEE_FLAVOR := mobicore
143 include device/lineage/sepolicy/exynos/sepolicy.mk
144 include device/samsung_slsi/sepolicy/sepolicy.mk
145
146 PRODUCT_PRIVATE_SEPOLICY_DIRS += $(COMMON_PATH)/sepolicy/private
147 BOARD_VENDOR_SEPOLICY_DIRS += $(COMMON_PATH)/sepolicy/vendor
148
149 ## Soong Namespace
150 PRODUCT_SOONG_NAMESPACES += $(COMMON_PATH)
151
152 ## Treble
153 BOARD_VNDK_VERSION := current
154
155 ## Verified Boot
156 BOARD_AVB_ENABLE := true
157 BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
158 BOARD_AVB_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
159
160 ## Wi-Fi
161 BOARD_WLAN_DEVICE := slsi
162 BOARD_WPA_SUPPLICANT_DRIVER := NL80211
163 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_slsi
164 BOARD_HOSTAPD_DRIVER := NL80211
165 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_slsi
166 WIFI_HIDL_FEATURE_DUAL_INTERFACE := true
167 WPA_SUPPLICANT_VERSION := VER_0_8_X
168
169 PRODUCT_CFI_INCLUDE_PATHS += hardware/samsung_slsi/scsc_wifibt/wpa_supplicant_lib
170
171 ## BSP (Must be included last)
172 include hardware/samsung_slsi-linaro/config/BoardConfig9610.mk