BoardConfig.mk 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. #
  2. # Copyright (C) 2023 The Android Open Source Project
  3. # Copyright (C) 2023 SebaUbuntu's TWRP device tree generator
  4. #
  5. # SPDX-License-Identifier: Apache-2.0
  6. #
  7. DEVICE_PATH := device/nokia/cap_sprout
  8. # For building with minimal manifest
  9. ALLOW_MISSING_DEPENDENCIES := true
  10. # A/B
  11. AB_OTA_UPDATER := true
  12. AB_OTA_PARTITIONS += \
  13. boot \
  14. system \
  15. system_ext \
  16. product \
  17. vendor \
  18. vbmeta_system
  19. # Architecture
  20. TARGET_ARCH := arm64
  21. TARGET_ARCH_VARIANT := armv8-a
  22. TARGET_CPU_ABI := arm64-v8a
  23. TARGET_CPU_ABI2 :=
  24. TARGET_CPU_VARIANT := generic
  25. TARGET_CPU_VARIANT_RUNTIME := generic
  26. TARGET_2ND_ARCH := arm
  27. TARGET_2ND_ARCH_VARIANT := armv7-a-neon
  28. TARGET_2ND_CPU_ABI := armeabi-v7a
  29. TARGET_2ND_CPU_ABI2 := armeabi
  30. TARGET_2ND_CPU_VARIANT := generic
  31. TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a9
  32. # APEX
  33. #DEXPREOPT_GENERATE_APEX_IMAGE := true
  34. TW_EXCLUDE_APEX := true
  35. # Bootloader
  36. TARGET_NO_BOOTLOADER := true
  37. # Build Rules
  38. BUILD_BROKEN_DUP_RULES := true
  39. BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
  40. # Crypto
  41. TW_INCLUDE_CRYPTO := true
  42. TW_INCLUDE_CRYPTO_FBE := true
  43. TW_INCLUDE_FBE_METADATA_DECRYPT := true
  44. BOARD_USES_QCOM_FBE_DECRYPTION := true
  45. # Debugging Configs
  46. TWRP_INCLUDE_LOGCAT := true
  47. TARGET_USES_LOGD := true
  48. # Kernel
  49. BOARD_BOOT_HEADER_VERSION := 2
  50. BOARD_KERNEL_IMAGE_NAME := kernel
  51. BOARD_KERNEL_BASE := 0x00000000
  52. BOARD_KERNEL_CMDLINE := androidboot.hardware=qcom androidboot.console=ttyMSM0 androidboot.memcg=1 lpm_levels.sleep_disabled=1 video=vfb:640x400,bpp=32,memsize=3072000 msm_rtb.filter=0x237 service_locator.enable=1 swiotlb=1 earlycon=msm_geni_serial,0x4a90000 loop.max_part=7 cgroup.memory=nokmem,nosocket
  53. BOARD_KERNEL_PAGESIZE := 4096
  54. BOARD_RAMDISK_OFFSET := 0x01000000
  55. BOARD_KERNEL_TAGS_OFFSET := 0x00000100
  56. TARGET_KERNEL_CONFIG := cap_sprout_defconfig
  57. TARGET_KERNEL_SOURCE := kernel/nokia/cap_sprout
  58. TARGET_PREBUILT_KERNEL := $(DEVICE_PATH)/prebuilt/$(BOARD_KERNEL_IMAGE_NAME)
  59. TARGET_PREBUILT_DTB := $(DEVICE_PATH)/prebuilt/dtb.img
  60. BOARD_PREBUILT_DTBOIMAGE := $(DEVICE_PATH)/prebuilt/dtbo.img
  61. BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION)
  62. BOARD_MKBOOTIMG_ARGS += --ramdisk_offset $(BOARD_RAMDISK_OFFSET)
  63. BOARD_MKBOOTIMG_ARGS += --tags_offset $(BOARD_KERNEL_TAGS_OFFSET)
  64. BOARD_MKBOOTIMG_ARGS += --dtb $(TARGET_PREBUILT_DTB)
  65. # Metadata
  66. BOARD_USES_METADATA_PARTITION := true
  67. # Partitions
  68. BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64)
  69. BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
  70. BOARD_RECOVERYIMAGE_PARTITION_SIZE := 100663296
  71. BOARD_HAS_LARGE_FILESYSTEM := true
  72. BOARD_SYSTEMIMAGE_PARTITION_TYPE := ext4
  73. BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := ext4
  74. BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
  75. TARGET_COPY_OUT_VENDOR := vendor
  76. BOARD_SUPER_PARTITION_SIZE := 9126805504 # TODO: Fix hardcoded value
  77. BOARD_SUPER_PARTITION_GROUPS := nokia_dynamic_partitions
  78. BOARD_NOKIA_DYNAMIC_PARTITIONS_PARTITION_LIST := system system_ext product vendor
  79. BOARD_NOKIA_DYNAMIC_PARTITIONS_SIZE := 9122611200 # TODO: Fix hardcoded value
  80. # Platform
  81. BOARD_USES_QCOM_HARDWARE := true
  82. TARGET_BOARD_PLATFORM := trinket
  83. TARGET_BOOTLOADER_BOARD_NAME := $(TARGET_BOARD_PLATFORM)
  84. QCOM_BOARD_PLATFORMS := $(TARGET_BOARD_PLATFORM)
  85. # Recovery
  86. BOARD_INCLUDE_RECOVERY_DTBO := true
  87. TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
  88. TARGET_USERIMAGES_USE_EXT4 := true
  89. TARGET_USERIMAGES_USE_F2FS := true
  90. TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/recovery.fstab
  91. TARGET_VENDOR_PROP := $(DEVICE_PATH)/vendor.prop
  92. # Verified Boot
  93. BOARD_AVB_ENABLE := true
  94. BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
  95. # Security Patch
  96. PLATFORM_SECURITY_PATCH := 2099-12-31
  97. VENDOR_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
  98. # Platform Version
  99. PLATFORM_VERSION := 99.87.36
  100. PLATFORM_VERSION_LAST_STABLE := $(PLATFORM_VERSION)
  101. # TWRP Configuration
  102. TW_THEME := portrait_hdpi
  103. TW_QCOM_ATS_OFFSET := 1628425424000
  104. TW_EXTRA_LANGUAGES := true
  105. TW_SCREEN_BLANK_ON_BOOT := true
  106. TW_INPUT_BLACKLIST := "hbtp_vm"
  107. TW_USE_TOOLBOX := true
  108. TW_INCLUDE_REPACKTOOLS := true
  109. TW_NO_FLASH_CURRENT_TWRP := true # For A/B devices that has dedicated recovery, removing that option in Advance.
  110. TW_EXCLUDE_DEFAULT_USB_INIT := true
  111. TW_HAS_MTP := true
  112. TW_FORCE_KEYMASTER_VER := true
  113. OF_DEFAULT_KEYMASTER_VERSION := 4.1
  114. TW_MAX_BRIGHTNESS := 255
  115. #TW_Y_OFFSET := 60
  116. #TW_H_OFFSET := -60
  117. TW_FRAMERATE := 60
  118. # Partitions (listed in the file) to be wiped under recovery.
  119. TARGET_RECOVERY_WIPE := $(DEVICE_PATH)/recovery.wipe
  120. #ENABLE_CPUSETS := true
  121. #ENABLE_SCHEDBOOST := true
  122. #TARGET_USES_UEFI := true
  123. # mke2fs
  124. TARGET_USES_MKE2FS := true
  125. TW_OVERRIDE_SYSTEM_PROPS := \
  126. "ro.build.product;ro.build.fingerprint=ro.system.build.fingerprint;ro.build.version.incremental;ro.product.device=ro.product.system.device;ro.product.model=ro.product.system.model;ro.product.name=ro.product.system.name"
  127. # Maintainer/Version
  128. include $(DEVICE_PATH)/version.mk