diff --git a/bsp/meta-openeuler-bsp/conf/distro/openeuler-bsp.conf b/bsp/meta-openeuler-bsp/conf/distro/openeuler-bsp.conf new file mode 100644 index 0000000000000000000000000000000000000000..e0ead5b7ed9be653941e6657ba9d43a61a2bb924 --- /dev/null +++ b/bsp/meta-openeuler-bsp/conf/distro/openeuler-bsp.conf @@ -0,0 +1 @@ +include conf/machine/openeuler-${MACHINE}.conf diff --git a/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf b/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf new file mode 100644 index 0000000000000000000000000000000000000000..bdd56ee99860479af9c3e5196b40977da57020d8 --- /dev/null +++ b/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf @@ -0,0 +1,9 @@ +require conf/multilib.conf +MULTILIB += "multilib:lib32" +DEFAULTTUNE_virtclass-multilib-lib32 = "armv7a" + +ROOTFS_PACKAGE_ARCH = "aarch64" + +#set 0 to create zImage +RPI_USE_U_BOOT = "0" +KERNEL_IMAGETYPE_DIRECT = "zImage" diff --git a/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/raspberrypi4-64.inc b/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/raspberrypi4-64.inc index 4218b016e35147e87d6c6eec7acc9800955fe64f..ada8babbe54405dffad4390317dc414e600f5a4e 100644 --- a/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/raspberrypi4-64.inc +++ b/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/raspberrypi4-64.inc @@ -1,10 +1,4 @@ #image configuration for aarch64 require rpi.inc -IMAGE_INSTALL = " \ -busybox-linuxrc \ -kernel \ -busybox \ -os-base \ -glibc \ -" +IMAGE_INSTALL += "kernel-image-zimage" diff --git a/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/rpi.inc b/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/rpi.inc index 67cedfc46de1df2b85e1b55999c92a68cc68a075..4a5350cfda909ce0e23d2329be5044d24e441a4f 100644 --- a/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/rpi.inc +++ b/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/rpi.inc @@ -1,16 +1,18 @@ delete_boot_from_rootfs() { test -d "${OUTPUT_DIR}" || mkdir -p "${OUTPUT_DIR}" pushd "${IMAGE_ROOTFS}" - rm -f "${OUTPUT_DIR}"/*Image* "${OUTPUT_DIR}"/initrd "${OUTPUT_DIR}"/vmlinux* - mv boot/${KERNEL_IMAGETYPE}-* "${OUTPUT_DIR}"/${KERNEL_IMAGETYPE} - mv boot/vmlinux* "${OUTPUT_DIR}"/ - mv boot/Image* "${OUTPUT_DIR}"/ - rm -r ./boot - touch lsm + if [ -d ./boot ];then + rm -f "${OUTPUT_DIR}"/*Image* "${OUTPUT_DIR}"/vmlinux* + mv boot/${KERNEL_IMAGETYPE}-* "${OUTPUT_DIR}"/${KERNEL_IMAGETYPE} + mv boot/vmlinux* "${OUTPUT_DIR}"/ + mv boot/Image* "${OUTPUT_DIR}"// || exit 1 + rm -r ./boot + fi popd } copy_openeuler_distro() { + rm -f "${OUTPUT_DIR}"/initrd cp -fp ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${IMAGE_FSTYPES} "${OUTPUT_DIR}"/initrd } diff --git a/meta-openeuler/conf/distro/openeuler.conf b/meta-openeuler/conf/distro/openeuler.conf index 24050299a4b4a4afa12ca5ccf9a984d5391f45c0..129891979ce9ce13725541a6c977c61416b2d54d 100644 --- a/meta-openeuler/conf/distro/openeuler.conf +++ b/meta-openeuler/conf/distro/openeuler.conf @@ -75,3 +75,4 @@ INHERIT += "get_rpmdeps" #disable the file checksum of fetch do_fetch[file-checksums] = "" SDK_INCLUDE_BUILDTOOLS = "0" +require conf/distro/openeuler-bsp.conf diff --git a/meta-openeuler/recipes-core/images/openeuler-image.bb b/meta-openeuler/recipes-core/images/openeuler-image.bb index d598c588fe90ea5b3302d3da079869d60883df1a..47d81379c13a7525bbc606dc3d0d6bab0de0e9ec 100644 --- a/meta-openeuler/recipes-core/images/openeuler-image.bb +++ b/meta-openeuler/recipes-core/images/openeuler-image.bb @@ -123,7 +123,7 @@ libevhtp \ libarchive \ libevent \ iSulad \ -kernel-module-overlay-5.10.0 \ +kernel-module-overlay \ kernel-img \ kernel-vmlinux \ " @@ -132,4 +132,9 @@ IMAGE_INSTALL += "${ROOTFS_BOOTSTRAP_INSTALL} ${IMAGE_INSTALL_normal} ${IMAGE_IN DISTRO_FEATURES += "glibc" +copy_opeueuler_sdk() { + cp -fp ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh "${OUTPUT_DIR}"/ +} +SDK_POSTPROCESS_COMMAND += "copy_opeueuler_sdk;" + require recipes-core/images/${MACHINE}.inc diff --git a/meta-openeuler/recipes-kernel/linux/linux-openeuler.bb b/meta-openeuler/recipes-kernel/linux/linux-openeuler.bb index c823fdc5c653f1b073b03ee7b320c3f3b5bb340c..b936163f612d20b0584f2ea0bf31364e149223f7 100644 --- a/meta-openeuler/recipes-kernel/linux/linux-openeuler.bb +++ b/meta-openeuler/recipes-kernel/linux/linux-openeuler.bb @@ -16,6 +16,8 @@ S = "${WORKDIR}/kernel-5.10" LINUX_VERSION ?= "5.10" LINUX_VERSION_EXTENSION_append = "-openeuler" +#delete v8 in kernel module name, such as kernel-module-xxx-5.10.0-v8 +KERNEL_MODULE_PACKAGE_SUFFIX = "" PV = "${LINUX_VERSION}"