[PATCH 0/4] defaultenv boot updates
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Mon Apr 11 06:17:52 EDT 2011
On 12:16 Mon 11 Apr , Sascha Hauer wrote:
> 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.
>
I like the idea
as we can be multiple user of the same harware so it will simplify it
> 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
-C <compression>
> -i Show currently registered images
-l for list
> -d delete all registered images
-d too delete all :(
I think -d should delete only one
-D for all
>
>
> example:
>
> barebox at Phytec phyCORE pcm049:/ linux -a kernel.nand -f /dev/nand0.kernel.bb -z
> barebox at Phytec phyCORE pcm049:/ linux -a kernel.mmc -f /dev/disk0.1 -c "mci0.probe=1" -r 0x80008000 -l
what is this -c ?
> barebox at Phytec phyCORE pcm049:/ linux -a kernel.net -f /tftp/zImage-pcm038 -c /env/bin/netinit -z
> barebox at Phytec phyCORE pcm049:/ linux -a root.nand -b "root=ubi0:root ubi.mtd=7 rootfstype=ubifs" -f /dev/nand0.root.bb
> barebox at Phytec phyCORE pcm049:/ linux -a root.nfs -b "root=/dev/nfs nfsroot=$nfsroot,v3,tcp"
> barebox at Phytec phyCORE pcm049:/ linux -a root.net.ext2 -f /tftp/root-pcm038.ext2 -c /env/bin/netinit
> barebox at Phytec phyCORE pcm049:/ linux -i
> kernel.nand (zImage)
> file: /dev/nand0.kernel.bb
> kernel.mmc (raw at 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 at Phytec phyCORE pcm049:/
>
>
> Then we can play tricks like:
>
> boot kernel from nand with nfsroot:
>
> barebox at Phytec phyCORE pcm049:/ boot kernel.nand root.nfs
>
> Update kernel from network to nand:
>
> barebox at 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?
I like the idea
but we should use the menu to manage it?
Best Regards,
J.
More information about the barebox
mailing list