BoardConfig.mk

  • DEVICE_PATH: is the path to the directory which contains this file and is later used to include other files. [Ex: /device/xiaomi/vili]

ARCHITECTURE

PLATFORM

  • The board platform is lahaina. This is basically the code name for Snapdragon 888(sm8350).

KERNEL

Refer to Boot partition to understand where the kernel is stored.

  • TODO

AUDIO

AUDIOPOLICY

  • USE_CUSTOM_AUDIO_POLICY: This is set to 1 . This will ignore the aosp audio policy and use CAF audio policy.

AUDIO

  • TODO

BLUETOOTH

  • BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(DEVICE_PATH)/bluetooth/include
  • A header file is created in the include directory called bdroid_buildcfg.h.
  • BTM_DEF_LOCAL_NAME in bdroid_buildcfg.h is set to the default bluetooth name.

CAMERA

  • TARGET_USES_QTI_CAMERA_DEVICE:

HIDL

Device manifest

  • The device manifest amd compatibility matrix can be found in the vendor partition. /vendor/etc/vintf/
  • DEVICE_MANIFEST_FILE: is used to specify the device manifest file(s).
  • DEVICE_MATRIX_FILE: is used to specify the device compatibility matrix.

Framework manifest

TODO

Security patch level

  • VENDOR_SECURITY_PATCH: can be found in vendor build props ro.vendor.build.security_patch

Partitions

  • The path to the partitions can be found using their name by:
ls -l /dev/block/bootdevice/by-name
  • To get partition sizes use the following command:
blockdev --getsize64 <partition-path>
  • For each partition use the flag
BOARD_<partition-name-in-capital>IMAGE_PARTITION_SIZE
  • Get the sizes for the following partitions:
    • boot
    • dtbo
    • super
    • vendor_boot
  • super image contains odm, product, vendor, system, system_ext.
  • Partition types can be found in /vendor/etc/fstab.default.

AVB

Android verified boot

Properties

Sepolicy

Inherit proprietary blobs

  • extract files shell scripts — TODO

Recovery

MISC

  • BUILD_BROKEN_DUP_RULES:

Android.mk

nonhols — todo