Loading recipes-core/images/core-image-elphel393-initramfs.bb 0 → 100644 +22 −0 Original line number Diff line number Diff line # Simple initramfs image. Mostly used for live images. DESCRIPTION = "Small image capable of booting a device. The kernel includes \ the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \ first 'init' program more efficiently." PACKAGE_INSTALL = "initramfs-live-boot ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" # Do not pollute the initrd image with rootfs features IMAGE_FEATURES = "" export IMAGE_BASENAME = "core-image-elphel393-initramfs" IMAGE_LINGUAS = "" LICENSE = "MIT" IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" inherit core-image IMAGE_ROOTFS_SIZE = "8192" BAD_RECOMMENDATIONS += "busybox-syslog" recipes-core/images/core-image-elphel393.bb +1 −0 Original line number Diff line number Diff line Loading @@ -8,6 +8,7 @@ IMAGE_INSTALL = "packagegroup-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${CORE_IMA IMAGE_INSTALL_append = "u-boot-ezynq" IMAGE_INSTALL_append += " \ sudo \ gcc \ python-core \ python-numpy \ python-argparse \ Loading recipes-core/initrdscripts/files/init-live.sh 0 → 100644 +277 −0 Original line number Diff line number Diff line #!/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin ROOT_MOUNT="/rootfs" ROOT_IMAGE="rootfs.img" MOUNT="/bin/mount" UMOUNT="/bin/umount" ISOLINUX="" ROOT_DISK="" # Copied from initramfs-framework. The core of this script probably should be # turned into initramfs-framework modules to reduce duplication. udev_daemon() { OPTIONS="/sbin/udev/udevd /sbin/udevd /lib/udev/udevd /lib/systemd/systemd-udevd" for o in $OPTIONS; do if [ -x "$o" ]; then echo $o return 0 fi done return 1 } _UDEV_DAEMON=`udev_daemon` early_setup() { mkdir -p /proc mkdir -p /sys mount -t proc proc /proc mount -t sysfs sysfs /sys mount -t devtmpfs none /dev # support modular kernel modprobe isofs 2> /dev/null mkdir -p /run mkdir -p /var/run $_UDEV_DAEMON --daemon udevadm trigger --action=add } read_args() { [ -z "$CMDLINE" ] && CMDLINE=`cat /proc/cmdline` for arg in $CMDLINE; do optarg=`expr "x$arg" : 'x[^=]*=\(.*\)'` case $arg in root=*) ROOT_DEVICE=$optarg ;; rootimage=*) ROOT_IMAGE=$optarg ;; rootfstype=*) ROOT_FSTYPE=$optarg modprobe $optarg 2> /dev/null ;; # ubi.mtd=*) # optarg_arr=${optarg//,/ } # ROOT_UBIVOL=$optarg_arr[0] # ;; LABEL=*) label=$optarg ;; video=*) video_mode=$arg ;; vga=*) vga_mode=$arg ;; console=*) if [ -z "${console_params}" ]; then console_params=$arg else console_params="$console_params $arg" fi ;; debugshell*) if [ -z "$optarg" ]; then shelltimeout=30 else shelltimeout=$optarg fi esac done } boot_live_root() { # Watches the udev event queue, and exits if all current events are handled udevadm settle --timeout=3 --quiet killall "${_UDEV_DAEMON##*/}" 2>/dev/null # # Allow for identification of the real root even after boot # mkdir -p ${ROOT_MOUNT}/media/realroot # mount -n --move "/run/media/${ROOT_DISK}" ${ROOT_MOUNT}/media/realroot # # Move the mount points of some filesystems over to # # the corresponding directories under the real root filesystem. # for dir in `awk '/\/dev.* \/run\/media/{print $2}' /proc/mounts`; do # mkdir -p ${ROOT_MOUNT}/media/${dir##*/} # mount -n --move $dir ${ROOT_MOUNT}/media/${dir##*/} # done mount -n --move /proc ${ROOT_MOUNT}/proc mount -n --move /sys ${ROOT_MOUNT}/sys mount -n --move /dev ${ROOT_MOUNT}/dev cd $ROOT_MOUNT # busybox switch_root supports -c option exec switch_root -c /dev/console $ROOT_MOUNT /sbin/init $CMDLINE || fatal "Couldn't switch_root, dropping to shell" } fatal() { echo $1 >$CONSOLE echo >$CONSOLE exec sh } early_setup [ -z "$CONSOLE" ] && CONSOLE="/dev/console" read_args #echo "Not waiting for removable media..." # C=0 # while true # do # echo "testing C= $C" # echo "break immediately" # break # for i in `ls /run/media 2>/dev/null`; do # if [ -f /run/media/$i/$ROOT_IMAGE ] ; then # found="yes" # ROOT_DISK="$i" # break # elif [ -f /run/media/$i/isolinux/$ROOT_IMAGE ]; then # found="yes" # ISOLINUX="isolinux" # ROOT_DISK="$i" # break # fi # done # if [ "$found" = "yes" ]; then # break; # fi # # don't wait for more than $shelltimeout seconds, if it's set # if [ -n "$shelltimeout" ]; then # echo -n " " $(( $shelltimeout - $C )) # if [ $C -ge $shelltimeout ]; then # echo "..." # echo "Mounted filesystems" # mount | grep media # echo "Available block devices" # cat /proc/partitions # fatal "Cannot find $ROOT_IMAGE file in /run/media/* , dropping to a shell " # fi # C=$(( C + 1 )) # fi # sleep 1 # done # Try to mount the root image read-write and then boot it up. # This function distinguishes between a read-only image and a read-write image. # In the former case (typically an iso), it tries to make a union mount if possible. # In the latter case, the root image could be mounted and then directly booted up. mount_and_boot() { mkdir $ROOT_MOUNT #mknod /dev/loop0 b 7 0 2>/dev/null #if [ "$ROOT_FSTYPE" = "ubifs" ]; then #unlock flash ? - driver should have taken care of this # ubiattach won't be found and there's no need because kernel already knows #ubiattach /dev/ubi_ctrl -m $ROOT_UBIVOL #fi if ! mount -t $ROOT_FSTYPE -o rw,noatime $ROOT_DEVICE $ROOT_MOUNT ; then fatal "Could not mount rootfs device (not $ROOT_FSTYPE?)" fi # always 'overlay' TMP=/var/volatile/tmp mkdir -p /var/volatile mount -t tmpfs tmpfs /var/volatile mkdir -p $TMP/rootfs.ro $TMP/rootfs.rw if ! mount -n --move $ROOT_MOUNT $TMP/rootfs.ro; then rm -rf $TMP/rootfs.ro $TMP/rootfs.rw fatal "Could not move rootfs mount point" else mount -t tmpfs -o rw,noatime,mode=755 tmpfs $TMP/rootfs.rw mkdir -p $TMP/rootfs.rw/upperdir $TMP/rootfs.rw/work mount -t overlay overlay -o "lowerdir=$TMP/rootfs.ro,upperdir=$TMP/rootfs.rw/upperdir,workdir=$TMP/rootfs.rw/work" $ROOT_MOUNT # Assuming $ROOT_MOUNT/var/volatile exists mount --move /var/volatile $ROOT_MOUNT/var/volatile # Everything is already moved with /var/volatile #mkdir -p $ROOT_MOUNT/rootfs.ro $ROOT_MOUNT/rootfs.rw #mount --move /rootfs.ro $ROOT_MOUNT/rootfs.ro #mount --move /rootfs.rw $ROOT_MOUNT/rootfs.rw fi boot_live_root #commenting out old lines # mkdir $ROOT_MOUNT # mknod /dev/loop0 b 7 0 2>/dev/null # # if ! mount -o rw,loop,noatime,nodiratime /run/media/$ROOT_DISK/$ISOLINUX/$ROOT_IMAGE $ROOT_MOUNT ; then # fatal "Could not mount rootfs image" # fi # # if touch $ROOT_MOUNT/bin 2>/dev/null; then # # The root image is read-write, directly boot it up. # boot_live_root # fi # # # determine which unification filesystem to use # union_fs_type="" # if grep -q -w "overlay" /proc/filesystems; then # union_fs_type="overlay" # elif grep -q -w "aufs" /proc/filesystems; then # union_fs_type="aufs" # else # union_fs_type="" # fi # # # make a union mount if possible # case $union_fs_type in # "overlay") # mkdir -p /rootfs.ro /rootfs.rw # if ! mount -n --move $ROOT_MOUNT /rootfs.ro; then # rm -rf /rootfs.ro /rootfs.rw # fatal "Could not move rootfs mount point" # else # mount -t tmpfs -o rw,noatime,mode=755 tmpfs /rootfs.rw # mkdir -p /rootfs.rw/upperdir /rootfs.rw/work # mount -t overlay overlay -o "lowerdir=/rootfs.ro,upperdir=/rootfs.rw/upperdir,workdir=/rootfs.rw/work" $ROOT_MOUNT # mkdir -p $ROOT_MOUNT/rootfs.ro $ROOT_MOUNT/rootfs.rw # mount --move /rootfs.ro $ROOT_MOUNT/rootfs.ro # mount --move /rootfs.rw $ROOT_MOUNT/rootfs.rw # fi # ;; # "aufs") # mkdir -p /rootfs.ro /rootfs.rw # if ! mount -n --move $ROOT_MOUNT /rootfs.ro; then # rm -rf /rootfs.ro /rootfs.rw # fatal "Could not move rootfs mount point" # else # mount -t tmpfs -o rw,noatime,mode=755 tmpfs /rootfs.rw # mount -t aufs -o "dirs=/rootfs.rw=rw:/rootfs.ro=ro" aufs $ROOT_MOUNT # mkdir -p $ROOT_MOUNT/rootfs.ro $ROOT_MOUNT/rootfs.rw # mount --move /rootfs.ro $ROOT_MOUNT/rootfs.ro # mount --move /rootfs.rw $ROOT_MOUNT/rootfs.rw # fi # ;; # "") # mount -t tmpfs -o rw,noatime,mode=755 tmpfs $ROOT_MOUNT/media # ;; # esac # # # boot the image # boot_live_root } # if [ "$label" != "boot" -a -f $label.sh ] ; then # if [ -f /run/media/$i/$ISOLINUX/$ROOT_IMAGE ] ; then # ./$label.sh $i/$ISOLINUX $ROOT_IMAGE $video_mode $vga_mode $console_params # else # fatal "Could not find $label script" # fi # # # If we're getting here, we failed... # fatal "Target $label failed" # fi mount_and_boot recipes-core/initrdscripts/initramfs-live-boot_1.0.bbappend 0 → 100644 +1 −0 Original line number Diff line number Diff line FILESEXTRAPATHS_prepend := "${THISDIR}/files:" recipes-kernel/linux/linux-xlnx_4.0.bbappend +35 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,10 @@ export _MAKEFLAGS="-s -w -B KCFLAGS='-v'" export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE _MAKEFLAGS" EXTRA_OEMAKE = "${_MAKEFLAGS}" INITRAMFS_IMAGE = "core-image-elphel393-initramfs" INITRAMFS_IMAGE_BUNDLE = "1" #IMAGE_FSTYPES = "cpio.gz" do_fetch_append() { if os.path.isdir("${DEV_DIR}"): print("Found DEV_DIR, skipping cloning") Loading Loading @@ -78,5 +82,36 @@ do_deploy_append(){ else echo "NOT 3 FOUND!" fi #copy initramfs image over initramfsless image if [ -f ${DEPLOYDIR}/${INITRAMFS_BASE_NAME}.bin ]; then if [ -f ${DEPLOY_DIR_IMAGE}/${RLOC}/${PRODUCTION_KERNEL} ]; then rm ${DEPLOY_DIR_IMAGE}/${RLOC}/${PRODUCTION_KERNEL} fi cp ${DEPLOYDIR}/${INITRAMFS_BASE_NAME}.bin ${DEPLOY_DIR_IMAGE}/${RLOC}/${PRODUCTION_KERNEL} fi done } # Override kernel_do_compile used by do_bundle_initramfs in kernel.bbclass # Added ${PARALLEL_MAKE} only kernel_do_compile() { unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE # The $use_alternate_initrd is only set from # do_bundle_initramfs() This variable is specifically for the # case where we are making a second pass at the kernel # compilation and we want to force the kernel build to use a # different initramfs image. The way to do that in the kernel # is to specify: # make ...args... CONFIG_INITRAMFS_SOURCE=some_other_initramfs.cpio if [ "$use_alternate_initrd" = "" ] && [ "${INITRAMFS_TASK}" != "" ] ; then # The old style way of copying an prebuilt image and building it # is turned on via INTIRAMFS_TASK != "" copy_initramfs use_alternate_initrd=CONFIG_INITRAMFS_SOURCE=${B}/usr/${INITRAMFS_IMAGE}-${MACHINE}.cpio fi oe_runmake ${KERNEL_IMAGETYPE_FOR_MAKE} ${PARALLEL_MAKE} ${KERNEL_ALT_IMAGETYPE} CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} $use_alternate_initrd if test "${KERNEL_IMAGETYPE_FOR_MAKE}.gz" = "${KERNEL_IMAGETYPE}"; then gzip -9c < "${KERNEL_IMAGETYPE_FOR_MAKE}" > "${KERNEL_OUTPUT}" fi } Loading
recipes-core/images/core-image-elphel393-initramfs.bb 0 → 100644 +22 −0 Original line number Diff line number Diff line # Simple initramfs image. Mostly used for live images. DESCRIPTION = "Small image capable of booting a device. The kernel includes \ the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \ first 'init' program more efficiently." PACKAGE_INSTALL = "initramfs-live-boot ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" # Do not pollute the initrd image with rootfs features IMAGE_FEATURES = "" export IMAGE_BASENAME = "core-image-elphel393-initramfs" IMAGE_LINGUAS = "" LICENSE = "MIT" IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" inherit core-image IMAGE_ROOTFS_SIZE = "8192" BAD_RECOMMENDATIONS += "busybox-syslog"
recipes-core/images/core-image-elphel393.bb +1 −0 Original line number Diff line number Diff line Loading @@ -8,6 +8,7 @@ IMAGE_INSTALL = "packagegroup-core-boot ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${CORE_IMA IMAGE_INSTALL_append = "u-boot-ezynq" IMAGE_INSTALL_append += " \ sudo \ gcc \ python-core \ python-numpy \ python-argparse \ Loading
recipes-core/initrdscripts/files/init-live.sh 0 → 100644 +277 −0 Original line number Diff line number Diff line #!/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin ROOT_MOUNT="/rootfs" ROOT_IMAGE="rootfs.img" MOUNT="/bin/mount" UMOUNT="/bin/umount" ISOLINUX="" ROOT_DISK="" # Copied from initramfs-framework. The core of this script probably should be # turned into initramfs-framework modules to reduce duplication. udev_daemon() { OPTIONS="/sbin/udev/udevd /sbin/udevd /lib/udev/udevd /lib/systemd/systemd-udevd" for o in $OPTIONS; do if [ -x "$o" ]; then echo $o return 0 fi done return 1 } _UDEV_DAEMON=`udev_daemon` early_setup() { mkdir -p /proc mkdir -p /sys mount -t proc proc /proc mount -t sysfs sysfs /sys mount -t devtmpfs none /dev # support modular kernel modprobe isofs 2> /dev/null mkdir -p /run mkdir -p /var/run $_UDEV_DAEMON --daemon udevadm trigger --action=add } read_args() { [ -z "$CMDLINE" ] && CMDLINE=`cat /proc/cmdline` for arg in $CMDLINE; do optarg=`expr "x$arg" : 'x[^=]*=\(.*\)'` case $arg in root=*) ROOT_DEVICE=$optarg ;; rootimage=*) ROOT_IMAGE=$optarg ;; rootfstype=*) ROOT_FSTYPE=$optarg modprobe $optarg 2> /dev/null ;; # ubi.mtd=*) # optarg_arr=${optarg//,/ } # ROOT_UBIVOL=$optarg_arr[0] # ;; LABEL=*) label=$optarg ;; video=*) video_mode=$arg ;; vga=*) vga_mode=$arg ;; console=*) if [ -z "${console_params}" ]; then console_params=$arg else console_params="$console_params $arg" fi ;; debugshell*) if [ -z "$optarg" ]; then shelltimeout=30 else shelltimeout=$optarg fi esac done } boot_live_root() { # Watches the udev event queue, and exits if all current events are handled udevadm settle --timeout=3 --quiet killall "${_UDEV_DAEMON##*/}" 2>/dev/null # # Allow for identification of the real root even after boot # mkdir -p ${ROOT_MOUNT}/media/realroot # mount -n --move "/run/media/${ROOT_DISK}" ${ROOT_MOUNT}/media/realroot # # Move the mount points of some filesystems over to # # the corresponding directories under the real root filesystem. # for dir in `awk '/\/dev.* \/run\/media/{print $2}' /proc/mounts`; do # mkdir -p ${ROOT_MOUNT}/media/${dir##*/} # mount -n --move $dir ${ROOT_MOUNT}/media/${dir##*/} # done mount -n --move /proc ${ROOT_MOUNT}/proc mount -n --move /sys ${ROOT_MOUNT}/sys mount -n --move /dev ${ROOT_MOUNT}/dev cd $ROOT_MOUNT # busybox switch_root supports -c option exec switch_root -c /dev/console $ROOT_MOUNT /sbin/init $CMDLINE || fatal "Couldn't switch_root, dropping to shell" } fatal() { echo $1 >$CONSOLE echo >$CONSOLE exec sh } early_setup [ -z "$CONSOLE" ] && CONSOLE="/dev/console" read_args #echo "Not waiting for removable media..." # C=0 # while true # do # echo "testing C= $C" # echo "break immediately" # break # for i in `ls /run/media 2>/dev/null`; do # if [ -f /run/media/$i/$ROOT_IMAGE ] ; then # found="yes" # ROOT_DISK="$i" # break # elif [ -f /run/media/$i/isolinux/$ROOT_IMAGE ]; then # found="yes" # ISOLINUX="isolinux" # ROOT_DISK="$i" # break # fi # done # if [ "$found" = "yes" ]; then # break; # fi # # don't wait for more than $shelltimeout seconds, if it's set # if [ -n "$shelltimeout" ]; then # echo -n " " $(( $shelltimeout - $C )) # if [ $C -ge $shelltimeout ]; then # echo "..." # echo "Mounted filesystems" # mount | grep media # echo "Available block devices" # cat /proc/partitions # fatal "Cannot find $ROOT_IMAGE file in /run/media/* , dropping to a shell " # fi # C=$(( C + 1 )) # fi # sleep 1 # done # Try to mount the root image read-write and then boot it up. # This function distinguishes between a read-only image and a read-write image. # In the former case (typically an iso), it tries to make a union mount if possible. # In the latter case, the root image could be mounted and then directly booted up. mount_and_boot() { mkdir $ROOT_MOUNT #mknod /dev/loop0 b 7 0 2>/dev/null #if [ "$ROOT_FSTYPE" = "ubifs" ]; then #unlock flash ? - driver should have taken care of this # ubiattach won't be found and there's no need because kernel already knows #ubiattach /dev/ubi_ctrl -m $ROOT_UBIVOL #fi if ! mount -t $ROOT_FSTYPE -o rw,noatime $ROOT_DEVICE $ROOT_MOUNT ; then fatal "Could not mount rootfs device (not $ROOT_FSTYPE?)" fi # always 'overlay' TMP=/var/volatile/tmp mkdir -p /var/volatile mount -t tmpfs tmpfs /var/volatile mkdir -p $TMP/rootfs.ro $TMP/rootfs.rw if ! mount -n --move $ROOT_MOUNT $TMP/rootfs.ro; then rm -rf $TMP/rootfs.ro $TMP/rootfs.rw fatal "Could not move rootfs mount point" else mount -t tmpfs -o rw,noatime,mode=755 tmpfs $TMP/rootfs.rw mkdir -p $TMP/rootfs.rw/upperdir $TMP/rootfs.rw/work mount -t overlay overlay -o "lowerdir=$TMP/rootfs.ro,upperdir=$TMP/rootfs.rw/upperdir,workdir=$TMP/rootfs.rw/work" $ROOT_MOUNT # Assuming $ROOT_MOUNT/var/volatile exists mount --move /var/volatile $ROOT_MOUNT/var/volatile # Everything is already moved with /var/volatile #mkdir -p $ROOT_MOUNT/rootfs.ro $ROOT_MOUNT/rootfs.rw #mount --move /rootfs.ro $ROOT_MOUNT/rootfs.ro #mount --move /rootfs.rw $ROOT_MOUNT/rootfs.rw fi boot_live_root #commenting out old lines # mkdir $ROOT_MOUNT # mknod /dev/loop0 b 7 0 2>/dev/null # # if ! mount -o rw,loop,noatime,nodiratime /run/media/$ROOT_DISK/$ISOLINUX/$ROOT_IMAGE $ROOT_MOUNT ; then # fatal "Could not mount rootfs image" # fi # # if touch $ROOT_MOUNT/bin 2>/dev/null; then # # The root image is read-write, directly boot it up. # boot_live_root # fi # # # determine which unification filesystem to use # union_fs_type="" # if grep -q -w "overlay" /proc/filesystems; then # union_fs_type="overlay" # elif grep -q -w "aufs" /proc/filesystems; then # union_fs_type="aufs" # else # union_fs_type="" # fi # # # make a union mount if possible # case $union_fs_type in # "overlay") # mkdir -p /rootfs.ro /rootfs.rw # if ! mount -n --move $ROOT_MOUNT /rootfs.ro; then # rm -rf /rootfs.ro /rootfs.rw # fatal "Could not move rootfs mount point" # else # mount -t tmpfs -o rw,noatime,mode=755 tmpfs /rootfs.rw # mkdir -p /rootfs.rw/upperdir /rootfs.rw/work # mount -t overlay overlay -o "lowerdir=/rootfs.ro,upperdir=/rootfs.rw/upperdir,workdir=/rootfs.rw/work" $ROOT_MOUNT # mkdir -p $ROOT_MOUNT/rootfs.ro $ROOT_MOUNT/rootfs.rw # mount --move /rootfs.ro $ROOT_MOUNT/rootfs.ro # mount --move /rootfs.rw $ROOT_MOUNT/rootfs.rw # fi # ;; # "aufs") # mkdir -p /rootfs.ro /rootfs.rw # if ! mount -n --move $ROOT_MOUNT /rootfs.ro; then # rm -rf /rootfs.ro /rootfs.rw # fatal "Could not move rootfs mount point" # else # mount -t tmpfs -o rw,noatime,mode=755 tmpfs /rootfs.rw # mount -t aufs -o "dirs=/rootfs.rw=rw:/rootfs.ro=ro" aufs $ROOT_MOUNT # mkdir -p $ROOT_MOUNT/rootfs.ro $ROOT_MOUNT/rootfs.rw # mount --move /rootfs.ro $ROOT_MOUNT/rootfs.ro # mount --move /rootfs.rw $ROOT_MOUNT/rootfs.rw # fi # ;; # "") # mount -t tmpfs -o rw,noatime,mode=755 tmpfs $ROOT_MOUNT/media # ;; # esac # # # boot the image # boot_live_root } # if [ "$label" != "boot" -a -f $label.sh ] ; then # if [ -f /run/media/$i/$ISOLINUX/$ROOT_IMAGE ] ; then # ./$label.sh $i/$ISOLINUX $ROOT_IMAGE $video_mode $vga_mode $console_params # else # fatal "Could not find $label script" # fi # # # If we're getting here, we failed... # fatal "Target $label failed" # fi mount_and_boot
recipes-core/initrdscripts/initramfs-live-boot_1.0.bbappend 0 → 100644 +1 −0 Original line number Diff line number Diff line FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
recipes-kernel/linux/linux-xlnx_4.0.bbappend +35 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,10 @@ export _MAKEFLAGS="-s -w -B KCFLAGS='-v'" export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE _MAKEFLAGS" EXTRA_OEMAKE = "${_MAKEFLAGS}" INITRAMFS_IMAGE = "core-image-elphel393-initramfs" INITRAMFS_IMAGE_BUNDLE = "1" #IMAGE_FSTYPES = "cpio.gz" do_fetch_append() { if os.path.isdir("${DEV_DIR}"): print("Found DEV_DIR, skipping cloning") Loading Loading @@ -78,5 +82,36 @@ do_deploy_append(){ else echo "NOT 3 FOUND!" fi #copy initramfs image over initramfsless image if [ -f ${DEPLOYDIR}/${INITRAMFS_BASE_NAME}.bin ]; then if [ -f ${DEPLOY_DIR_IMAGE}/${RLOC}/${PRODUCTION_KERNEL} ]; then rm ${DEPLOY_DIR_IMAGE}/${RLOC}/${PRODUCTION_KERNEL} fi cp ${DEPLOYDIR}/${INITRAMFS_BASE_NAME}.bin ${DEPLOY_DIR_IMAGE}/${RLOC}/${PRODUCTION_KERNEL} fi done } # Override kernel_do_compile used by do_bundle_initramfs in kernel.bbclass # Added ${PARALLEL_MAKE} only kernel_do_compile() { unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE # The $use_alternate_initrd is only set from # do_bundle_initramfs() This variable is specifically for the # case where we are making a second pass at the kernel # compilation and we want to force the kernel build to use a # different initramfs image. The way to do that in the kernel # is to specify: # make ...args... CONFIG_INITRAMFS_SOURCE=some_other_initramfs.cpio if [ "$use_alternate_initrd" = "" ] && [ "${INITRAMFS_TASK}" != "" ] ; then # The old style way of copying an prebuilt image and building it # is turned on via INTIRAMFS_TASK != "" copy_initramfs use_alternate_initrd=CONFIG_INITRAMFS_SOURCE=${B}/usr/${INITRAMFS_IMAGE}-${MACHINE}.cpio fi oe_runmake ${KERNEL_IMAGETYPE_FOR_MAKE} ${PARALLEL_MAKE} ${KERNEL_ALT_IMAGETYPE} CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} $use_alternate_initrd if test "${KERNEL_IMAGETYPE_FOR_MAKE}.gz" = "${KERNEL_IMAGETYPE}"; then gzip -9c < "${KERNEL_IMAGETYPE_FOR_MAKE}" > "${KERNEL_OUTPUT}" fi }