On Mon, Dec 4, 2017 at 1:12 PM, Lukasz Majewski <l.majew...@majess.pl> wrote: > Hi Andrey, > >> Hi Lukasz, >> >> On Tue, Nov 14, 2017 at 1:45 AM, Lukasz Majewski >> <l.majew...@majess.pl> wrote: >> > Hi Andrey, >> > >> >> Hi Lukasz, >> >> >> >> On Thu, Nov 9, 2017 at 2:28 PM, Lukasz Majewski >> >> <l.majew...@majess.pl> wrote: >> >> > On Thu, 9 Nov 2017 07:34:44 -0800 >> >> > Andrey Yurovsky <yurov...@gmail.com> wrote: >> >> > >> >> >> On Thu, Nov 9, 2017 at 1:55 AM, Lukasz Majewski >> >> >> <l.majew...@majess.pl> wrote: >> >> >> > Hi Andrey, >> >> >> > >> >> >> >> Hi Otavio, >> >> >> >> >> >> >> >> On Wed, Nov 8, 2017 at 2:47 AM, Otavio Salvador >> >> >> >> <otavio.salva...@ossystems.com.br> wrote: >> >> >> >> > On Tue, Nov 7, 2017 at 10:43 PM, your name >> >> >> >> > <yurov...@gmail.com> wrote: >> >> >> >> >> From: Andrey Yurovsky <yurov...@gmail.com> >> >> >> >> >> >> >> >> >> >> It is useful to be able to retrieve a partition UUID or >> >> >> >> >> number given the partition label, for instance some >> >> >> >> >> systems use the partition label to indicate the purpose >> >> >> >> >> of the partition (such as "rootfs0" being the 0th root >> >> >> >> >> file system in an A/B image scheme). >> >> >> >> >> >> >> >> >> >> Add "gpt part-uuid" to retrieve the partition UUID for a >> >> >> >> >> given label and "gpt part-num" to retrieve the partition >> >> >> >> >> number for a given label along with some documentation. >> >> >> >> >> >> >> >> >> >> Signed-off-by: Andrey Yurovsky <yurov...@gmail.com> >> >> >> >> > >> >> >> >> > Why not use the 'part' cmd? it provides it. >> >> >> >> >> >> >> >> Sorry, I missed the part cmd, it doesn't seem to be >> >> >> >> documented in doc/ and it's unclear what <dev> means there. >> >> >> > >> >> >> > If I may ask - Andrey, if you are now on this "topic" - would >> >> >> > you dare to add some ./doc entry for 'part' command? >> >> >> >> >> >> Yes, I will do that. >> >> > >> >> > Thanks :-) >> >> >> >> On further investigation I am not sure that it's possible to extend >> >> the part command to retrieve UUIDs by label because of the design >> >> of the partition type drivers. Here is how I understand it to work: >> >> 1. the "part" command uses part_get_info() and in turn gets a >> >> partition driver and can call print() there (which is how EFI/GPT >> >> disks are printed with "part list"). The right information >> >> (including label) is printed but it's not tied to the caller in >> >> any way. >> > >> > Maybe you can set some env variable with proper data? >> > >> > For example, please refer to ./cmd/part.c do_part_start() function. >> > >> > Example call from envs (include/configs/display5.h): >> > "part start mmc ${mmcdev} ${kernel_part} lba_start; " \ >> > >> >> Again that assumes the partition is referred to by number, I need it >> to be by label, and the part/disk interface does not seem to have any >> way to utilize labels. Unfortunately it looks like my original >> approach with the gpt command is the only way to implement this with >> the current design (at least from what I see here). Please let me know >> if I've missed something. Thanks! > > Please correct me if I'm wrong - you need the starting LBA of the > partition named e.g. "FOO" in gpt ? > > Conceptually it would be correct to have: > > part start <interface> <dev> <NAME - e.g.'FOO'> <env to set> > gpt start <interface> <dev> <NAME- e.g. 'FOO'> <env to set> > > If your code is really _small_ and can be used only with GPT, then lets > go for the second option.
The use cases I have in mind: 1. determine which root file system to use by label, let's say "rootfs1" and pass its UUID to the Linux kernel via the command line, ex: "PART-UUID=${uuid}". To do this we need a way to ask for a UUID corresponding to a label in the partition table (given duplicate labels, assume it gives us the first or last match). 2. determine which file system to load a file from (ex: fatload) given a label. I'm not sure that the starting LBA is helpful here, we really are looking to map a label to a partition number in the table. The implementation of "part start" interprets the argument as a partition number, so I can get the stating LBA if I know the partition number but I don't see a way (via cmd/disk.c) to get anything useful if all I know is a label, and that is what I'm trying to solve. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot