you can now specify in the same way as it's done for the kernel where is stored the oftree. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@xxxxxxxxxxxx> --- defaultenv/bin/_boot_help | 3 ++- defaultenv/bin/boot | 17 ++++++++++++++++- defaultenv/config | 2 ++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/defaultenv/bin/_boot_help b/defaultenv/bin/_boot_help index 7c96444..a07e4e0 100644 --- a/defaultenv/bin/_boot_help +++ b/defaultenv/bin/_boot_help @@ -1,9 +1,10 @@ #!/bin/sh -echo "boot: boot [-m <mode>] [-k <kernel_option>] [-r <rootfs_option>] [-i <ip_mode>]" +echo "boot: boot [-m <mode>] [-k <kernel_option>] [-r <rootfs_option>] [-i <ip_mode>] [-o <oftree_option]" echo "" echo "options" echo " - kernel nand, nor, nfs, tftp, disk" +echo " - oftree nand, nor, nfs, tftp, disk or empty" echo " - rootfs nand, nor, net, disk" echo " - ip dhcp, dhcp-barebox none, empty" echo "" diff --git a/defaultenv/bin/boot b/defaultenv/bin/boot index ba04373..5186aee 100644 --- a/defaultenv/bin/boot +++ b/defaultenv/bin/boot @@ -6,12 +6,14 @@ if [ x$kernel_loc = xnet ]; then kernel_loc=tftp fi -while getopt "hk:r:i:m:" Option +while getopt "hk:r:i:m:o:" Option do if [ ${Option} = k ]; then kernel_loc=${OPTARG} elif [ ${Option} = r ]; then rootfs_loc=${OPTARG} +elif [ ${Option} = o ]; then + oftree_loc=${OPTARG} elif [ ${Option} = i ]; then ip=${OPTARG} elif [ ${Option} = m ]; then @@ -114,6 +116,19 @@ else exit 1 fi +if [ x$oftree_loc = xnfs -o x$oftree_loc = xtftp ]; then + odev=/oftree + $oftree_loc $oftreeimage $odev || exit 1 +elif [ x$oftree_loc = xnor ]; then + odev="/dev/nor0.oftree" +elif [ x$oftree_loc = xnand ]; then + odev="/dev/nand0.oftree.bb" +elif [ x$oftree_loc = xdisk ]; then + odev="/dev/$oftree_part" +fi + +[ x$odev = x ] || bootm_opt="$bootm_opt -o $odev" + echo "booting kernel from $kdev" bootm $bootm_opt $kdev diff --git a/defaultenv/config b/defaultenv/config index 63fc059..39a9c99 100644 --- a/defaultenv/config +++ b/defaultenv/config @@ -21,6 +21,8 @@ dhcp_vendor_id=barebox kernel_loc=tftp # can be either 'net', 'nand', 'nor', 'disk' or 'initrd' rootfs_loc=net +# can be either 'tftp', 'nfs', 'nand', 'nor', 'disk' or none +oftree_loc=tftp # for flash based rootfs: 'jffs2' or 'ubifs' # in case of disk any regular filesystem like 'ext2', 'ext3', 'reiserfs' -- 1.7.9.1 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox