Home | History | Annotate | Download | only in bonito
      1 #
      2 # Copyright (C) 2016 The Android Open-Source 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 include build/make/target/board/BoardConfigMainlineCommon.mk
     18 
     19 TARGET_BOARD_PLATFORM := sdm710
     20 TARGET_BOARD_INFO_FILE := device/google/bonito/board-info.txt
     21 USES_DEVICE_GOOGLE_B4S4 := true
     22 
     23 TARGET_ARCH := arm64
     24 TARGET_ARCH_VARIANT := armv8-a
     25 TARGET_CPU_ABI := arm64-v8a
     26 TARGET_CPU_ABI2 :=
     27 TARGET_CPU_VARIANT := generic
     28 TARGET_CPU_VARIANT_RUNTIME := cortex-a75
     29 
     30 TARGET_2ND_ARCH := arm
     31 TARGET_2ND_ARCH_VARIANT := armv8-a
     32 TARGET_2ND_CPU_ABI := armeabi-v7a
     33 TARGET_2ND_CPU_ABI2 := armeabi
     34 TARGET_2ND_CPU_VARIANT := generic
     35 TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a75
     36 
     37 TARGET_BOARD_COMMON_PATH := device/google/bonito/sdm710
     38 
     39 BUILD_BROKEN_DUP_RULES := true
     40 BUILD_BROKEN_ENG_DEBUG_TAGS := true
     41 
     42 BOARD_KERNEL_CMDLINE += console=ttyMSM0,115200n8 androidboot.console=ttyMSM0 printk.devkmsg=on
     43 BOARD_KERNEL_CMDLINE += msm_rtb.filter=0x237
     44 BOARD_KERNEL_CMDLINE += ehci-hcd.park=3
     45 BOARD_KERNEL_CMDLINE += service_locator.enable=1
     46 BOARD_KERNEL_CMDLINE += firmware_class.path=/vendor/firmware
     47 BOARD_KERNEL_CMDLINE += cgroup.memory=nokmem
     48 # STOPSHIP Bringup hack- no low power
     49 BOARD_KERNEL_CMDLINE += lpm_levels.sleep_disabled=1
     50 BOARD_KERNEL_CMDLINE += loop.max_part=7
     51 BOARD_KERNEL_CMDLINE += androidboot.boot_devices=soc/7c4000.sdhci
     52 
     53 BOARD_KERNEL_BASE        := 0x00000000
     54 BOARD_KERNEL_PAGESIZE    := 4096
     55 ifeq ($(filter-out bonito_kasan sargo_kasan, $(TARGET_PRODUCT)),)
     56 BOARD_KERNEL_OFFSET      := 0x80000
     57 BOARD_KERNEL_TAGS_OFFSET := 0x02500000
     58 BOARD_RAMDISK_OFFSET     := 0x02700000
     59 BOARD_MKBOOTIMG_ARGS     := --kernel_offset $(BOARD_KERNEL_OFFSET) --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_KERNEL_TAGS_OFFSET)
     60 else
     61 BOARD_KERNEL_TAGS_OFFSET := 0x01E00000
     62 BOARD_RAMDISK_OFFSET     := 0x02000000
     63 endif
     64 
     65 BOARD_INCLUDE_DTB_IN_BOOTIMG := true
     66 BOARD_BOOT_HEADER_VERSION := 2
     67 BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION)
     68 
     69 # DTBO partition definitions
     70 BOARD_PREBUILT_DTBOIMAGE := device/google/bonito-kernel/dtbo.img
     71 BOARD_DTBOIMG_PARTITION_SIZE := 8388608
     72 
     73 TARGET_NO_KERNEL := false
     74 BOARD_USES_RECOVERY_AS_BOOT := true
     75 BOARD_USES_METADATA_PARTITION := true
     76 
     77 BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4
     78 
     79 # Partitions (listed in the file) to be wiped under recovery.
     80 TARGET_RECOVERY_WIPE := device/google/bonito/recovery.wipe
     81 TARGET_RECOVERY_FSTAB := device/google/bonito/fstab.hardware
     82 TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
     83 TARGET_RECOVERY_UI_LIB := \
     84     librecovery_ui_bonito \
     85     libnos_citadel_for_recovery \
     86     libnos_for_recovery \
     87     libbootloader_message \
     88     libfstab
     89 
     90 # system.img
     91 BOARD_SYSTEMIMAGE_JOURNAL_SIZE := 0
     92 
     93 # persist.img
     94 BOARD_PERSISTIMAGE_PARTITION_SIZE := 41943040
     95 BOARD_PERSISTIMAGE_FILE_SYSTEM_TYPE := ext4
     96 
     97 # boot.img
     98 BOARD_BOOTIMAGE_PARTITION_SIZE := 0x04000000
     99 
    100 BOARD_EXT4_SHARE_DUP_BLOCKS := true
    101 BOARD_SUPER_PARTITION_GROUPS := google_dynamic_partitions
    102 BOARD_GOOGLE_DYNAMIC_PARTITIONS_PARTITION_LIST := \
    103     system \
    104     vendor \
    105     product
    106 
    107 BOARD_SUPER_PARTITION_SIZE := 4072669184
    108 BOARD_SUPER_PARTITION_METADATA_DEVICE := system
    109 BOARD_SUPER_PARTITION_BLOCK_DEVICES := system vendor
    110 BOARD_SUPER_PARTITION_SYSTEM_DEVICE_SIZE := 3267362816
    111 BOARD_SUPER_PARTITION_VENDOR_DEVICE_SIZE := 805306368
    112 # Assume 4MB metadata size.
    113 # TODO(b/117997386): Use correct metadata size.
    114 BOARD_GOOGLE_DYNAMIC_PARTITIONS_SIZE := 4068474880
    115 
    116 BOARD_FLASH_BLOCK_SIZE := 131072
    117 
    118 BOARD_ROOT_EXTRA_SYMLINKS := /mnt/vendor/persist:/persist
    119 BOARD_ROOT_EXTRA_SYMLINKS += /vendor/firmware_mnt:/firmware
    120 BOARD_ROOT_EXTRA_SYMLINKS += /vendor/dsp:/dsp
    121 
    122 include device/google/bonito-sepolicy/bonito-sepolicy.mk
    123 
    124 TARGET_FS_CONFIG_GEN := device/google/bonito/config.fs
    125 
    126 QCOM_BOARD_PLATFORMS += sdm710
    127 BOARD_HAVE_BLUETOOTH_QCOM := true
    128 BOARD_USES_COMMON_BLUETOOTH_HAL := true
    129 
    130 # Camera
    131 TARGET_USES_AOSP := true
    132 BOARD_QTI_CAMERA_32BIT_ONLY := false
    133 CAMERA_DAEMON_NOT_PRESENT := true
    134 TARGET_USES_ION := true
    135 TARGET_USES_EASEL := true
    136 BOARD_USES_EASEL := true
    137 
    138 # GPS
    139 TARGET_NO_RPC := true
    140 BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
    141 BOARD_VENDOR_QCOM_LOC_PDK_FEATURE_SET := true
    142 
    143 # RenderScript
    144 OVERRIDE_RS_DRIVER := libRSDriver_adreno.so
    145 
    146 # Sensors
    147 USE_SENSOR_MULTI_HAL := true
    148 TARGET_SUPPORT_DIRECT_REPORT := true
    149 
    150 # wlan
    151 BOARD_WLAN_DEVICE := qcwcn
    152 BOARD_WPA_SUPPLICANT_DRIVER := NL80211
    153 BOARD_HOSTAPD_DRIVER := NL80211
    154 WIFI_DRIVER_DEFAULT := qca_cld3
    155 WPA_SUPPLICANT_VERSION := VER_0_8_X
    156 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
    157 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE)
    158 WIFI_HIDL_FEATURE_AWARE := true
    159 WIFI_HIDL_FEATURE_DUAL_INTERFACE:= true
    160 
    161 # Audio
    162 BOARD_USES_ALSA_AUDIO := true
    163 AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
    164 AUDIO_FEATURE_ENABLED_SND_MONITOR := true
    165 AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
    166 AUDIO_FEATURE_ENABLED_CIRRUS_SPKR_PROTECTION := true
    167 BOARD_SUPPORTS_SOUND_TRIGGER := true
    168 AUDIO_FEATURE_FLICKER_SENSOR_INPUT := true
    169 SOUND_TRIGGER_FEATURE_LPMA_ENABLED := true
    170 AUDIO_FEATURE_ENABLED_MAXX_AUDIO := true
    171 BOARD_SUPPORTS_SOUND_TRIGGER_5514 := true
    172 AUDIO_FEATURE_ENABLED_24BITS_CAMCORDER := true
    173 
    174 # Graphics
    175 TARGET_USES_GRALLOC1 := true
    176 TARGET_USES_HWC2 := true
    177 TARGET_USES_NV21_CAMERA_PREVIEW := true
    178 
    179 VSYNC_EVENT_PHASE_OFFSET_NS := 2000000
    180 SF_VSYNC_EVENT_PHASE_OFFSET_NS := 6000000
    181 
    182 # Display
    183 TARGET_HAS_WIDE_COLOR_DISPLAY := false
    184 TARGET_USES_DISPLAY_RENDER_INTENTS := true
    185 TARGET_USES_COLOR_METADATA := true
    186 TARGET_USES_DRM_PP := true
    187 
    188 # Vendor Interface Manifest
    189 DEVICE_MANIFEST_FILE := device/google/bonito/manifest.xml
    190 DEVICE_MATRIX_FILE := device/google/bonito/compatibility_matrix.xml
    191 DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := device/google/bonito/device_framework_matrix.xml
    192 
    193 # Userdebug only Vendor Interface Manifest
    194 ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
    195 DEVICE_FRAMEWORK_MANIFEST_FILE += device/google/bonito/framework_manifest_userdebug.xml
    196 DEVICE_MATRIX_FILE += device/google/bonito/compatibility_matrix_userdebug.xml
    197 endif
    198 
    199 ODM_MANIFEST_SKUS := \
    200     G020A \
    201     G020B \
    202     G020C \
    203     G020D \
    204     G020E \
    205     G020F \
    206     G020G \
    207     G020H \
    208 
    209 ODM_MANIFEST_G020A_FILES := device/google/bonito/nfc/manifest_se_SIM1.xml
    210 ODM_MANIFEST_G020B_FILES := device/google/bonito/nfc/manifest_se_SIM1.xml
    211 ODM_MANIFEST_G020C_FILES := device/google/bonito/nfc/manifest_se_SIM1.xml
    212 ODM_MANIFEST_G020D_FILES := device/google/bonito/nfc/manifest_se_eSE1.xml
    213 ODM_MANIFEST_G020E_FILES := device/google/bonito/nfc/manifest_se_SIM1.xml
    214 ODM_MANIFEST_G020F_FILES := device/google/bonito/nfc/manifest_se_SIM1.xml
    215 ODM_MANIFEST_G020G_FILES := device/google/bonito/nfc/manifest_se_SIM1.xml
    216 ODM_MANIFEST_G020H_FILES := device/google/bonito/nfc/manifest_se_eSE1.xml
    217 
    218 # Use mke2fs to create ext4 images
    219 TARGET_USES_MKE2FS := true
    220 
    221 # Kernel modules
    222 ifeq (,$(filter-out sargo_kasan bonito_kasan, $(TARGET_PRODUCT)))
    223 BOARD_VENDOR_KERNEL_MODULES += \
    224     $(wildcard device/google/bonito-kernel/kasan/*.ko)
    225 else ifeq (,$(filter-out sargo_kernel_debug_memory bonito_kernel_debug_memory, $(TARGET_PRODUCT)))
    226 BOARD_VENDOR_KERNEL_MODULES += \
    227     $(wildcard device/google/bonito-kernel/debug_memory/*.ko)
    228 else ifeq (,$(filter-out sargo_kernel_debug_locking bonito_kernel_debug_locking, $(TARGET_PRODUCT)))
    229 BOARD_VENDOR_KERNEL_MODULES += \
    230     $(wildcard device/google/bonito-kernel/debug_locking/*.ko)
    231 else ifeq (,$(filter-out sargo_kernel_debug_hang bonito_kernel_debug_hang, $(TARGET_PRODUCT)))
    232 BOARD_VENDOR_KERNEL_MODULES += \
    233     $(wildcard device/google/bonito-kernel/debug_hang/*.ko)
    234 else ifeq (,$(filter-out sargo_kernel_debug_api bonito_kernel_debug_api, $(TARGET_PRODUCT)))
    235 BOARD_VENDOR_KERNEL_MODULES += \
    236     $(wildcard device/google/bonito-kernel/debug_api/*.ko)
    237 else
    238 BOARD_VENDOR_KERNEL_MODULES += \
    239     $(wildcard device/google/bonito-kernel/*.ko)
    240 endif
    241 
    242 # DTB
    243 ifeq (,$(filter-out sargo_kasan bonito_kasan, $(TARGET_PRODUCT)))
    244 BOARD_PREBUILT_DTBIMAGE_DIR := device/google/bonito-kernel/kasan
    245 else ifeq (,$(filter-out sargo_kernel_debug_memory bonito_kernel_debug_memory, $(TARGET_PRODUCT)))
    246 BOARD_PREBUILT_DTBIMAGE_DIR := device/google/bonito-kernel/debug_memory
    247 else ifeq (,$(filter-out sargo_kernel_debug_locking bonito_kernel_debug_locking, $(TARGET_PRODUCT)))
    248 BOARD_PREBUILT_DTBIMAGE_DIR := device/google/bonito-kernel/debug_locking
    249 else ifeq (,$(filter-out sargo_kernel_debug_hang bonito_kernel_debug_hang, $(TARGET_PRODUCT)))
    250 BOARD_PREBUILT_DTBIMAGE_DIR := device/google/bonito-kernel/debug_hang
    251 else ifeq (,$(filter-out sargo_kernel_debug_api bonito_kernel_debug_api, $(TARGET_PRODUCT)))
    252 BOARD_PREBUILT_DTBIMAGE_DIR := device/google/bonito-kernel/debug_api
    253 else
    254 BOARD_PREBUILT_DTBIMAGE_DIR := device/google/bonito-kernel
    255 endif
    256 
    257 # Testing related defines
    258 BOARD_PERFSETUP_SCRIPT := platform_testing/scripts/perf-setup/b4s4-setup.sh
    259 
    260 -include vendor/google_devices/bonito/proprietary/BoardConfigVendor.mk
    261