-
Notifications
You must be signed in to change notification settings - Fork 18
/
MMI-RRM31.Q3-23-29-5
104 lines (55 loc) · 10.2 KB
/
MMI-RRM31.Q3-23-29-5
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
MMI-RRM31.Q3-23-29-5 For Motorola edge(2021)
Kernel Modules:
---------------
Download prebuilts folder from Android distribution. Move it to $my_top_dir
For example:
my_top_dir=$PWD
mkdir -vp $my_top_dir/prebuilts/clang/host
cd $my_top_dir/prebuilts/clang/host
git clone https://android.googlesource.com/platform/prebuilts/clang/host/linux-x86
mkdir -vp $my_top_dir/prebuilts/gcc/linux-x86/aarch64
cd $my_top_dir/prebuilts/gcc/linux-x86/aarch64
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9
mkdir -vp $my_top_dir/prebuilts/gcc/linux-x86/arm
cd $my_top_dir/prebuilts/gcc/linux-x86/arm
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8
Download kernel source code. Rename kernel-* folder to $my_top_dir/kernel
mkdir -p $my_top_dir/out/target/product/generic/obj/kernel/msm-5.4
kernel_out_dir=$my_top_dir/out/target/product/generic/obj/kernel/msm-5.4
kernel_obj_out_dir=$my_top_dir/out/target/product/generic/obj/KERNEL_OBJ
kernel_out_path_generic=$my_top_dir/out/target/product/generic
clang=$my_top_dir/prebuilts/clang/host/linux-x86/clang-r383902b1/bin/clang
ld_lld=$my_top_dir/prebuilts/clang/host/linux-x86/clang-r383902b1/bin/ld.lld
llvm_ar=$my_top_dir/prebuilts/clang/host/linux-x86/clang-r383902b1/bin/llvm-ar
llvm_nm=$my_top_dir/prebuilts/clang/host/linux-x86/clang-r383902b1/bin/llvm-nm
make=$my_top_dir/prebuilts/build-tools/linux-x86/bin/make
aarch64_linux_android_=$my_top_dir/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin/aarch64-linux-android-
x86_64_linux_ar=$my_top_dir/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8/bin/x86_64-linux-ar
x86_64_linux_ld=$my_top_dir/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.17-4.8/bin/x86_64-linux-ld
arm_eabi_=$my_top_dir/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-
make -C kernel/msm-5.4 O=$kernel_obj_out_dir ARCH=arm64 CROSS_COMPILE=$arm_eabi_ clean
make -C kernel/msm-5.4 O=$kernel_obj_out_dir ARCH=arm64 CROSS_COMPILE=$arm_eabi_ mrproper
make -C kernel/msm-5.4 O=$kernel_obj_out_dir ARCH=arm64 CROSS_COMPILE=$arm_eabi_ distclean
ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm KERN_OUT=$kernel_out_dir DTC_EXT=dtc DTC_OVERLAY_TEST_EXT=ufdt_apply_overlay CONFIG_BUILD_ARM64_DT_OVERLAY=y HOSTCC=$clang HOSTAR=$x86_64_linux_ar HOSTLD=$x86_64_linux_ld TARGET_BUILD_VARIANT=user kernel/msm-5.4/scripts/gki/generate_defconfig.sh vendor/lahaina-qgki_defconfig
$make -j48 -C kernel/msm-5.4 O=$kernel_out_dir REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm DTC_EXT=dtc DTC_OVERLAY_TEST_EXT=ufdt_apply_overlay CONFIG_BUILD_ARM64_DT_OVERLAY=y HOSTCC=$clang HOSTAR=$x86_64_linux_ar HOSTLD=$x86_64_linux_ld HOSTCFLAGS="-I$pwd/kernel/msm-5.4/include/uapi -I/usr/include -I/usr/include/x86_64-linux-gnu -I$pwd/kernel/msm-5.4/include -L/usr/lib -L/usr/lib/x86_64-linux-gnu -fuse-ld=lld" HOSTLDFLAGS="-L/usr/lib -L/usr/lib/x86_64-linux-gnu -fuse-ld=lld" ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ vendor/lahaina-qgki_defconfig
$make -j48 -C kernel/msm-5.4 HOSTCFLAGS="-I$pwd/kernel/msm-5.4/include/uapi -I/usr/include -I/usr/include/x86_64-linux-gnu -I$pwd/kernel/msm-5.4/include -L/usr/lib -L/usr/lib/x86_64-linux-gnu -fuse-ld=lld" HOSTLDFLAGS="-L/usr/lib -L/usr/lib/x86_64-linux-gnu -fuse-ld=lld" ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ O=$kernel_out_dir REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm DTC_EXT=dtc DTC_OVERLAY_TEST_EXT=ufdt_apply_overlay CONFIG_BUILD_ARM64_DT_OVERLAY=y HOSTCC=$clang HOSTAR=$x86_64_linux_ar HOSTLD=$x86_64_linux_ld headers_install
$make -j48 -C kernel/msm-5.4 ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ HOSTCFLAGS="-I$pwd/kernel/msm-5.4/include/uapi -I/usr/include -I/usr/include/x86_64-linux-gnu -I$pwd/kernel/msm-5.4/include -L/usr/lib -L/usr/lib/x86_64-linux-gnu -fuse-ld=lld" HOSTLDFLAGS="-L/usr/lib -L/usr/lib/x86_64-linux-gnu -fuse-ld=lld" O=$kernel_out_dir REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm DTC_EXT=dtc DTC_OVERLAY_TEST_EXT=ufdt_apply_overlay CONFIG_BUILD_ARM64_DT_OVERLAY=y HOSTCC=$clang HOSTAR=$x86_64_linux_ar HOSTLD=$x86_64_linux_ld
$make -j48 -C kernel/msm-5.4 O=$kernel_out_dir CROSS_COMPILE=$aarch64_linux_android_ INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=$kernel_out_dir/staging REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm DTC_EXT=dtc DTC_OVERLAY_TEST_EXT=ufdt_apply_overlay CONFIG_BUILD_ARM64_DT_OVERLAY=y HOSTCC=$clang HOSTAR=$x86_64_linux_ar HOSTLD=$x86_64_linux_ld modules_install
WLAN Driver:
------------
WLAN_BLD_DIR=$my_top_dir/vendor/qcom/opensource/wlan
WLAN_ROOT=$WLAN_BLD_DIR/qcacld-3.0
target_chip=(qca6750 qca6390 wlan)
cd $WLAN_ROOT
for chip in ${target_chip[@]};do
mkdir -vp $WLAN_ROOT/.$chip
ln -sf $WLAN_BLD_DIR/qca-wifi-host-cmn $WLAN_ROOT/.$chip/qca-wifi-host-cmn
nodes=$(find ./ -maxdepth 1 ! -name '.*' ! -name '*~' ! -name '.' ! -name 'qcacld-3.0'|cut -d "/" -f 2)
for node in ${nodes[@]};do
ln -sf $WLAN_ROOT/$node $WLAN_ROOT/.$chip/$node
done
done
cd -
make -j48 -j96 -C $kernel_out_dir M=$my_top_dir/vendor/qcom/opensource/wlan/qcacld-3.0/.wlan ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm CONFIG_INPUT_EGISTEC_FPS_NAVI=y CONFIG_INPUT_EGISTEC_FPS_NAVI_HORIZON=y CONFIG_INPUT_EGISTEC_FPS_NAVI_VERTICAL=y CONFIG_NAV_DOUBLE_TAP=y CONFIG_INPUT_MISC_FPC1020_SAVE_TO_CLASS_DEVICE=y CONFIG_MMI_RELAY=y CONFIG_INPUT_FOCALTECH_0FLASH_MMI_IC_NAME=ft8719 CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_FOCALTECH_0FLASH_MMI_IC_NAME=ft3518u CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME=hx83102 CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME=hx83112 CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME_D=hx83102d CONFIG_INPUT_NOVA_0FLASH_MMI_NOTIFY_TOUCH_STATE=y CONFIG_TOUCH_PANEL_NOTIFICATIONS=y CONFIG_TOUCHCLASS_MMI_MULTIWAY_UPDATE_FW=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_TOUCHCLASS_MMI_MULTIWAY_UPDATE_FW=y CONFIG_TOUCH_PANEL_NOTIFICATIONS=y CONFIG_TS_KERNEL_USE_GKI=y CONFIG_AF_NOISE_ELIMINATION=y CONFIG_SX937X_USB_CAL=y CONFIG_SX937X_POWER_SUPPLY_ONLINE=y CONFIG_USE_MMI_CHARGER=y CONFIG_SND_SOC_CS35L41_SPI=y modules WLAN_ROOT=vendor/qcom/opensource/wlan/qcacld-3.0/.wlan WLAN_COMMON_ROOT=./qca-wifi-host-cmn WLAN_COMMON_INC=vendor/qcom/opensource/wlan/qca-wifi-host-cmn WLAN_FW_API=vendor/qcom/opensource/wlan/fw-api WLAN_PROFILE=default DYNAMIC_SINGLE_CHIP=wlan MODNAME=wlan DEVNAME=wlan BOARD_PLATFORM=lahaina CONFIG_QCA_CLD_WLAN=m "CONFIG_CNSS_QCA6490=y" ANDROID_BUILD_TOP=$PWD
make -j48 -j96 -C $kernel_out_dir M=$my_top_dir/vendor/qcom/opensource/wlan/qcacld-3.0/.qca6750 ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm CONFIG_INPUT_EGISTEC_FPS_NAVI=y CONFIG_INPUT_EGISTEC_FPS_NAVI_HORIZON=y CONFIG_INPUT_EGISTEC_FPS_NAVI_VERTICAL=y CONFIG_NAV_DOUBLE_TAP=y CONFIG_INPUT_MISC_FPC1020_SAVE_TO_CLASS_DEVICE=y CONFIG_MMI_RELAY=y CONFIG_INPUT_FOCALTECH_0FLASH_MMI_IC_NAME=ft8719 CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_FOCALTECH_0FLASH_MMI_IC_NAME=ft3518u CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME=hx83102 CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME=hx83112 CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME_D=hx83102d CONFIG_INPUT_NOVA_0FLASH_MMI_NOTIFY_TOUCH_STATE=y CONFIG_TOUCH_PANEL_NOTIFICATIONS=y CONFIG_TOUCHCLASS_MMI_MULTIWAY_UPDATE_FW=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_TOUCHCLASS_MMI_MULTIWAY_UPDATE_FW=y CONFIG_TOUCH_PANEL_NOTIFICATIONS=y CONFIG_TS_KERNEL_USE_GKI=y CONFIG_AF_NOISE_ELIMINATION=y CONFIG_SX937X_USB_CAL=y CONFIG_SX937X_POWER_SUPPLY_ONLINE=y CONFIG_USE_MMI_CHARGER=y CONFIG_SND_SOC_CS35L41_SPI=y modules WLAN_ROOT=vendor/qcom/opensource/wlan/qcacld-3.0/.qca6750 WLAN_COMMON_ROOT=./qca-wifi-host-cmn WLAN_COMMON_INC=vendor/qcom/opensource/wlan/qca-wifi-host-cmn WLAN_FW_API=vendor/qcom/opensource/wlan/fw-api WLAN_PROFILE=default DYNAMIC_SINGLE_CHIP=qca6750 MODNAME=wlan DEVNAME=qca6750 BOARD_PLATFORM=lahaina CONFIG_QCA_CLD_WLAN=m "CONFIG_CNSS_QCA6750=y" ANDROID_BUILD_TOP=$PWD
make -j48 -j96 -C $kernel_out_dir M=$my_top_dir/vendor/qcom/opensource/wlan/qcacld-3.0/.qca6390 ARCH=arm64 CROSS_COMPILE=$aarch64_linux_android_ REAL_CC=$clang CLANG_TRIPLE=aarch64-linux-gnu- AR=$llvm_ar LLVM_NM=$llvm_nm LD=$ld_lld NM=$llvm_nm CONFIG_INPUT_EGISTEC_FPS_NAVI=y CONFIG_INPUT_EGISTEC_FPS_NAVI_HORIZON=y CONFIG_INPUT_EGISTEC_FPS_NAVI_VERTICAL=y CONFIG_NAV_DOUBLE_TAP=y CONFIG_INPUT_MISC_FPC1020_SAVE_TO_CLASS_DEVICE=y CONFIG_MMI_RELAY=y CONFIG_INPUT_FOCALTECH_0FLASH_MMI_IC_NAME=ft8719 CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_FOCALTECH_0FLASH_MMI_IC_NAME=ft3518u CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME=hx83102 CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME=hx83112 CONFIG_INPUT_HIMAX_V2_MMI_IC_NAME_D=hx83102d CONFIG_INPUT_NOVA_0FLASH_MMI_NOTIFY_TOUCH_STATE=y CONFIG_TOUCH_PANEL_NOTIFICATIONS=y CONFIG_TOUCHCLASS_MMI_MULTIWAY_UPDATE_FW=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_INPUT_TOUCHSCREEN_MMI=y CONFIG_TOUCHCLASS_MMI_MULTIWAY_UPDATE_FW=y CONFIG_TOUCH_PANEL_NOTIFICATIONS=y CONFIG_TS_KERNEL_USE_GKI=y CONFIG_AF_NOISE_ELIMINATION=y CONFIG_SX937X_USB_CAL=y CONFIG_SX937X_POWER_SUPPLY_ONLINE=y CONFIG_USE_MMI_CHARGER=y CONFIG_SND_SOC_CS35L41_SPI=y modules WLAN_ROOT=vendor/qcom/opensource/wlan/qcacld-3.0/.qca6390 WLAN_COMMON_ROOT=./qca-wifi-host-cmn WLAN_COMMON_INC=vendor/qcom/opensource/wlan/qca-wifi-host-cmn WLAN_FW_API=vendor/qcom/opensource/wlan/fw-api WLAN_PROFILE=default DYNAMIC_SINGLE_CHIP=qca6390 MODNAME=wlan DEVNAME=qca6390 BOARD_PLATFORM=lahaina CONFIG_QCA_CLD_WLAN=m "CONFIG_CNSS_QCA6390=y" ANDROID_BUILD_TOP=$PWD