All of lore.kernel.org
 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 [PATCH 0/4] defaultenv boot updates 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.