[PATCH 09/16] efi_loader: imply FAT, FAT_WRITE

AKASHI Takahiro
2020-04-01T01:14:00Z

On Wed, Apr 01, 2020 at 08:57:33AM +0900, AKASHI Takahiro wrote:
> On Tue, Mar 31, 2020 at 03:08:06PM +0200, Heinrich Schuchardt wrote:
> > On 2020-03-31 09:44, AKASHI Takahiro wrote:
> > > On Tue, Mar 31, 2020 at 08:44:02AM +0200, Heinrich Schuchardt wrote:
> > >> On March 31, 2020, 5:28 a.m. UTC Takahiro Akashi wrote:
> > >>> On Fri, Mar 27, 2020 at 06:27:53AM +0100, Heinrich Schuchardt wrote:
> > >>>> The UEFI spec requires support for the FAT file system.
> > >>>>
> > >>>> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> > >>>> ---
> > >>>> lib/efi_loader/Kconfig | 2 ++
> > >>>> 1 file changed, 2 insertions(+)
> > >>>>
> > >>>> diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig
> > >>>> index 9890144d41..e10ca05549 100644
> > >>>> --- a/lib/efi_loader/Kconfig
> > >>>> +++ b/lib/efi_loader/Kconfig
> > >>>> @@ -15,6 +15,8 @@ config EFI_LOADER
> > >>>> select HAVE_BLOCK_DEVICE
> > >>>> select REGEX
> > >>>> imply CFB_CONSOLE_ANSI
> > >>>> + imply FAT
> > >>>> + imply FAT_WRITE
> > >>>
> > >>> Obviously, this *imply* doesn't enforce enabling FAT.
> > >>> If it is absolutely necessary, another measure should be taken.
> > >>
> > >> If somebody wants to minimize the U-Boot size it might be necessary to
> > >> do without FAT_WRITE or FAT support.
> > >
> > > If so, Get/SetVariable won't be supported even in boot time
> > > with your patch applied. It is not practical for almost all users.
> >
> > Hello Akashi,
> >
> > without FAT_WRITE we will not have persistence for variables.
> > SetVariable and GetVariable are still usable.
>
> How about CONFIG_FAT?

(=> What if !CONFIG_FAT)

More fundamentally,
Why do you want to use a file as storage device for variables?
why not raw partition (or just part of partition) on, say,
NOR or eMMC?

As you know, EDK2 saves variables directly on NOR (or block device?
probably).

-Takahiro Akashi

> -Takahiro Akashi
>
> > Best regards
> >
> > Heinrich
> >
> > >
> > >>>
> > >>> In addition, why do you treat FAT specifically here?
> > >>> I remember that you insisted that other file system should be
> > >>> allowed on U-Boot when I posted some patch.
> > >>
> > >> An EFI system partition is always FAT formatted. So if we want to safe
> > >> U-Boot variables to the EFI system partition we require FAT.
> > >
> > > As system partition is required to be in FAT, file system used on
> > > other partitions must also be in FAT since, as I said before,
> > > UEFI specification clearly defines its file system format based on FAT.
> > > See section 13.3.
> > >
> > > So,
> > >
> > >>> I remember that you insisted that other file system should be
> > >>> allowed on U-Boot when I posted some patch.
> > >
> > > You reverted your statement above here.
> > > That is my point.
> > >
> > > -Takahiro Akashi
> > >
> > >> Best regards
> > >>
> > >> Heinrich
> > >>
> > >>>
> > >>> -Takahiro Akashi
> > >>>
> > >>>
> > >>>> imply USB_KEYBOARD_FN_KEYS
> > >>>> imply VIDEO_ANSI
> > >>>> help
> > >>>> --
> > >>>> 2.25.1
> >