mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: barebox@lists.infradead.org
Subject: Re: [PATCH 0/4] defaultenv boot updates
Date: Mon, 11 Apr 2011 12:16:01 +0200	[thread overview]
Message-ID: <20110411101601.GG7285@pengutronix.de> (raw)
In-Reply-To: <20110408133713.GC13978@game.jcrosoft.org>

Hi,

On Fri, Apr 08, 2011 at 03:37:13PM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote:
> HI,
> 
> 	this following patch series make boot script more configurable
> 
> 

I'm getting the impression that we stretch the capabilities of our shell
way beyond its limits. We started with booting from nand/nor/net and
added mmc cards later. Still this is not flexible enough to handle
images for example on a fat filesystem, not to mention different kernels
on one medium.

I was thinking about this topic a bit, and my idea currently is
to add a command with which we can build a list of images. An image can
be a kernel or a filesystem image. Each image can be associated with
a bootarg snippet and a command to execute to access this image.

Altogether this could look like this:

linux [OPTIONS]

 -a <name>    add a new image
 -f <file>    path to image
 -b <bootarg> kernel bootargs to append for this image
 -z           This is a zImage
 -u           This is a uImage
 -r <adr>     This is a raw kernel image to be started at address <adr>
 -l           The image is lzo compressed
 -i           Show currently registered images
 -d           delete all registered images


example:

barebox@Phytec phyCORE pcm049:/ linux -a kernel.nand -f /dev/nand0.kernel.bb -z
barebox@Phytec phyCORE pcm049:/ linux -a kernel.mmc -f /dev/disk0.1 -c "mci0.probe=1" -r 0x80008000 -l
barebox@Phytec phyCORE pcm049:/ linux -a kernel.net -f /tftp/zImage-pcm038 -c /env/bin/netinit -z
barebox@Phytec phyCORE pcm049:/ linux -a root.nand -b "root=ubi0:root ubi.mtd=7 rootfstype=ubifs" -f /dev/nand0.root.bb
barebox@Phytec phyCORE pcm049:/ linux -a root.nfs -b "root=/dev/nfs nfsroot=$nfsroot,v3,tcp"
barebox@Phytec phyCORE pcm049:/ linux -a root.net.ext2 -f /tftp/root-pcm038.ext2 -c /env/bin/netinit
barebox@Phytec phyCORE pcm049:/ linux -i
kernel.nand (zImage)
        file: /dev/nand0.kernel.bb
kernel.mmc (raw@80008000, lzo)
        file: /dev/disk0.1
        command: mci0.probe=1
kernel.net (zImage)
        file: /tftp/zImage-pcm038
        command: /env/bin/netinit
root.nand
        file: /dev/nand0.root.bb
        bootarg: root=ubi0:root ubi.mtd=7 rootfstype=ubifs
root.nfs
        bootarg: root=/dev/nfs nfsroot=192.168.23.2:/home/sha/nfsroot/pcm049,v3,tcp
root.net.ext2
        file: /tftp/root-pcm038.ext2
        command: /env/bin/netinit
barebox@Phytec phyCORE pcm049:/


Then we can play tricks like:

boot kernel from nand with nfsroot:

barebox@Phytec phyCORE pcm049:/ boot kernel.nand root.nfs

Update kernel from network to nand:

barebox@Phytec phyCORE pcm049:/ update kernel.net kernel.nand

Most probably there are problems I haven't thought about yet, but what
do think about it in general?

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  parent reply	other threads:[~2011-04-11 10:16 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-08 13:37 Jean-Christophe PLAGNIOL-VILLARD
2011-04-08 13:40 ` [PATCH 1/4] defaultenv/boot: switch to getopt Jean-Christophe PLAGNIOL-VILLARD
2011-04-08 13:40 ` [PATCH 2/4] defaultenv/boot: add -k and -t option to specify the kernel location and image type Jean-Christophe PLAGNIOL-VILLARD
2011-04-08 13:40 ` [PATCH 3/4] defaultenv/boot: add -r and -T option to select rootfs location and type Jean-Christophe PLAGNIOL-VILLARD
2011-04-08 13:40 ` [PATCH 4/4] defaultenv/boot: add -i option to select the ip mode Jean-Christophe PLAGNIOL-VILLARD
2011-04-11 10:16 ` Sascha Hauer [this message]
2011-04-11 10:17   ` [PATCH 0/4] defaultenv boot updates Jean-Christophe PLAGNIOL-VILLARD
2011-04-11 10:55     ` Sascha Hauer
2011-04-23  2:16       ` Jean-Christophe PLAGNIOL-VILLARD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110411101601.GG7285@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --cc=plagnioj@jcrosoft.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox