Re: root= kernel cmdline parameter

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

> On August 8, 2018 at 9:52 AM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote:
> 
> 
> On Tue, Jul 31, 2018 at 01:20:12PM +0200, Giorgio Dal Molin wrote:
> > Hi all,
> > 
> > I'm trying to find out the best method to define the root=
> > parameter when booting the linux kernel from barebox.
> > 
> > My system boots from an sd card partitioned with a GPT.
> > The sd card has two independent set of partitions with
> > the following labels:
> > 
> > 1)   boot_1 + rootfs_1
> > 2)   boot_2 + rootfs_2
> > 
> > for redondance in case one set gets damaged while updating.
> > 
> > 'boot_1' is formatted with ext4 and contains the kernel + dtb images
> > for the userland in 'rootfs_1'; and the same for 'boot_2' and 'rootfs_2'.
> > 
> > Currently I hardcode the 'root' parameter to '/dev/mmcblk0p3' or
> > '/dev/mmcblk0p4' corresponding to the kernel in 'boot_1' or
> > 'boot_2' and it actually works but is there a better way to do
> > this ?
> 
> You could use bootloader spec. That would at least allow you to store a
> suitable root= parameter in the config files in the boot_1 and boot_2
> partitions.
> 
> Not sure if that's what you are looking for though.
> 
> Sascha
> 

as I already wrote to Uwe Kleine-Koenig I wanted to keep the kernel
image and the dtb in a separate partition because these are the files
the bootloader *must* be able to read to boot the system. Having the
userland in a separate partition lets me choose an image format for it
independently from what barebox supports; as an example I could pack
my userland in a btrfs image. Moreover I can be more selective when
updating the firmware: I can update only the kernel+dtb or only the
userland image.

What I would like to have is an automatic way to set the root= kernel
command line parameter similar to what barebox does with the 'bootm.appendroot'
but a bit more flexible.
Looking at the kernel function name_to_dev_t() in the source init/do_mounts.c,
it accepts also the format 'PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF':
my idea was to somehow tell barebox 'use the partition with label "rootfs_1"
for the "root" parameter' and barebox should be able to match my label with
the partition UUID and automatically generate the root= value.

giorgio

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



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux