> On Oct 31, 2014, at 7:58 AM, Pant, Alok <[email protected]> wrote: > > >> You will need some handshake between the OS kernel and the UEFI firmware. > As I understand there is no real “industry standard” spec for runtime nature > of UEFI OS/BIOS access to shared eMMC controller (owned by OS level driver) > and vendor comes with their proprietary OS level solution. Right? Is this > something that need to be addressed (or can be addressed handshake between > os/bios?) as runtime UEFI variable must be supported on those UEFI OS > > This may be more of UEFI spec question but since all the experts chime in > this forum, I also hoped to probe further? >
The UEFI spec describes how to write EFI Runtime Services that are callable via an OS provided virtual address space. The UEFI does not speak to what hardware is used to implement the backing store. The reality of how the OS and Firmware work is the variable store needs to be a resource owned by the firmware, on a lot of PC like platforms this is the NOR flash that EFI booted out of. To utilize a shared resource would require cooperation between the driver (and maybe the OS) and firmware. The UEFI spec avoids discussing OS specifics, and trying to recommend hardware implementations (as hardware changes at a rapid rate). Thanks, Andrew Fish > From: Olivier Martin [mailto:[email protected] > <mailto:[email protected]>] > Sent: Friday, October 31, 2014 9:04 AM > To: [email protected] <mailto:[email protected]> > Subject: Re: [edk2] Non-Volatile Variable Storage > > Something you have to be aware about Non-Volatile UEFI variables is they > might need to be accessible when the OS is running (through UEFI runtime > services). > If your OS uses the same eMMC controller to access the filesystem then you > might have some serious issues. You will need some handshake between the OS > kernel and the UEFI firmware. > > > From: Narinder Dhillon [mailto:[email protected] > <mailto:[email protected]>] > Sent: 31 October 2014 04:12 > To: [email protected] <mailto:[email protected]> > Subject: [edk2] Non-Volatile Variable Storage > > Hi All, > > I am attempting to implement a non-volatile variable storage in an eMMC > device. After about a week of looking around, I have come to the realization > that there is no such feature in edk2. > Is this correct ? > > Looking at 'variable' drivers, it seems that the variable storage for both > volatile and non are assumed to be at a physically mapped location. I can try > to load this physical address by reading the block flash device and copying > its contents to this location before the 'variable' driver starts. I will > have to implement some shell command to save the changed contents back to > flash device. > > Does this sound reasonable or is there an easier way ? > > Where can I implement this driver to load the non-volatile variable store > before 'variable' driver starts ? > > Thanx. > ------------------------------------------------------------------------------ > _______________________________________________ > edk2-devel mailing list > [email protected] <mailto:[email protected]> > https://lists.sourceforge.net/lists/listinfo/edk2-devel > <https://lists.sourceforge.net/lists/listinfo/edk2-devel>
------------------------------------------------------------------------------
_______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
