BoardConfigCommon.mk 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. #
  2. # Copyright (C) 2025 The Android Open Source Project
  3. # Copyright (C) 2025 The TWRP Open Source Project
  4. #
  5. # SPDX-License-Identifier: Apache-2.0
  6. #
  7. COMMON_PATH := device/samsung/sm8550-common
  8. # Architecture
  9. TARGET_ARCH := arm64
  10. TARGET_ARCH_VARIANT := armv8-a
  11. TARGET_CPU_ABI := arm64-v8a
  12. TARGET_CPU_ABI2 :=
  13. TARGET_CPU_VARIANT := generic
  14. TARGET_CPU_VARIANT_RUNTIME := kryo385
  15. TARGET_2ND_ARCH := arm
  16. TARGET_2ND_ARCH_VARIANT := armv8-a
  17. TARGET_2ND_CPU_ABI := armeabi-v7a
  18. TARGET_2ND_CPU_ABI2 := armeabi
  19. TARGET_2ND_CPU_VARIANT := generic
  20. TARGET_2ND_CPU_VARIANT_RUNTIME := kryo385
  21. # Bootloader
  22. TARGET_BOOTLOADER_BOARD_NAME := kalama
  23. TARGET_NO_BOOTLOADER := true
  24. # Platform
  25. TARGET_BOARD_PLATFORM := kalama
  26. TARGET_BOARD_PLATFORM_GPU := qcom-adreno740
  27. # Kernel
  28. BOARD_BOOTIMG_HEADER_VERSION := 4
  29. BOARD_KERNEL_BASE := 0x00000000
  30. BOARD_KERNEL_CMDLINE := androidboot.hardware=qcom androidboot.memcg=1 lpm_levels.sleep_disabled=1 video=vfb:640x400,bpp=32,memsize=3072000 msm_rtb.filter=0x237 service_locator.enable=1 androidboot.usbcontroller=a600000.dwc3 swiotlb=0 loop.max_part=7 cgroup.memory=nokmem,nosocket pcie_ports=compat loop.max_part=7 iptable_raw.raw_before_defrag=1 ip6table_raw.raw_before_defrag=1 printk.devkmsg=on
  31. BOARD_KERNEL_PAGESIZE := 4096
  32. BOARD_RAMDISK_OFFSET := 0x01000000
  33. BOARD_KERNEL_TAGS_OFFSET := 0x00000100
  34. BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOTIMG_HEADER_VERSION)
  35. BOARD_MKBOOTIMG_ARGS += --ramdisk_offset $(BOARD_RAMDISK_OFFSET)
  36. BOARD_MKBOOTIMG_ARGS += --tags_offset $(BOARD_KERNEL_TAGS_OFFSET)
  37. BOARD_KERNEL_IMAGE_NAME := Image.gz
  38. TARGET_KERNEL_CONFIG := sm8550_defconfig
  39. TARGET_KERNEL_SOURCE := kernel/samsung/sm8550
  40. TARGET_PREBUILT_KERNEL := $(COMMON_PATH)/prebuilt/Image.gz
  41. # Partitions
  42. BOARD_FLASH_BLOCK_SIZE := 131072 # (BOARD_KERNEL_PAGESIZE * 64)
  43. BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
  44. BOARD_RECOVERYIMAGE_PARTITION_SIZE := 100663296
  45. BOARD_HAS_LARGE_FILESYSTEM := true
  46. BOARD_SYSTEMIMAGE_PARTITION_TYPE := ext4
  47. BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
  48. BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
  49. # Dynamic Partitions
  50. BOARD_SUPER_PARTITION_SIZE := 10737418240
  51. BOARD_SUPER_PARTITION_GROUPS := samsung_dynamic_partitions
  52. BOARD_SAMSUNG_DYNAMIC_PARTITIONS_PARTITION_LIST := system vendor product odm system_ext vendor_dlkm system_dlkm
  53. BOARD_SAMSUNG_DYNAMIC_PARTITIONS_SIZE := 10733223936
  54. BOARD_USES_METADATA_PARTITION := true
  55. # File systems
  56. BOARD_HAS_LARGE_FILESYSTEM := true
  57. BOARD_RECOVERYIMAGE_PARTITION_SIZE := 100663296
  58. BOARD_SYSTEMIMAGE_PARTITION_TYPE := ext4
  59. BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
  60. BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
  61. TARGET_USERIMAGES_USE_EXT4 := true
  62. TARGET_USERIMAGES_USE_F2FS := true
  63. # Recovery
  64. TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
  65. TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/recovery/root/system/etc/recovery.fstab
  66. # TWRP Configuration
  67. TW_THEME := portrait_hdpi
  68. TW_EXTRA_LANGUAGES := true
  69. TW_SCREEN_BLANK_ON_BOOT := true
  70. TW_INPUT_BLACKLIST := "hbtp_vm"
  71. TW_USE_TOOLBOX := true
  72. TW_INCLUDE_REPACKTOOLS := true
  73. TW_INCLUDE_RESETPROP := true
  74. TW_INCLUDE_LIBRESETPROP := true
  75. TW_HAS_DOWNLOAD_MODE := true
  76. TW_INCLUDE_NTFS_3G := true
  77. TW_EXCLUDE_TWRPAPP := true
  78. TW_INCLUDE_LOGICAL := true
  79. TW_SUPPORT_INPUT_AIDL_HAPTICS := true
  80. TW_USE_NEW_MINADBD := true
  81. TW_BACKUP_EXCLUSIONS := /data/fonts
  82. # TWRP Debug Flags
  83. TWRP_EVENT_LOGGING := true
  84. TARGET_USES_LOGD := true
  85. TWRP_INCLUDE_LOGCAT := true
  86. TARGET_RECOVERY_DEVICE_MODULES += debuggerd
  87. TW_RECOVERY_ADDITIONAL_RELINK_FILES += $(TARGET_OUT_EXECUTABLES)/debuggerd
  88. TW_NO_LEGACY_PROPS := true
  89. # Encryption
  90. TW_INCLUDE_CRYPTO := true
  91. TW_INCLUDE_CRYPTO_FBE := true
  92. TW_INCLUDE_FBE_METADATA_DECRYPT := true
  93. BOARD_USES_METADATA_PARTITION := true
  94. # AVB
  95. BOARD_AVB_ENABLE := true
  96. BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
  97. BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
  98. BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA4096
  99. BOARD_AVB_RECOVERY_ROLLBACK_INDEX := 1
  100. BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
  101. # Additional bootctl HAL
  102. PRODUCT_PACKAGES += \
  103. android.hardware.boot@1.2-impl \
  104. android.hardware.boot@1.2-impl.recovery \
  105. android.hardware.boot@1.2-service
  106. # OrangeFox Configuration
  107. OF_MAINTAINER := "Eduardob3677"
  108. OF_SCREEN_H := 2400
  109. OF_STATUS_H := 100
  110. OF_STATUS_INDENT_LEFT := 48
  111. OF_STATUS_INDENT_RIGHT := 48
  112. OF_HIDE_NOTCH := 1
  113. OF_CLOCK_POS := 1
  114. OF_ALLOW_DISABLE_NAVBAR := 0
  115. # OrangeFox Additional Features
  116. OF_USE_MAGISKBOOT := 1
  117. OF_USE_MAGISKBOOT_FOR_ALL_PATCHES := 1
  118. OF_DONT_PATCH_ENCRYPTED_DEVICE := 1
  119. OF_NO_TREBLE_COMPATIBILITY_CHECK := 1
  120. OF_NO_MIUI_PATCH_WARNING := 1
  121. OF_TWRP_COMPATIBILITY_MODE := 1
  122. OF_TARGET_DEVICES := "dm1q,dm2q,dm3q,b5q,q5q,gts9,gts9wifi,gts9p,gts9pwifi,gts9u,gts9uwifi"
  123. # Set common flag
  124. TARGET_SM8550_COMMON := true