!200 kernel_linux_build: add riscv64 support

Merge pull request !200 from PolyOS Project/master
This commit is contained in:
openharmony_ci
2024-01-22 15:59:18 +00:00
committed by Gitee
4 changed files with 19 additions and 3 deletions
+2
View File
@@ -25,6 +25,8 @@ if (target_cpu == "arm") {
kernel_image = "uImage"
} else if (target_cpu == "arm64") {
kernel_image = "Image"
} else if (target_cpu == "riscv64") {
kernel_image = "Image"
} else if (target_cpu == "x86_64") {
kernel_image = "bzImage"
}
+3
View File
@@ -38,6 +38,9 @@ fi
elif [ "$5" == "arm64" ];then
cp ${2}/kernel/OBJ/${8}/arch/arm64/boot/Image ${3}/Image
elif [ "$5" == "riscv64" ];then
cp ${2}/kernel/OBJ/${8}/arch/riscv/boot/Image ${3}/Image
elif [ "$5" == "x86_64" ];then
cp ${2}/kernel/OBJ/${8}/arch/x86/boot/bzImage ${3}/bzImage
fi
+8 -2
View File
@@ -33,18 +33,24 @@ KERNEL_HOSTCC := $(CLANG_HOST_TOOLCHAIN)/clang
KERNEL_PREBUILT_MAKE := make
CLANG_CC := $(CLANG_HOST_TOOLCHAIN)/clang
KERNEL_CROSS_COMPILE :=
ifeq ($(KERNEL_ARCH), arm)
KERNEL_TARGET_TOOLCHAIN := $(PREBUILTS_GCC_DIR)/linux-x86/arm/gcc-linaro-7.5.0-arm-linux-gnueabi/bin
KERNEL_TARGET_TOOLCHAIN_PREFIX := $(KERNEL_TARGET_TOOLCHAIN)/arm-linux-gnueabi-
else ifeq ($(KERNEL_ARCH), arm64)
KERNEL_TARGET_TOOLCHAIN := $(PREBUILTS_GCC_DIR)/linux-x86/aarch64/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin
KERNEL_TARGET_TOOLCHAIN_PREFIX := $(KERNEL_TARGET_TOOLCHAIN)/aarch64-linux-gnu-
else ifeq ($(KERNEL_ARCH), riscv64)
PATH := $(CLANG_HOST_TOOLCHAIN):$(PATH)
KERNEL_ARCH := riscv
KERNEL_TARGET_TOOLCHAIN_PREFIX :=
KERNEL_CROSS_COMPILE += LLVM=1
KERNEL_CROSS_COMPILE += LLVM_IAS=1
else ifeq ($(KERNEL_ARCH), x86_64)
KERNEL_TARGET_TOOLCHAIN := gcc
KERNEL_TARGET_TOOLCHAIN_PREFIX :=
endif
KERNEL_CROSS_COMPILE :=
ifeq ($(DEVICE_NAME), hispark_phoenix)
KERNEL_CROSS_COMPILE += CONFIG_MSP="y"
endif
@@ -85,7 +91,7 @@ endif
ifeq ($(PRODUCT_PATH), vendor/hisilicon/watchos)
$(hide) cd $(KERNEL_SRC_TMP_PATH) && patch -p1 < $(PRODUCT_PATCH_FILE)
else
$(hide) cd $(KERNEL_SRC_TMP_PATH) && patch -p1 < $(DEVICE_PATCH_FILE)
$(hide) cd $(KERNEL_SRC_TMP_PATH) && test -f $(DEVICE_PATCH_FILE) && patch -p1 < $(DEVICE_PATCH_FILE) || true
endif
ifneq ($(findstring $(BUILD_TYPE), small),)
+6 -1
View File
@@ -40,7 +40,12 @@ elif [ "$KERNEL_ARCH" == "x86_64" ];then
kernel_image="bzImage"
fi
export KERNEL_IMAGE=${kernel_image}
LINUX_KERNEL_IMAGE_FILE=${LINUX_KERNEL_OBJ_OUT}/arch/${KERNEL_ARCH}/boot/${kernel_image}
if [ "$KERNEL_ARCH" == "riscv64" ];then
LINUX_KERNEL_IMAGE_FILE=${LINUX_KERNEL_OBJ_OUT}/arch/riscv/boot/Image
else
LINUX_KERNEL_IMAGE_FILE=${LINUX_KERNEL_OBJ_OUT}/arch/${KERNEL_ARCH}/boot/${kernel_image}
fi
if [ "$DEVICE_NAME" == "hispark_phoenix" ];then
export SDK_SOURCE_DIR=${OHOS_ROOT_PATH}/device/soc/hisilicon/hi3751v350/sdk_linux/source