universal7580: camera: create a worker thread to handle all callbacks to avoid hard...
[GitHub/LineageOS/android_device_samsung_universal7580-common.git] / BoardConfigCommon.mk
CommitLineData
583a3f4a
S
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
17LOCAL_PATH := device/samsung/universal7580-common
18
19# Include path
20TARGET_SPECIFIC_HEADER_PATH := $(LOCAL_PATH)/include
21
1358b287
S
22ifneq ($(TARGET_DEVICE), gvwifi)
23TARGET_SPECIFIC_HEADER_PATH += $(LOCAL_PATH)/ril/include
24endif
25
583a3f4a
S
26# Firmware
27TARGET_NO_BOOTLOADER := true
28TARGET_NO_RADIOIMAGE := true
29
30# Platform
31TARGET_BOARD_PLATFORM := exynos5
e148bed6 32TARGET_SLSI_VARIANT := bsp
583a3f4a
S
33TARGET_SOC := exynos7580
34TARGET_BOOTLOADER_BOARD_NAME := universal7580
9e24d026 35BOARD_VENDOR := samsung
583a3f4a
S
36
37# CPU
38TARGET_ARCH := arm
39TARGET_ARCH_VARIANT := armv7-a-neon
40TARGET_CPU_ABI := armeabi-v7a
41TARGET_CPU_ABI2 := armeabi
42TARGET_CPU_VARIANT := cortex-a53
43TARGET_CPU_CORTEX_A53 := true
44
45# Binder
46TARGET_USES_64_BIT_BINDER := true
47
48# Extracted with libbootimg
49BOARD_CUSTOM_BOOTIMG := true
50BOARD_CUSTOM_BOOTIMG_MK := hardware/samsung/mkbootimg.mk
51BOARD_MKBOOTIMG_ARGS := --kernel_offset 0x00008000 --ramdisk_offset 0x01000000 --tags_offset 0x00000100
52BOARD_KERNEL_BASE := 0x10000000
53BOARD_KERNEL_PAGESIZE := 2048
54BOARD_KERNEL_IMAGE_NAME := Image
55#BOARD_KERNEL_CMDLINE := The bootloader ignores the cmdline from the boot.img
56BOARD_KERNEL_SEPARATED_DT := true
57TARGET_CUSTOM_DTBTOOL := dtbhtoolExynos
58
59# Kernel
60TARGET_KERNEL_ARCH := arm64
61TARGET_KERNEL_CROSS_COMPILE_PREFIX := aarch64-linux-android-
62KERNEL_TOOLCHAIN := $(ANDROID_BUILD_TOP)/prebuilts/gcc/$(HOST_OS)-x86/aarch64/aarch64-linux-android-4.9/bin
63TARGET_LINUX_KERNEL_VERSION := 3.10
64
65# Kernel config
66TARGET_KERNEL_SOURCE := kernel/samsung/universal7580
67
68# Use these flags if the board has a ext4 partition larger than 2gb
69BOARD_HAS_LARGE_FILESYSTEM := true
70TARGET_USERIMAGES_USE_EXT4 := true
71
69cdd6c4
PK
72# Extended filesystem support
73TARGET_EXFAT_DRIVER := sdfat
74
583a3f4a
S
75# Vendor separation
76TARGET_COPY_OUT_VENDOR := system/vendor
77
78# Device Tree
79BOARD_USES_DT := true
32f92b0e 80
f1473863
S
81# Graphics
82NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
e148bed6 83BOARD_USES_EXYNOS5_COMMON_GRALLOC := true
f1473863 84
e148bed6
S
85# VR Front buffer
86#BOARD_USES_VR_FRONT_BUFFER := true
32f92b0e
S
87
88# Samsung OpenMAX Video
e148bed6 89BOARD_USE_STOREMETADATA := true
32f92b0e
S
90BOARD_USE_METADATABUFFERTYPE := true
91BOARD_USE_DMA_BUF := true
92BOARD_USE_ANB_OUTBUF_SHARE := true
93BOARD_USE_IMPROVED_BUFFER := true
94BOARD_USE_NON_CACHED_GRAPHICBUFFER := true
95BOARD_USE_GSC_RGB_ENCODER := true
96BOARD_USE_CSC_HW := false
97BOARD_USE_QOS_CTRL := false
98BOARD_USE_S3D_SUPPORT := true
e148bed6
S
99BOARD_USE_TIMESTAMP_REORDER_SUPPORT := false
100BOARD_USE_DEINTERLACING_SUPPORT := false
32f92b0e 101BOARD_USE_VP8ENC_SUPPORT := true
e148bed6
S
102BOARD_USE_HEVCDEC_SUPPORT := true
103BOARD_USE_HEVCENC_SUPPORT := true
104BOARD_USE_HEVC_HWIP := false
105BOARD_USE_VP9DEC_SUPPORT := true
106BOARD_USE_VP9ENC_SUPPORT := false
107BOARD_USE_CUSTOM_COMPONENT_SUPPORT := true
108BOARD_USE_VIDEO_EXT_FOR_WFD_HDCP := false
109BOARD_USE_SINGLE_PLANE_IN_DRM := false
110
111# HWComposer
112BOARD_USES_VPP := true
113#BOARD_USES_VPP_V2 := true // 8890 only
114BOARD_HDMI_INCAPABLE := true
32f92b0e
S
115
116# Scalar
117BOARD_USES_SCALER := true
118
119# HWCServices - requires framework support
120#BOARD_USES_HWC_SERVICES := true
121
e148bed6
S
122# WiFiDisplay
123#BOARD_USES_VIRTUAL_DISPLAY := true - depends on platform changes
124BOARD_USES_VIRTUAL_DISPLAY_DECON_EXT_WB := false
125BOARD_USE_VIDEO_EXT_FOR_WFD_DRM := false
126BOARD_USES_VDS_BGRA8888 := true
127BOARD_VIRTUAL_DISPLAY_DISABLE_IDMA_G0 := false
128
129# LIBHWJPEG
130TARGET_USES_UNIVERSAL_LIBHWJPEG := true
131
132# FIMG2D
133BOARD_USES_SKIA_FIMGAPI := true
134BOARD_USES_FIMGAPI_V5X := true
135
136# SCALER
137BOARD_USES_DEFAULT_CSC_HW_SCALER := true
138BOARD_USES_SCALER_M2M1SHOT := true
139
9e24d026
S
140# Samsung HALs
141TARGET_AUDIOHAL_VARIANT := samsung
97f75cb0 142TARGET_POWERHAL_VARIANT := samsung
eac4829a
S
143
144# Wifi
145BOARD_WLAN_DEVICE := bcmdhd
146WPA_SUPPLICANT_VERSION := VER_0_8_X
147BOARD_WPA_SUPPLICANT_DRIVER := NL80211
148BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_bcmdhd
149WPA_SUPPLICANT_USE_HIDL := true
150BOARD_HOSTAPD_DRIVER := NL80211
151BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_bcmdhd
152WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/dhd/parameters/firmware_path"
153WIFI_DRIVER_NVRAM_PATH_PARAM := "/sys/module/dhd/parameters/nvram_path"
998a97f9
S
154WIFI_DRIVER_NVRAM_PATH := "/vendor/etc/wifi/nvram_net.txt"
155WIFI_DRIVER_FW_PATH_STA := "/vendor/etc/wifi/bcmdhd_sta.bin"
156WIFI_DRIVER_FW_PATH_AP := "/vendor/etc/wifi/bcmdhd_apsta.bin"
eac4829a
S
157WIFI_BAND := 802_11_ABG
158
159# MACLOADER
160BOARD_HAVE_SAMSUNG_WIFI := true
161
a3b5a23b
S
162# Bluetooth
163BOARD_CUSTOM_BT_CONFIG := $(LOCAL_PATH)/bluetooth/libbt_vndcfg.txt
164BOARD_HAVE_BLUETOOTH := true
165BOARD_HAVE_BLUETOOTH_BCM := true
166BOARD_HAVE_SAMSUNG_BLUETOOTH := true
167
3c2188e1
S
168# Lineage Hardware
169BOARD_HARDWARE_CLASS := hardware/samsung/lineagehw $(LOCAL_PATH)/lineagehw
71ac95c9
S
170
171# Backlight
172BACKLIGHT_PATH := "/sys/class/backlight/panel/brightness"
73f22a1a 173
e0d96982
S
174# Recovery
175TARGET_RECOVERY_FSTAB := $(LOCAL_PATH)/ramdisk/etc/fstab.samsungexynos7580
176
c1a50488
DW
177# SELinux
178BOARD_SEPOLICY_DIRS += device/samsung/universal7580-common/sepolicy
179BOARD_SEPOLICY_VERS := $(PLATFORM_SDK_VERSION).0
180
e9c4e071
S
181# Shims
182TARGET_LD_SHIM_LIBS := \
183 /system/lib/omx/libOMX.Exynos.AVC.Decoder.so|/vendor/lib/libui_shim.so \
184 /system/lib/omx/libOMX.Exynos.AVC.Encoder.so|/vendor/lib/libui_shim.so \
185 /system/lib/omx/libOMX.Exynos.MPEG4.Decoder.so|/vendor/lib/libui_shim.so \
186 /system/lib/omx/libOMX.Exynos.MPEG4.Encoder.so|/vendor/lib/libui_shim.so \
187 /system/lib/omx/libOMX.Exynos.VP8.Decoder.so|/vendor/lib/libui_shim.so \
188 /system/lib/omx/libOMX.Exynos.VP8.Encoder.so|/vendor/lib/libui_shim.so \
189 /system/lib/omx/libOMX.Exynos.WMV.Decoder.so|/vendor/lib/libui_shim.so