-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild-npu-driver.sh
More file actions
executable file
·71 lines (56 loc) · 2.23 KB
/
Copy pathbuild-npu-driver.sh
File metadata and controls
executable file
·71 lines (56 loc) · 2.23 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
#!/usr/bin/env bash
# Copyright 2024 Cix Technology Group Co., Ltd.
# All Rights Reserved.
#
# The following programs are the sole property of Cix Technology Group Co., Ltd.,
# and contain its proprietary and confidential information.
#
DEPENDENT_MODULES="build-kernel.sh"
readonly DO_DESC_build="build npu driver and embed into debian system"
do_build() {
# build deb package
pkg_Name="cix-npu-driver"
build_deb_dir=${PATH_OUT_DEB_PACKAGES}/${pkg_Name}
if [[ $(check_compile "${PATH_ROOT}/component/cix_opensource/npu/npu_driver" "" "{PATH_DEB}/${pkg_Name}_*.deb") == "false" ]]; then
return 0
fi
rm -rf ${build_deb_dir}
install_dir=${build_deb_dir}/lib/modules/${linux_version}/extra
dkms_src_dir=${build_deb_dir}/usr/src
mkdir -p ${install_dir}
export COMPASS_DRV_BTENVAR_ARCH=arm64
export COMPASS_DRV_BTENVAR_KMD_DIR=driver
export COMPASS_DRV_BTENVAR_KMD_VERSION=6.0.1
export COMPASS_DRV_BTENVAR_KPATH=${PATH_LINUX}
export BUILD_AIPU_VERSION_KMD=BUILD_ZHOUYI_V3
export BUILD_TARGET_PLATFORM_KMD=BUILD_PLATFORM_SKY1
export BUILD_NPU_DEVFREQ=y
cd "${PATH_ROOT}/component/cix_opensource/npu/npu_driver"
cp -f ${COMPASS_DRV_BTENVAR_KMD_DIR}/armchina-npu/include/armchina_aipu.h ${PATH_LINUX}/include/uapi/misc
echo -e "Build KMD..."
make -j$PARALLELISM -C ${COMPASS_DRV_BTENVAR_KMD_DIR} ARCH=${COMPASS_DRV_BTENVAR_ARCH} CROSS_COMPILE=${CROSS_COMPILE} -j${PARALLELISM}
if [ -f ${COMPASS_DRV_BTENVAR_KMD_DIR}/aipu.ko ]; then
cp ${COMPASS_DRV_BTENVAR_KMD_DIR}/aipu.ko ${install_dir}
pushd "${PATH_ROOT}/component/cix_opensource/npu/npu_driver/driver"
make clean || true
echo -e "Build KMD done."
popd
debian_dir=${build_deb_dir}/DEBIAN
mkdir -p "$build_deb_dir/DEBIAN"
echo "#!/bin/bash" > ${debian_dir}/postinst
echo "depmod ${linux_version} -a" >> ${debian_dir}/postinst
create_cix_deb "${pkg_Name}"
# finish build deb package
fi
rm -f $PATH_LINUX/include/uapi/misc/armchina_aipu.h
cd -
record_compile "${PATH_ROOT}/component/cix_opensource/npu/npu_driver"
}
readonly DO_DESC_clean="clean npu driver project"
do_clean() {
export COMPASS_DRV_BTENVAR_KPATH=${PATH_LINUX}
cd "${PATH_ROOT}/component/cix_opensource/npu/npu_driver/driver"
make clean||true
cd -
}
source "$(dirname ${BASH_SOURCE[0]})/framework.sh"