From 9dca86cda8a7aedd00afcd1ebfa5150afac81296 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 23 Feb 2022 10:23:38 +0800 Subject: [PATCH] add scripts for raspberrypi4-64 building sdimg * fix the rootfs partiton error,use ext4 fs for rootfs type. * use Image for kernel8.img * download firmware from gitee.com * get the config.txt from yocot-embedded-tools Signed-off-by: root --- .../conf/machine/openeuler-raspberrypi4-64.conf | 3 ++- .../recipes-bsp/bootfiles/rpi-bootfiles.bbappend | 5 +++++ .../recipes-bsp/bootfiles/rpi-config_git.bbappend | 3 +++ .../recipes-core/images/raspberrypi4-64.inc | 2 -- .../raspberrypi/recipes-core/images/rpi.inc | 12 ++++++++++-- 5 files changed, 20 insertions(+), 5 deletions(-) create mode 100644 bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-bootfiles.bbappend create mode 100644 bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bbappend diff --git a/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf b/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf index bdd56ee9986..80dc4bede47 100644 --- a/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf +++ b/bsp/meta-openeuler-bsp/conf/machine/openeuler-raspberrypi4-64.conf @@ -6,4 +6,5 @@ ROOTFS_PACKAGE_ARCH = "aarch64" #set 0 to create zImage RPI_USE_U_BOOT = "0" -KERNEL_IMAGETYPE_DIRECT = "zImage" +KERNEL_IMAGETYPE_DIRECT = "Image" +ENABLE_UART = "1" diff --git a/bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-bootfiles.bbappend b/bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-bootfiles.bbappend new file mode 100644 index 00000000000..75f469e85cb --- /dev/null +++ b/bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-bootfiles.bbappend @@ -0,0 +1,5 @@ +SRC_URI = "file://raspberrypi-firmware/firmware-1.20210201.tar.gz \ +" + +S = "${WORKDIR}/firmware-1.20210201/boot" +#FILESEXTRAPATHS_prepend = "${OPENEULER_SP_DIR}/raspberrypi-firmware/:" diff --git a/bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bbappend b/bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bbappend new file mode 100644 index 00000000000..d2cb876c294 --- /dev/null +++ b/bsp/meta-openeuler-bsp/raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bbappend @@ -0,0 +1,3 @@ +SRC_URI = "file://yocto-embedded-tools/config/${MACHINE}/config.txt \ +" +S = "${WORKDIR}/yocto-embedded-tools/config/${MACHINE}" 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 ada8babbe54..6168e321728 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,4 +1,2 @@ #image configuration for aarch64 require rpi.inc - -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 3372e279874..386a50bdadd 100644 --- a/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/rpi.inc +++ b/bsp/meta-openeuler-bsp/raspberrypi/recipes-core/images/rpi.inc @@ -5,7 +5,6 @@ delete_boot_from_rootfs() { 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 @@ -22,7 +21,8 @@ IMAGE_POSTPROCESS_COMMAND += "copy_openeuler_distro;" #IMAGE_FEATURES += "splash" IMAGE_FSTYPES = "rpi-sdimg" -SDIMG_ROOTFS_TYPE = "cpio.gz" +SDIMG_ROOTFS_TYPE = "ext4" +EXTRA_IMAGECMD_ext4 += "-E no_copy_xattrs" #not depends to native parted/mtools and so on, use host command @@ -35,4 +35,12 @@ python() { new_depends = all_depends d.setVarFlag("do_image_rpi_sdimg", "depends", new_depends) bb.note("new depends of do_image_rpi_sdimg: %s" % new_depends) + + all_depends = d.getVarFlag("do_image_ext4", "depends") + bb.note("all depends of do_image_ext4: %s" % all_depends) + for dep in ['e2fsprogs']: + all_depends = all_depends.replace('%s-native:do_populate_sysroot' % dep, "") + new_depends = all_depends + d.setVarFlag("do_image_ext4", "depends", new_depends) + bb.note("new depends of do_image_ext4: %s" % new_depends) } -- Gitee