-
Notifications
You must be signed in to change notification settings - Fork 19
Expand file tree
/
Copy pathBoardConfigCommon.mk
More file actions
218 lines (183 loc) · 7.06 KB
/
BoardConfigCommon.mk
File metadata and controls
218 lines (183 loc) · 7.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
# Copyright (C) 2007 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# BoardConfigCommon.mk
#
# Product-common compile-time definitions.
#
# Use the Qualcomm common folder
include device/qcom/msm7x27/BoardConfigCommon.mk
## Bluetooth
BOARD_HAVE_BLUETOOTH := true
BOARD_BLUEDROID_VENDOR_CONF := device/samsung/msm7x27-common/bluetooth/vnd_samsung.txt
BOARD_HAVE_BLUETOOTH_BCM := true
## Kernel
BOARD_KERNEL_BASE := 0x13600000
BOARD_KERNEL_PAGESIZE := 4096
ifdef BUILD_WITH_30X_KERNEL
TARGET_KERNEL_SOURCE := kernel/samsung/msm
else
TARGET_KERNEL_SOURCE := kernel/samsung/msm7x27
endif
TARGET_PROVIDES_INIT_TARGET_RC := true
## Platform
TARGET_BOARD_PLATFORM_GPU := qcom-adreno200
ifdef BUILD_WITH_30X_KERNEL
TARGET_SPECIFIC_HEADER_PATH := device/samsung/msm7x27-common/include-30x
else
TARGET_SPECIFIC_HEADER_PATH := device/samsung/msm7x27-common/include
endif
## Webkit
ENABLE_WEBGL := true
TARGET_WEBKIT_USE_MORE_MEMORY := true
## Fonts
SMALLER_FONT_FOOTPRINT := true
## Camera
USE_CAMERA_STUB := false
BOARD_CAMERA_NO_UNWANTED_MSG := true
BOARD_USE_NASTY_PTHREAD_CREATE_HACK := true
BOARD_USES_QCOM_LEGACY_CAM_PARAMS := true
COMMON_GLOBAL_CFLAGS += -DSAMSUNG_CAMERA_LEGACY
COMMON_GLOBAL_CFLAGS += -DNEEDS_VECTORIMPL_SYMBOLS
## Qualcomm, display
COMMON_GLOBAL_CFLAGS += -DREFRESH_RATE=60
COMMON_GLOBAL_CFLAGS += -DSAMSUNG_CAMERA_QCOM
COMMON_GLOBAL_CFLAGS += -DBINDER_COMPAT
BOARD_EGL_NEEDS_LEGACY_FB := true
TARGET_GLOBAL_CPPFLAGS += -mfpu=vfp -mfloat-abi=softfp -Os
TARGET_RUNNING_WITHOUT_SYNC_FRAMEWORK := true
## GPS
BOARD_USES_QCOM_GPS := true
BOARD_VENDOR_QCOM_GPS_LOC_API_AMSS_VERSION := 50000
BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := msm7x27
BOARD_USES_QCOM_LIBRPC := true
## Override healthd HAL
BOARD_HAL_STATIC_LIBRARIES := libhealthd.msm7x27
## Power
TARGET_POWERHAL_VARIANT := cm
## FM
#BOARD_HAVE_QCOM_FM := true
#BOARD_HAVE_FM_RADIO := true
#COMMON_GLOBAL_CFLAGS += -DHAVE_FM_RADIO -DQCOM_FM_ENABLED
#BOARD_FM_DEVICE := bcm2049
## Wi-Fi
BOARD_WLAN_DEVICE := ath6kl_compat
BOARD_WLAN_NO_FWRELOAD := true
COMMON_GLOBAL_CFLAGS += -DWIFI_AP_HAS_OWN_DRIVER
WIFI_AP_FIRMWARE_LOADER := ""
WPA_SUPPLICANT_VERSION := VER_0_8_X
BOARD_HAVE_SAMSUNG_WIFI := true
WIFI_DRIVER_LOADER_DELAY := 1000000
# ATH6KL uses NL80211 driver
BOARD_WPA_SUPPLICANT_DRIVER := NL80211
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_ath6kl_compat
# ATH6KL uses hostapd built from source
BOARD_HOSTAPD_DRIVER := NL80211
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_ath6kl_compat
# AP mode
WIFI_DRIVER_MODULE_AP_ARG := "suspend_mode=3 wow_mode=2 ath6kl_p2p=1 recovery_enable=1 samsung_firmware=0"
# Station/client mode
WIFI_DRIVER_MODULE_ARG := "suspend_mode=3 wow_mode=2 ath6kl_p2p=0 recovery_enable=1 samsung_firmware=0"
WIFI_DRIVER_MODULE_NAME := ath6kl
WIFI_DRIVER_MODULE_PATH := /system/lib/modules/ath6kl.ko
# Build the ath6kl-compat modules
KERNEL_EXTERNAL_MODULES:
# wipe & prepare ath6kl-compat working directory
rm -rf $(OUT)/ath6kl-compat
cp -a hardware/atheros/ath6kl-compat $(OUT)/
# run build
$(MAKE) -C $(OUT)/ath6kl-compat KERNEL_DIR=$(KERNEL_OUT) KLIB=$(KERNEL_OUT) KLIB_BUILD=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) $(ARM_CROSS_COMPILE) defconfig-ath6kl
$(MAKE) -C $(OUT)/ath6kl-compat KERNEL_DIR=$(KERNEL_OUT) KLIB=$(KERNEL_OUT) KLIB_BUILD=$(KERNEL_OUT) ARCH=$(TARGET_ARCH) $(ARM_CROSS_COMPILE)
# copy & strip modules (to economize space)
$(TARGET_OBJCOPY) --strip-unneeded $(OUT)/ath6kl-compat/compat/compat.ko $(KERNEL_MODULES_OUT)/compat.ko
$(TARGET_OBJCOPY) --strip-unneeded $(OUT)/ath6kl-compat/drivers/net/wireless/ath/ath6kl/ath6kl.ko $(KERNEL_MODULES_OUT)/ath6kl.ko
$(TARGET_OBJCOPY) --strip-unneeded $(OUT)/ath6kl-compat/net/wireless/cfg80211.ko $(KERNEL_MODULES_OUT)/cfg80211.ko
TARGET_KERNEL_MODULES := KERNEL_EXTERNAL_MODULES
## Wi-Fi Hotspot
BOARD_HAVE_LEGACY_HOSTAPD := true
BOARD_HOSTAPD_NO_ENTROPY := true
## RIL
TARGET_PROVIDES_LIBRIL := true
BOARD_USES_LEGACY_RIL := true
BOARD_FORCE_RILD_AS_ROOT := true
BOARD_MOBILEDATA_INTERFACE_NAME := "pdp0"
BOARD_RIL_CLASS := ../../../device/samsung/msm7x27-common/ril/
## UMS
TARGET_USE_CUSTOM_LUN_FILE_PATH := /sys/devices/platform/msm_hsusb/gadget/lun0/file
BOARD_UMS_LUNFILE := "/sys/devices/platform/msm_hsusb/gadget/lun0/file"
## Legacy touchscreen support
BOARD_USE_LEGACY_TOUCHSCREEN := true
## Device specific libs
TARGET_PROVIDES_LIBAUDIO := true
TARGET_PROVIDES_LIBLIGHT := true
## Audio: combo device supported
BOARD_COMBO_DEVICE_SUPPORTED := true
## Audio: extamp support
BOARD_EXTAMP_AUDIO_FEATURE := true
## Samsung has weird framebuffer
TARGET_NO_INITLOGO := true
## Fix colors in panorama mode
BOARD_CPU_COLOR_CONVERT := true
## SELINUX policy version override
ifndef BUILD_WITH_30X_KERNEL
POLICYVERS := 24
endif
## Recovery
BOARD_HAS_DOWNLOAD_MODE := true
TARGET_USERIMAGES_USE_EXT4 := true
BOARD_BOOTIMAGE_PARTITION_SIZE := 8388608
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 8388608
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 230686720
BOARD_USERDATAIMAGE_PARTITION_SIZE := 190054400
BOARD_FLASH_BLOCK_SIZE := 131072
BOARD_KERNEL_CMDLINE :=
BOARD_BML_BOOT := "/dev/block/bml8"
BOARD_BML_RECOVERY := "/dev/block/bml9"
BOARD_RECOVERY_HANDLES_MOUNT := true
BOARD_CUSTOM_RECOVERY_KEYMAPPING := ../../device/samsung/msm7x27-common/recovery/recovery_keys.c
# Swap /system and /data in order to gain more space for ROM installation
ifeq ($(BOARD_SWAP_SYSTEMDATA),true)
TARGET_RECOVERY_FSTAB := device/samsung/msm7x27-common/ramdisk/fstab.msm7x27_swapped
else
TARGET_RECOVERY_FSTAB := device/samsung/msm7x27-common/ramdisk/fstab.msm7x27
endif
TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
TARGET_RECOVERY_LCD_BACKLIGHT_PATH := \"/sys/class/leds/lcd-backlight/brightness\"
BOARD_RECOVERY_SWIPE := true
TARGET_NO_SEPARATE_RECOVERY := true
## TWRP
ifeq ($(RECOVERY_VARIANT),twrp)
TW_CUSTOM_POWER_BUTTON := 107
TW_HAS_DOWNLOAD_MODE := true
TW_USE_MODEL_HARDWARE_ID_FOR_DEVICE_ID := true
TW_NO_REBOOT_BOOTLOADER := true
TW_CUSTOM_CPU_TEMP_PATH := /sys/class/power_supply/battery/batt_temp
RECOVERY_GRAPHICS_USE_LINELENGTH := true
ifeq ($(TARGET_BUILD_VARIANT), eng)
MINIGZIP := $(shell which lzma)
endif
endif
## Bootanimation
TARGET_BOOTANIMATION_PRELOAD := true
TARGET_BOOTANIMATION_TEXTURE_CACHE := true
## OTA script extras file (build/tools/releasetools)
ifneq (,$(filter galaxy5,$(CM_BUILD)))
# We can't fit live wallpapers & other features on the /system partition
TARGET_OTA_EXTRAS_FILE := device/samsung/msm7x27-common/releasetools-extras-tiny.txt
else
TARGET_OTA_EXTRAS_FILE := device/samsung/msm7x27-common/releasetools-extras.txt
endif
## TEMPORARY HACK: skip building external/chromium_org/
PRODUCT_PREBUILT_WEBVIEWCHROMIUM := yes
## zRAM size
BOARD_ZRAM_SIZE := 50331648