bazel: support for bazel build in the new kernel [1/1]
PD#SWPL-122095
Problem:
unable to use bazel build in the new kernel
Solution:
support for bazel build in the new kernel
Verify:
local
Change-Id: I6ee258cc46c839e000c6cc35769fa8104b14436c
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
diff --git a/amlogic.bzl b/amlogic.bzl
index b6b851f..607a950 100644
--- a/amlogic.bzl
+++ b/amlogic.bzl
@@ -63,7 +63,6 @@
"common_drivers/drivers/media/aml_media.ko",
"common_drivers/drivers/media/camera/amlogic-camera.ko",
"common_drivers/drivers/memory_debug/amlogic-memory-debug.ko",
- "common_drivers/drivers/memory_ext/page_trace.ko",
"common_drivers/drivers/mmc/host/amlogic-mmc.ko",
"common_drivers/drivers/net/ethernet/stmicro/stmmac/amlogic-phy-debug.ko",
"common_drivers/drivers/net/mdio/amlogic-mdio-g12a.ko",
@@ -120,7 +119,7 @@
outs = _AMLOGIC_OUTS,
dtbo_srcs = _AMLOGIC_DTBOS,
define_abi_targets = True,
- kmi_symbol_list = "//common:android/abi_gki_aarch64_db845c",
+ kmi_symbol_list = "//common:android/abi_gki_aarch64_amlogic",
kmi_symbol_list_add_only = True,
build_config = "common_drivers/build.config.amlogic.bazel",
module_outs = _AMLOGIC_MODULES,
diff --git a/amlogic_utils.sh b/amlogic_utils.sh
index 56b98ce..bae3e8e 100644
--- a/amlogic_utils.sh
+++ b/amlogic_utils.sh
@@ -650,18 +650,26 @@
fi
done
- for module in `find ${DIST_DIR} -type f -name "*.ko"`; do
+ while read module
+ do
module_name=`echo ${module} | rev | cut -d '/' -f 1 | rev`
- if [[ `grep ${module_name} ${DIST_DIR}/modules.load` ]]; then
- cp ${module} ${OUT_AMLOGIC_DIR}/modules
+ if [[ `echo ${module} | grep "^kernel\/"` ]]; then
+ if [[ -f ${DIST_DIR}/${module_name} ]]; then
+ cp ${DIST_DIR}/${module_name} ${OUT_AMLOGIC_DIR}/modules
+ else
+ module=`find ${digit_output}/execroot/ -name ${module_name} | grep "amlogic"`
+ cp ${module} ${OUT_AMLOGIC_DIR}/modules
+ fi
+ elif [[ `echo ${module} | grep "^extra\/"` ]]; then
+ cp ${DIST_DIR}/${module_name} ${OUT_AMLOGIC_DIR}/ext_modules
else
- cp ${module} ${OUT_AMLOGIC_DIR}/ext_modules
+ echo "warning unrecognized module: ${module}"
fi
- done
+ done < ${DIST_DIR}/modules.load
dep_file=`find ${digit_output}/execroot/ -name *.dep | grep "amlogic"`
cp ${dep_file} ${OUT_AMLOGIC_DIR}/modules/full_modules.dep
- grep -E "^kernel\/|^${common_drivers}\/" ${dep_file} > ${OUT_AMLOGIC_DIR}/modules/modules.dep
+ grep -E "^kernel\/" ${dep_file} > ${OUT_AMLOGIC_DIR}/modules/modules.dep
touch ${module} ${OUT_AMLOGIC_DIR}/ext_modules/ext_modules.order
for order_file in `find ${digit_output}/execroot/ -name "modules.order.*" | grep "amlogic"`; do
echo "# ${order_file}" >> ${OUT_AMLOGIC_DIR}/ext_modules/ext_modules.order
diff --git a/android/abi_gki_aarch64_amlogic b/android/abi_gki_aarch64_amlogic
index 3c2cf60..10e80ed 100644
--- a/android/abi_gki_aarch64_amlogic
+++ b/android/abi_gki_aarch64_amlogic
@@ -1,3 +1,13 @@
-# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-
-[abi_symbol_list]
+ dmabuf_page_pool_get_size
+ unregister_kprobe
+ unregister_kretprobe
+ __traceiter_android_rvh_arm64_serror_panic
+ __traceiter_android_rvh_do_sea
+ __traceiter_android_vh_cma_drain_all_pages_bypass
+ __traceiter_android_vh_mem_cgroup_alloc
+ __tracepoint_android_rvh_arm64_serror_panic
+ __tracepoint_android_rvh_do_sea
+ __tracepoint_android_vh_cma_drain_all_pages_bypass
+ __tracepoint_android_vh_mem_cgroup_alloc
+ css_next_descendant_pre
+ memory_cgrp_subsys_enabled_key
diff --git a/android/abi_gki_aarch64_amlogic.10 b/android/abi_gki_aarch64_amlogic.10
index ee1a02a..e69de29 100644
--- a/android/abi_gki_aarch64_amlogic.10
+++ b/android/abi_gki_aarch64_amlogic.10
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-
-[abi_symbol_list]
\ No newline at end of file
diff --git a/android/abi_gki_aarch64_amlogic.debug b/android/abi_gki_aarch64_amlogic.debug
index 3c2cf60..e69de29 100644
--- a/android/abi_gki_aarch64_amlogic.debug
+++ b/android/abi_gki_aarch64_amlogic.debug
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-
-[abi_symbol_list]
diff --git a/android/abi_gki_aarch64_amlogic.external b/android/abi_gki_aarch64_amlogic.external
index aa553aa..e69de29 100644
--- a/android/abi_gki_aarch64_amlogic.external
+++ b/android/abi_gki_aarch64_amlogic.external
@@ -1,119 +0,0 @@
-# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-
-[abi_symbol_list]
-# wlan
- cfg80211_ft_event
- cfg80211_rx_unprot_mlme_mgmt
- cfg80211_pmksa_candidate_notify
- cfg80211_gtk_rekey_notify
- cfg80211_assoc_failure
- cfg80211_tdls_oper_request
- cfg80211_ft_event
- cfg80211_rx_unprot_mlme_mgmt
- cfg80211_pmksa_candidate_notify
- cfg80211_gtk_rekey_notify
- cfg80211_assoc_failure
- cfg80211_tdls_oper_request
- cfg80211_put_bss
- cfg80211_disconnected
- ieee80211_get_channel_khz
- cfg80211_roamed
- cfg80211_ibss_joined
- ieee80211_channel_to_freq_khz
- cfg80211_new_sta
- cfg80211_del_sta_sinfo
- cfg80211_michael_mic_failure
- wiphy_unregister
- wiphy_free
- cfg80211_chandef_create
- cfg80211_ch_switch_notify
- __cfg80211_alloc_event_skb
- __cfg80211_send_event_skb
- ieee80211_hdrlen
- cfg80211_get_bss
- regulatory_hint
- cfg80211_connect_done
- ieee80211_freq_khz_to_channel
- cfg80211_vendor_cmd_reply
- __cfg80211_alloc_reply_skb
- wiphy_register
- cfg80211_unlink_bss
- cfg80211_scan_done
- cfg80211_calculate_bitrate
- wiphy_new_nm
- cfg80211_inform_bss_frame_data
- cfg80211_sched_scan_results
- cfg80211_ready_on_channel
- cfg80211_remain_on_channel_expired
- cfg80211_rx_mgmt_ext
- cfg80211_mgmt_tx_status_ext
- regulatory_set_wiphy_regd_sync
- cfg80211_put_bss
- cfg80211_disconnected
- ieee80211_get_channel_khz
- cfg80211_roamed
- cfg80211_ibss_joined
- ieee80211_channel_to_freq_khz
- cfg80211_new_sta
- cfg80211_del_sta_sinfo
- cfg80211_michael_mic_failure
- wiphy_unregister
- wiphy_free
- cfg80211_chandef_create
- cfg80211_ch_switch_notify
- __cfg80211_alloc_event_skb
- __cfg80211_send_event_skb
- ieee80211_hdrlen
- cfg80211_get_bss
- regulatory_hint
- cfg80211_connect_done
- ieee80211_freq_khz_to_channel
- cfg80211_vendor_cmd_reply
- __cfg80211_alloc_reply_skb
- wiphy_register
- cfg80211_unlink_bss
- cfg80211_scan_done
- cfg80211_calculate_bitrate
- wiphy_new_nm
- cfg80211_inform_bss_frame_data
- cfg80211_sched_scan_results
- cfg80211_ready_on_channel
- cfg80211_remain_on_channel_expired
- cfg80211_rx_mgmt_ext
- cfg80211_mgmt_tx_status_ext
- regulatory_set_wiphy_regd_sync
- cfg80211_put_bss
- cfg80211_disconnected
- ieee80211_get_channel_khz
- cfg80211_roamed
- cfg80211_ibss_joined
- ieee80211_channel_to_freq_khz
- cfg80211_new_sta
- cfg80211_del_sta_sinfo
- cfg80211_michael_mic_failure
- wiphy_unregister
- wiphy_free
- cfg80211_chandef_create
- cfg80211_ch_switch_notify
- __cfg80211_alloc_event_skb
- __cfg80211_send_event_skb
- ieee80211_hdrlen
- cfg80211_get_bss
- regulatory_hint
- cfg80211_connect_done
- ieee80211_freq_khz_to_channel
- cfg80211_vendor_cmd_reply
- __cfg80211_alloc_reply_skb
- wiphy_register
- cfg80211_unlink_bss
- cfg80211_scan_done
- cfg80211_calculate_bitrate
- wiphy_new_nm
- cfg80211_inform_bss_frame_data
- cfg80211_sched_scan_results
- cfg80211_ready_on_channel
- cfg80211_remain_on_channel_expired
- cfg80211_rx_mgmt_ext
- cfg80211_mgmt_tx_status_ext
- regulatory_set_wiphy_regd_sync
- cfg80211_ch_switch_started_notify
diff --git a/android/abi_gki_aarch64_amlogic.illegal b/android/abi_gki_aarch64_amlogic.illegal
index ee1a02a..e69de29 100644
--- a/android/abi_gki_aarch64_amlogic.illegal
+++ b/android/abi_gki_aarch64_amlogic.illegal
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-
-[abi_symbol_list]
\ No newline at end of file
diff --git a/build.config.amlogic.bazel b/build.config.amlogic.bazel
index ed99b8b..9d4fe34 100644
--- a/build.config.amlogic.bazel
+++ b/build.config.amlogic.bazel
@@ -20,7 +20,11 @@
echo "CONFIG_DEVTMPFS=y" >> ${temp_file}
fi
- KCONFIG_CONFIG=${KCONFIG_DEFCONFIG} ${ROOT_DIR}/${KERNEL_DIR}/scripts/kconfig/merge_config.sh -m -r ${ROOT_DIR}/${KERNEL_DIR}/arch/arm64/configs/gki_defconfig ${ROOT_DIR}/${KERNEL_DIR}/common_drivers/arch/arm64/configs/amlogic_gki.fragment ${temp_file}
+ if [[ ${GKI_CONFIG} == gki_20 ]]; then
+ KCONFIG_CONFIG=${KCONFIG_DEFCONFIG} ${ROOT_DIR}/${KERNEL_DIR}/scripts/kconfig/merge_config.sh -m -r ${ROOT_DIR}/${KERNEL_DIR}/arch/arm64/configs/gki_defconfig ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/arch/arm64/configs/amlogic_gki.fragment ${temp_file}
+ else
+ KCONFIG_CONFIG=${KCONFIG_DEFCONFIG} ${ROOT_DIR}/${KERNEL_DIR}/scripts/kconfig/merge_config.sh -m -r ${ROOT_DIR}/${KERNEL_DIR}/arch/arm64/configs/gki_defconfig ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/arch/arm64/configs/amlogic_gki.fragment ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/arch/arm64/configs/amlogic_gki.10 ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/arch/arm64/configs/amlogic_gki.debug ${temp_file}
+ fi
rm ${temp_file}
}
@@ -34,4 +38,5 @@
android_overlay_dt.dtbo
"
+KMI_SYMBOL_LIST=android/abi_gki_aarch64_amlogic
GKI_MODULES_LIST=android/gki_aarch64_modules
diff --git a/mk.sh b/mk.sh
index 954bc90..aa2abe3 100755
--- a/mk.sh
+++ b/mk.sh
@@ -307,10 +307,19 @@
else
if [[ "${FULL_KERNEL_VERSION}" != "common13-5.15" && "${ARCH}" = "arm64" ]]; then
if [[ ${BAZEL} == 1 ]]; then
- args="$@ --lto=${LTO}"
+ args="$@ --lto=${LTO} --allow_undeclared_modules"
PROJECT_DIR=${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/project
[[ -d ${PROJECT_DIR} ]] || mkdir -p ${PROJECT_DIR}
+ pushd ${ROOT_DIR}/${KERNEL_DIR}
+ git checkout android/abi_gki_aarch64_amlogic
+ cat ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/android/abi_gki_aarch64_amlogic >> android/abi_gki_aarch64_amlogic
+ cat ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/android/abi_gki_aarch64_amlogic.10 >> android/abi_gki_aarch64_amlogic
+ cat ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/android/abi_gki_aarch64_amlogic.debug >> android/abi_gki_aarch64_amlogic
+ cat ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/android/abi_gki_aarch64_amlogic.external >> android/abi_gki_aarch64_amlogic
+ cat ${ROOT_DIR}/${KERNEL_DIR}/${COMMON_DRIVERS_DIR}/android/abi_gki_aarch64_amlogic.illegal >> android/abi_gki_aarch64_amlogic
+ popd
+
if [[ ! -f ${PROJECT_DIR}/build.config.project ]]; then
touch ${PROJECT_DIR}/build.config.project
echo "# SPDX-License-Identifier: GPL-2.0" > ${PROJECT_DIR}/build.config.project
@@ -327,8 +336,6 @@
if [[ ${GKI_CONFIG} == gki_20 ]]; then
[[ -n ${ANDROID_PROJECT} ]] && sed -i "/GKI_BUILD_CONFIG_FRAGMENT/d" ${PROJECT_DIR}/build.config.gki10
- else
- args="${args} --allow_undeclared_modules"
fi
if [[ ! -f ${PROJECT_DIR}/project.bzl ]]; then
@@ -365,6 +372,8 @@
sed -i "/GKI_BUILD_CONFIG_FRAGMENT/d" ${PROJECT_DIR}/build.config.gki10
+ echo "========================================================"
+ echo "after compiling with bazel and organizing the document"
source ${KERNEL_DIR}/build.config.constants
export COMMON_OUT_DIR=$(readlink -m ${OUT_DIR:-${ROOT_DIR}/out${OUT_DIR_SUFFIX}/${BRANCH}})
export DIST_DIR=$(readlink -m ${DIST_DIR:-${COMMON_OUT_DIR}/dist})