rendered paste bodyDESCRIPTON = "A init script that mounts a device and kexecs a new kernel from it."
PR = "r7"
RDEPENDS = "kexecboot klibc-utils-static-mount klibc-utils-static-sh klibc-utils-static-sleep"
# on c7x0 fbangle 0 is landscape, fbangle 90 is portrait (oriented like service menus)
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"
read CMDLINE </proc/cmdline
export CMDLINE
export root=""
export kinit_params=""
echo "CMDLINE=\${CMDLINE}"
for cmd in \${CMDLINE}; do
echo "cmd=\${cmd}"
case "\${cmd}" in
\#*) break ;; # ignore if #
console=*) kinit_params="\${kinit_params} \${cmd}" ;;
# root=*) kinit_params="\${kinit_params} \${cmd}" ;;
# rootfstype=*) kinit_params="\${kinit_params} \${cmd}" ;;
mtdparts=*) kinit_params="\${kinit_params} \${cmd}" ;;
esac
done
echo "Filtered cmdline:\${kinit_params}\n"
sleep 5
###
echo "0 4 1 7" > /proc/sys/kernel/printk
/usr/bin/kexecboot -a ${FBANGLE} -i ${INPUTDEV}
EOF
}
do_install() {
install -m 0755 ${S}/init.sh ${D}/init
install -d ${D}/proc
install -d ${D}/mnt
}
PACKAGE_ARCH = "all"
FILES_${PN} = "/init /proc /mnt"