universal7580: update media_codecs and dmedia_profiles to A310FXXU4CRG2
[GitHub/LineageOS/android_device_samsung_universal7580-common.git] / BoardConfigCommon.mk
1 #
2 # Copyright (C) 2018 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 LOCAL_PATH := device/samsung/universal7580-common
18
19 # Include path
20 TARGET_SPECIFIC_HEADER_PATH := $(LOCAL_PATH)/include
21
22 ifneq ($(TARGET_DEVICE), gvwifi)
23 TARGET_SPECIFIC_HEADER_PATH += $(LOCAL_PATH)/ril/include
24 endif
25
26 # Firmware
27 TARGET_NO_BOOTLOADER := true
28 TARGET_NO_RADIOIMAGE := true
29
30 # Platform
31 TARGET_BOARD_PLATFORM := exynos5
32 TARGET_SLSI_VARIANT := cm
33 TARGET_SOC := exynos7580
34 TARGET_BOOTLOADER_BOARD_NAME := universal7580
35 BOARD_VENDOR := samsung
36
37 # CPU
38 TARGET_ARCH := arm
39 TARGET_ARCH_VARIANT := armv7-a-neon
40 TARGET_CPU_ABI := armeabi-v7a
41 TARGET_CPU_ABI2 := armeabi
42 TARGET_CPU_VARIANT := cortex-a53
43 TARGET_CPU_CORTEX_A53 := true
44
45 # Binder
46 TARGET_USES_64_BIT_BINDER := true
47
48 # Extracted with libbootimg
49 BOARD_CUSTOM_BOOTIMG := true
50 BOARD_CUSTOM_BOOTIMG_MK := hardware/samsung/mkbootimg.mk
51 BOARD_MKBOOTIMG_ARGS := --kernel_offset 0x00008000 --ramdisk_offset 0x01000000 --tags_offset 0x00000100
52 BOARD_KERNEL_BASE := 0x10000000
53 BOARD_KERNEL_PAGESIZE := 2048
54 BOARD_KERNEL_IMAGE_NAME := Image
55 #BOARD_KERNEL_CMDLINE := The bootloader ignores the cmdline from the boot.img
56 BOARD_KERNEL_SEPARATED_DT := true
57 TARGET_CUSTOM_DTBTOOL := dtbhtoolExynos
58
59 # Kernel
60 TARGET_KERNEL_ARCH := arm64
61 TARGET_KERNEL_CROSS_COMPILE_PREFIX := aarch64-linux-android-
62 KERNEL_TOOLCHAIN := $(ANDROID_BUILD_TOP)/prebuilts/gcc/$(HOST_OS)-x86/aarch64/aarch64-linux-android-4.9/bin
63 TARGET_LINUX_KERNEL_VERSION := 3.10
64
65 # Kernel config
66 TARGET_KERNEL_SOURCE := kernel/samsung/universal7580
67
68 # Use these flags if the board has a ext4 partition larger than 2gb
69 BOARD_HAS_LARGE_FILESYSTEM := true
70 TARGET_USERIMAGES_USE_EXT4 := true
71
72 # Extended filesystem support
73 TARGET_EXFAT_DRIVER := sdfat
74
75 # Vendor separation
76 TARGET_COPY_OUT_VENDOR := system/vendor
77
78 # Device Tree
79 BOARD_USES_DT := true
80
81 # Graphics
82 NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
83
84 # Screen casting
85 BOARD_USES_WFD := true
86
87 # BGRA mixing
88 BOARD_USE_BGRA_8888_FB := true
89
90 # Virtual display
91 BOARD_USES_VIRTUAL_DISPLAY := true
92
93 # FIMG2API
94 BOARD_USES_SKIA_FIMGAPI := true
95
96 # HDMI
97 BOARD_HDMI_INCAPABLE := true
98 BOARD_USES_GSC_VIDEO := true
99
100 # ION
101 TARGET_USES_ION := true
102
103 # Samsung OpenMAX Video
104 # BOARD_USE_STOREMETADATA := true -- not working due to invalid buffer handles
105 BOARD_USE_METADATABUFFERTYPE := true
106 BOARD_USE_DMA_BUF := true
107 BOARD_USE_ANB_OUTBUF_SHARE := true
108 BOARD_USE_IMPROVED_BUFFER := true
109 BOARD_USE_NON_CACHED_GRAPHICBUFFER := true
110 BOARD_USE_GSC_RGB_ENCODER := true
111 BOARD_USE_CSC_HW := false
112 BOARD_USE_QOS_CTRL := false
113 BOARD_USE_S3D_SUPPORT := true
114 BOARD_USE_VP8ENC_SUPPORT := true
115
116 # Scalar
117 BOARD_USES_SCALER := true
118
119 # HWCServices - requires framework support
120 #BOARD_USES_HWC_SERVICES := true
121
122 # Samsung HALs
123 TARGET_AUDIOHAL_VARIANT := samsung
124 TARGET_POWERHAL_VARIANT := samsung
125
126 # Wifi
127 BOARD_WLAN_DEVICE := bcmdhd
128 WPA_SUPPLICANT_VERSION := VER_0_8_X
129 BOARD_WPA_SUPPLICANT_DRIVER := NL80211
130 BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_bcmdhd
131 WPA_SUPPLICANT_USE_HIDL := true
132 BOARD_HOSTAPD_DRIVER := NL80211
133 BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_bcmdhd
134 WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/dhd/parameters/firmware_path"
135 WIFI_DRIVER_NVRAM_PATH_PARAM := "/sys/module/dhd/parameters/nvram_path"
136 WIFI_DRIVER_NVRAM_PATH := "/vendor/etc/wifi/nvram_net.txt"
137 WIFI_DRIVER_FW_PATH_STA := "/vendor/etc/wifi/bcmdhd_sta.bin"
138 WIFI_DRIVER_FW_PATH_AP := "/vendor/etc/wifi/bcmdhd_apsta.bin"
139 WIFI_BAND := 802_11_ABG
140
141 # MACLOADER
142 BOARD_HAVE_SAMSUNG_WIFI := true
143
144 # Bluetooth
145 BOARD_CUSTOM_BT_CONFIG := $(LOCAL_PATH)/bluetooth/libbt_vndcfg.txt
146 BOARD_HAVE_BLUETOOTH := true
147 BOARD_HAVE_BLUETOOTH_BCM := true
148 BOARD_HAVE_SAMSUNG_BLUETOOTH := true
149
150 # Lineage Hardware
151 BOARD_HARDWARE_CLASS := hardware/samsung/lineagehw $(LOCAL_PATH)/lineagehw
152
153 # Backlight
154 BACKLIGHT_PATH := "/sys/class/backlight/panel/brightness"
155
156 # Recovery
157 TARGET_RECOVERY_FSTAB := $(LOCAL_PATH)/ramdisk/etc/fstab.samsungexynos7580
158
159 # SELinux
160 BOARD_SEPOLICY_DIRS += device/samsung/universal7580-common/sepolicy
161 BOARD_SEPOLICY_VERS := $(PLATFORM_SDK_VERSION).0
162
163 # Shims
164 TARGET_LD_SHIM_LIBS := \
165 /system/lib/omx/libOMX.Exynos.AVC.Decoder.so|/vendor/lib/libui_shim.so \
166 /system/lib/omx/libOMX.Exynos.AVC.Encoder.so|/vendor/lib/libui_shim.so \
167 /system/lib/omx/libOMX.Exynos.MPEG4.Decoder.so|/vendor/lib/libui_shim.so \
168 /system/lib/omx/libOMX.Exynos.MPEG4.Encoder.so|/vendor/lib/libui_shim.so \
169 /system/lib/omx/libOMX.Exynos.VP8.Decoder.so|/vendor/lib/libui_shim.so \
170 /system/lib/omx/libOMX.Exynos.VP8.Encoder.so|/vendor/lib/libui_shim.so \
171 /system/lib/omx/libOMX.Exynos.WMV.Decoder.so|/vendor/lib/libui_shim.so