All pastes #1182017 Raw Edit

ant

public text v1 · immutable
#1182017 ·published 2008-08-22 22:41 UTC
rendered paste body
#
# 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-<machine>.bin symlink
+    # Get the latest kernel using the <kernel_imgtype>-<machine>.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/cmdline
+export CMDLINE
+
+export EXTRA_CMDLINE=""
+
+echo "CMDLINE=\${CMDLINE}"
+for cmd in \${CMDLINE}; do
+    echo "cmd=\${cmd}"
+    case "\${cmd}" in
+        \#*) break ;; # ignore if #
+#       console=*) EXTRA_CMDLINE="\${EXTRA_CMDLINE} \${cmd}" ;;
+        mtdparts=*) EXTRA_CMDLINE="\${EXTRA_CMDLINE} \${cmd}" ;;
+    esac
+done
+echo "Filtered cmdline:\${EXTRA_CMDLINE}\n"
+
 echo "0 4 1 7" > /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 <file>.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