# # old_revision [b276360ffd472780ff8a2ecb78b15b2b96691746] # # delete "packages/kexecboot/files/rootdelay.patch" # # add_file "packages/kexecboot/files/rootwait-cmdline.patch" # content [bc13dfed168abb2a02a35ad7d139fe3f1fdf8d3a] # # patch "classes/kernel.bbclass" # from [772e3ddb49b5122286d15dfc10a357056263d0e7] # to [80b16e09a4ef2752ce3455dbddc6d417b5617e67] # # patch "conf/distro/include/angstrom-2008-preferred-versions.inc" # from [a88b28843d763c56d5d21f55bb7da235f6f094d1] # to [ca869c335ba69cdf7a26eb14af1ec73b759a2587] # # patch "conf/machine/akita.conf" # from [9b0f2249c3421c2371583ca663039e640ed69a34] # to [48f7f9b1e69f618fc8139a7fed39acabfd2f9cd5] # # patch "conf/machine/c7x0.conf" # from [6005085b97146720e5fa0cdc84c0a795df419453] # to [2217d2e8ca47ff03db3b1f219f0129feb7c22a24] # # patch "conf/machine/include/zaurus-2.6.inc" # from [d5af9251eed68a286197deb3a5761113b02bbd2f] # to [10c8eba0fdf36a3a8791707734609a79ce19bde5] # # patch "conf/machine/spitz.conf" # from [eac3637cf485585570f8a6fa0876727d7c01f30d] # to [4365a2d685e912e397fe05af73cbedb6e33d1d08] # # patch "packages/kexecboot/initramfs-kexecboot_1.0.bb" # from [d3cfea5e56d92934495f6342d176e974b5c9baf3] # to [b255501c2e6a78b9d5f74e1c2fbc9df724da5503] # # patch "packages/kexecboot/kexecboot_0.3.bb" # from [549463678e80781a4efa57e3c566d8668953cb08] # to [f069f61fd6d1b69a83a4446e84574904259d3e47] # # patch "packages/kexecboot/linux-kexecboot-2.6.26/defconfig-akita" # from [064c36530b213dae882be1b6bb2cbab8615906f8] # to [00830ed0414849cf715b07e153eb67fac87aef14] # # patch "packages/kexecboot/linux-kexecboot-2.6.26/defconfig-c7x0" # from [9840eec605b360f4cdcf976973331ce274a89b6f] # to [d15a5f05587c98203f9ee732dd0be56761cf05ee] # # patch "packages/kexecboot/linux-kexecboot-2.6.26/defconfig-spitz" # from [121ce2ca2da79de4072c338f63ad9e345f2674bb] # to [a02d87cbebf6c43d557d077d9c6f64313fe0fc1b] # # patch "packages/kexecboot/linux-kexecboot.inc" # from [01dd6603a2a2fb2e9c3c56c171153b59ac8ec096] # to [a533cf1bfa9b8d7eaa54dd1bcfaea08c5f9d5657] # # patch "packages/linux/linux-rp.inc" # from [d5e693d8ce0306dd5f561a01017f7f042f4cf537] # to [a41b60c5697452af23fb4a7fc29bccca6665fbb0] # # patch "packages/linux/linux-rp_2.6.24.bb" # from [8e37ea5330cc69fda41a71482d14ad5f29a375a9] # to [ea9a2459d19a259975b8c022cd5645d90d1e3278] # # patch "packages/linux/linux-rp_2.6.26.bb" # from [3fe7077dd4707984593d30eb66cafde62b2120f6] # to [e84e896484e1f15f06156074a803f64728f09f81] # ============================================================ --- packages/kexecboot/files/rootwait-cmdline.patch bc13dfed168abb2a02a35ad7d139fe3f1fdf8d3a +++ packages/kexecboot/files/rootwait-cmdline.patch bc13dfed168abb2a02a35ad7d139fe3f1fdf8d3a @@ -0,0 +1,46 @@ +--- kexecboot.orig/kexecboot.c 2008-08-03 17:08:31.000000000 +0200 ++++ kexecboot/kexecboot.c 2008-08-21 23:41:51.000000000 +0200 +@@ -83,11 +83,38 @@ + //kexec --command-line="CMDLINE" -l /mnt/boot/zImage + char command[COMMAND_LINE_SIZE + 60]; + mount(boot->device, "/mnt", boot->fstype, MS_RDONLY, NULL); +- if( boot->cmdline ) +- sprintf(command,"/usr/sbin/kexec --command-line=\"%s root=%s rootfstype=%s\" -l %s", +- boot->cmdline, boot->device, boot->fstype, boot->kernelpath); +- else +- sprintf(command,"kexec -l %s", boot->kernelpath); ++ ++ /* pass some extra args from cmdline */ ++ ++ const char *env; ++ char *extra_cmdline; ++ ++ env = getenv("EXTRA_CMDLINE"); ++ if (env == NULL) { ++ /* Handle error */ ++ } ++ ++ extra_cmdline = (char *)malloc(strlen(env) + 1); ++ if (extra_cmdline == NULL) { ++ /* Handle error */ ++ } ++ ++ /* local copy, edit this if needed */ ++ strcpy(extra_cmdline, env); ++ ++ if( boot->cmdline ) { ++ sprintf(command,"/usr/sbin/kexec --command-line=\"%s %s root=%s rootfstype=%s rootwait\" -l %s", ++ extra_cmdline, boot->cmdline, boot->device, boot->fstype, boot->kernelpath); ++ } ++ else { ++ if ( strlen(extra_cmdline) > 0 ) { ++ sprintf(command,"/usr/sbin/kexec --command-line=\"%s\" -l %s", extra_cmdline, boot->kernelpath); ++ } ++ else { ++ sprintf(command,"/usr/sbin/kexec -l %s", boot->kernelpath); ++ } ++ } ++ + system(command); + // puts(command); + umount("/mnt"); ============================================================ --- classes/kernel.bbclass 772e3ddb49b5122286d15dfc10a357056263d0e7 +++ classes/kernel.bbclass 80b16e09a4ef2752ce3455dbddc6d417b5617e67 @@ -462,7 +462,7 @@ do_sizecheck() { fi } -addtask sizecheck before do_install after do_compile +##addtask sizecheck before do_install after do_compile KERNEL_IMAGE_BASE_NAME ?= "${KERNEL_IMAGETYPE}-${PV}-${PR}-${MACHINE}" KERNEL_IMAGE_SYMLINK_NAME ?= "${KERNEL_IMAGETYPE}-${MACHINE}" ============================================================ --- conf/distro/include/angstrom-2008-preferred-versions.inc a88b28843d763c56d5d21f55bb7da235f6f094d1 +++ conf/distro/include/angstrom-2008-preferred-versions.inc ca869c335ba69cdf7a26eb14af1ec73b759a2587 @@ -18,5 +18,5 @@ PREFERRED_VERSION_tiff = "3.8.2+4.0.0b PREFERRED_VERSION_pkgconfig-native = "0.23" PREFERRED_VERSION_pulseaudio = "0.9.10" PREFERRED_VERSION_tiff = "3.8.2+4.0.0beta2" -PREFERRED_VERSION_udev = "118" +PREFERRED_VERSION_udev = "092" PREFERRED_VERSION_xserver-kdrive = "1.4.0.90" ============================================================ --- conf/machine/akita.conf 9b0f2249c3421c2371583ca663039e640ed69a34 +++ conf/machine/akita.conf 48f7f9b1e69f618fc8139a7fed39acabfd2f9cd5 @@ -11,3 +11,15 @@ ROOT_FLASH_SIZE = "58" IMAGE_FSTYPES ?= "jffs2" ROOT_FLASH_SIZE = "58" + +# we store kernel images in rootfs and only a minimal initramfs kernel in mtd1 for booting other kernels +DONT_CHECK_KERNELSIZE ?= "1" + +IMAGE_DEVICE_TABLES ?= "files/device_table-minimal.txt \ + files/device_table-collie.txt" + +#KERNEL_IMAGETYPE = "uImage" +KERNEL_IMAGETYPE = "zImage" +UBOOT_MACHINE="akita_config" +UBOOT_ENTRYPOINT="0xa0008000" +UBOOT_LOADADDRESS="0xa0008000" ============================================================ --- conf/machine/c7x0.conf 6005085b97146720e5fa0cdc84c0a795df419453 +++ conf/machine/c7x0.conf 2217d2e8ca47ff03db3b1f219f0129feb7c22a24 @@ -7,8 +7,22 @@ IMAGE_FSTYPES ?= "jffs2" IMAGE_FSTYPES ?= "jffs2" -ROOT_FLASH_SIZE = "25" -# yes, we are aware that the husky (c760,c860) has 54MB rootfs, but we don't make a special image for it. +#ROOT_FLASH_SIZE = "25" +# yes, we are aware that the husky (c760,c860) has 53MB rootfs, but we don't make a special image for it. +ROOT_FLASH_SIZE = "96" + XSERVER = "xserver-kdrive-imageon" +# we store kernel images in rootfs and only a minimal initramfs kernel in mtd1 for booting other kernels +DONT_CHECK_KERNELSIZE ?= "1" + +IMAGE_DEVICE_TABLES ?= "files/device_table-minimal.txt \ + files/device_table-collie.txt" + +#KERNEL_IMAGETYPE = "uImage" +KERNEL_IMAGETYPE = "zImage" +UBOOT_MACHINE="corgi_config" +UBOOT_ENTRYPOINT="0xa0008000" +UBOOT_LOADADDRESS="0xa0008000" + ============================================================ --- conf/machine/include/zaurus-2.6.inc d5af9251eed68a286197deb3a5761113b02bbd2f +++ conf/machine/include/zaurus-2.6.inc 10c8eba0fdf36a3a8791707734609a79ce19bde5 @@ -51,13 +51,13 @@ zaurus_make_installkit () { rm -rf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}-installkit/ mkdir ${IMAGE_NAME}-installkit/ - # Get the latest kernel using the zImage-.bin symlink + # Get the latest kernel using the -.bin symlink if [ "${MACHINE}" = "collie" ]; then - [ -f "zImage-${MACHINE}-kexecboot.bin" ] && cp zImage-${MACHINE}-kexecboot.bin ${IMAGE_NAME}-installkit/zImage + [ -f "${KERNEL_IMAGETYPE}-${MACHINE}-kexecboot.bin" ] && cp ${KERNEL_IMAGETYPE}-${MACHINE}-kexecboot.bin ${IMAGE_NAME}-installkit/${KERNEL_IMAGETYPE} # we need also tgz for mmc or cf cards cp ${IMAGE_NAME}.rootfs.tar.gz ${IMAGE_NAME}-installkit/hdimage1.tgz else - cp zImage-${MACHINE}.bin ${IMAGE_NAME}-installkit/zImage + cp ${KERNEL_IMAGETYPE}-${MACHINE}.bin ${IMAGE_NAME}-installkit/${KERNEL_IMAGETYPE} fi if [ "${MACHINE}" = "spitz" ]; then @@ -81,4 +81,5 @@ RDEPENDS_kernel-base_collie = "kernel-im RDEPENDS_kernel-base = "" # collie is an exception. We use mmc as root, include kernel and use another small kernel to boot it. RDEPENDS_kernel-base_collie = "kernel-image" +RDEPENDS_kernel-base_c7x0 = "kernel-image" KERNEL_IMAGETYPE ?= "zImage" ============================================================ --- conf/machine/spitz.conf eac3637cf485585570f8a6fa0876727d7c01f30d +++ conf/machine/spitz.conf 4365a2d685e912e397fe05af73cbedb6e33d1d08 @@ -18,3 +18,15 @@ MACHINE_DISPLAY_ORIENTATION=270 MACHINE_DISPLAY_WIDTH_PIXELS=480 MACHINE_DISPLAY_HEIGHT_PIXELS=640 MACHINE_DISPLAY_ORIENTATION=270 + +# we store kernel images in rootfs and only a minimal initramfs kernel in mtd1 for booting other kernels +DONT_CHECK_KERNELSIZE ?= "1" + +IMAGE_DEVICE_TABLES ?= "files/device_table-minimal.txt \ + files/device_table-collie.txt" + +#KERNEL_IMAGETYPE = "uImage" +KERNEL_IMAGETYPE = "zImage" +UBOOT_MACHINE="akita_config" +UBOOT_ENTRYPOINT="0xa0008000" +UBOOT_LOADADDRESS="0xa0008000" ============================================================ --- packages/kexecboot/initramfs-kexecboot_1.0.bb d3cfea5e56d92934495f6342d176e974b5c9baf3 +++ packages/kexecboot/initramfs-kexecboot_1.0.bb b255501c2e6a78b9d5f74e1c2fbc9df724da5503 @@ -1,16 +1,36 @@ DESCRIPTON = "A init script that mounts DESCRIPTON = "A init script that mounts a device and kexecs a new kernel from it." -PR = "r7" +PR = "r8" RDEPENDS = "kexecboot klibc-utils-static-mount klibc-utils-static-sh klibc-utils-static-sleep" -FBANGLE = "270" +#FBANGLE = "270" for collie? +FBANGLE = "0" INPUTDEV = "/dev/event0" - do_compile() { cat > init.sh << EOF #!/bin/sh /bin/sleep 3 /bin/mount -t proc proc /proc + +# http://bugs.archlinux.org/task/10381?getfile=2128 + +echo "Reading cmdline\n" +read CMDLINE /proc/sys/kernel/printk /usr/bin/kexecboot -a ${FBANGLE} -i ${INPUTDEV} EOF ============================================================ --- packages/kexecboot/kexecboot_0.3.bb 549463678e80781a4efa57e3c566d8668953cb08 +++ packages/kexecboot/kexecboot_0.3.bb f069f61fd6d1b69a83a4446e84574904259d3e47 @@ -1,5 +1,5 @@ LICENSE = "GPL" LICENSE = "GPL" -PR = "r1" +PR = "r2" DEPENDS = "klibc" RDEPENDS = "kexec-static" inherit autotools @@ -8,7 +8,9 @@ SRC_URI = "http://projects.linuxtogo.org # ./make-image-header.sh .png HAND SRC_URI = "http://projects.linuxtogo.org/frs/download.php/221/kexecboot-${PV}.tar.gz \ - file://rootdelay.patch;patch=1" + file://rootwait-cmdline.patch;patch=1 \ + " + S = "${WORKDIR}/kexecboot-${PV}" ============================================================ --- packages/kexecboot/linux-kexecboot-2.6.26/defconfig-akita 064c36530b213dae882be1b6bb2cbab8615906f8 +++ packages/kexecboot/linux-kexecboot-2.6.26/defconfig-akita 00830ed0414849cf715b07e153eb67fac87aef14 @@ -53,7 +53,8 @@ CONFIG_SYSFS_DEPRECATED=y # CONFIG_FAIR_CGROUP_SCHED is not set CONFIG_SYSFS_DEPRECATED=y # CONFIG_RELAY is not set -# CONFIG_BLK_DEV_INITRD is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="initramfs.cpio.gz" CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SYSCTL=y CONFIG_EMBEDDED=y ============================================================ --- packages/kexecboot/linux-kexecboot-2.6.26/defconfig-c7x0 9840eec605b360f4cdcf976973331ce274a89b6f +++ packages/kexecboot/linux-kexecboot-2.6.26/defconfig-c7x0 d15a5f05587c98203f9ee732dd0be56761cf05ee @@ -53,7 +53,8 @@ CONFIG_SYSFS_DEPRECATED=y # CONFIG_FAIR_CGROUP_SCHED is not set CONFIG_SYSFS_DEPRECATED=y # CONFIG_RELAY is not set -# CONFIG_BLK_DEV_INITRD is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="initramfs.cpio.gz" CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SYSCTL=y CONFIG_EMBEDDED=y ============================================================ --- packages/kexecboot/linux-kexecboot-2.6.26/defconfig-spitz 121ce2ca2da79de4072c338f63ad9e345f2674bb +++ packages/kexecboot/linux-kexecboot-2.6.26/defconfig-spitz a02d87cbebf6c43d557d077d9c6f64313fe0fc1b @@ -52,7 +52,8 @@ CONFIG_SYSFS_DEPRECATED_V2=y CONFIG_SYSFS_DEPRECATED_V2=y # CONFIG_RELAY is not set # CONFIG_NAMESPACES is not set -# CONFIG_BLK_DEV_INITRD is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="initramfs.cpio.gz" CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SYSCTL=y CONFIG_EMBEDDED=y ============================================================ --- packages/kexecboot/linux-kexecboot.inc 01dd6603a2a2fb2e9c3c56c171153b59ac8ec096 +++ packages/kexecboot/linux-kexecboot.inc a533cf1bfa9b8d7eaa54dd1bcfaea08c5f9d5657 @@ -1,9 +1,14 @@ INITRAMFS_IMAGE = "initramfs-kexecboot-i DESCRIPTION = "2.6 Linux kexec bootloader for Zaurus devices and iPAQ hx2750." SECTION = "kernel" LICENSE = "GPL" DONT_CHECK_KERNELSIZE = "" INITRAMFS_IMAGE = "initramfs-kexecboot-image" +# +###KERNEL_IMAGETYPE_c7x0="uImage" +###KERNEL_IMAGETYPE_akita="uImage" +###KERNEL_IMAGETYPE_spitz="uImage" +# inherit kernel PACKAGES = "" PROVIDES = "" ============================================================ --- packages/linux/linux-rp.inc d5e693d8ce0306dd5f561a01017f7f042f4cf537 +++ packages/linux/linux-rp.inc a41b60c5697452af23fb4a7fc29bccca6665fbb0 @@ -23,6 +23,9 @@ CMDLINE_CON_zylonite = "console=ttyS0,38 CMDLINE_CON_collie = "console=ttySA0,115200n8 console=tty1 noinitrd" CMDLINE_CON_qemuarm = "console=ttyAMA0,115200n8 console=tty1 noinitrd" CMDLINE_CON_zylonite = "console=ttyS0,38400" +# +CMDLINE_CON_c7x0 = "console=tty1 console=ttyS0,115200n8 noinitrd" +# CMDLINE_ROOT ?= "root=/dev/mtdblock2 rootfstype=jffs2" CMDLINE_ROOT_collie = "root=/dev/mmcblk0p1 rootfstype=ext2 rootdelay=3 rw" CMDLINE_ROOT_spitz ?= "root=/dev/hda1 rootfstype=ext3 rootdelay=1 rw" ============================================================ --- packages/linux/linux-rp_2.6.24.bb 8e37ea5330cc69fda41a71482d14ad5f29a375a9 +++ packages/linux/linux-rp_2.6.24.bb ea9a2459d19a259975b8c022cd5645d90d1e3278 @@ -6,6 +6,7 @@ DEFAULT_PREFERENCE_tosa = "1" DEFAULT_PREFERENCE_collie = "1" DEFAULT_PREFERENCE_qemux86 = "1" DEFAULT_PREFERENCE_tosa = "1" +DEFAULT_PREFERENCE_c7x0 = "1" # Handy URLs # git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git;protocol=git;tag=ef7d1b244fa6c94fb76d5f787b8629df64ea4046 ============================================================ --- packages/linux/linux-rp_2.6.26.bb 3fe7077dd4707984593d30eb66cafde62b2120f6 +++ packages/linux/linux-rp_2.6.26.bb e84e896484e1f15f06156074a803f64728f09f81 @@ -7,6 +7,7 @@ DEFAULT_PREFERENCE_collie = "1" DEFAULT_PREFERENCE_qemux86 = "-1" DEFAULT_PREFERENCE_spitz = "1" DEFAULT_PREFERENCE_collie = "1" +DEFAULT_PREFERENCE_c7x0 = "1" # Handy URLs # git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git;protocol=git;tag=ef7d1b244fa6c94fb76d5f787b8629df64ea4046