From: "Andrew Fish" <afish@apple.com>
To: ritul guru <ritul.bits@gmail.com>
Cc: edk2-devel-groups-io <devel@edk2.groups.io>
Subject: Re: [edk2-devel] regarding calling UEFI runtime services (mainly SetVariable) from linux or android OS which is running on xen+tianocore UEFI
Date: Mon, 06 Feb 2023 10:33:04 -0800 [thread overview]
Message-ID: <71408315-B855-475B-80AA-C2FC6B665D72@apple.com> (raw)
In-Reply-To: <CAHHF-2JPwPuEh_hauw2p9NQvhAXFq1J2=MMMuSCvhDS2oftt0g@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2548 bytes --]
> On Feb 6, 2023, at 10:25 AM, ritul guru <ritul.bits@gmail.com> wrote:
>
> Thanks,
> so as it is memory, does it mean if anything written in variable store, and VM reboot happens then variable store will be flushed?
>
It looks like it is saved if you do an S3. S3 is ACPI speak for a sleep state that puts RAM into self refresh. On a cold boot it allocates the memory, so you are starting over.
Sorry I’ve never looked at the Xen code before so I’m sight reading.
Thanks,
Andrew Fish
> Thanks & Regards
> Ritul Guru
> +91-9916513186
>
>
> On Mon, Feb 6, 2023 at 11:47 PM Andrew (EFI) Fish <afish@apple.com <mailto:afish@apple.com>> wrote:
>>
>>
>>> On Feb 6, 2023, at 8:06 AM, ritul guru <ritul.bits@gmail.com <mailto:ritul.bits@gmail.com>> wrote:
>>>
>>> Hi,
>>>
>>> I have been using xen hypervisor and tianocore uefi BIOS on xen to boot to ubuntu OS on virtualized disk.
>>> and want to set a UEFI variable with UEFI runtime service SetVariable() to a value and the same wants to read from UEFI bootloader either grubx64.efi or botmgfw.efi,
>>> So, Is it possible to use runtime services to do such an operation for OS running on VM when booted with OVMF/tianocore BIOS on VM guest?
>>> If so, where does this variable gets stored? is it in some virtualized disk as there is no virtualized SPIROM available to VM.
>>>
>>>
>>
>> I don’t know the Xen specifics, but the firmware maps in a Flash Device (FD) here:
>>
>> <edk2.png>
>> edk2/OvmfXen.fdf at master · tianocore/edk2
>> github.com
>> <https://github.com/tianocore/edk2/blob/master/OvmfPkg/OvmfXen.fdf>edk2/OvmfXen.fdf at master · tianocore/edk2 <https://github.com/tianocore/edk2/blob/master/OvmfPkg/OvmfXen.fdf>
>> github.com <https://github.com/tianocore/edk2/blob/master/OvmfPkg/OvmfXen.fdf>
>>
>> Oh looks like it uses an emulated variable store that is just memory. See ReserveEmuVariableNvStore().
>>
>>
>> edk2/Platform.c at master · tianocore/edk2
>> github.com
>> <https://github.com/tianocore/edk2/blob/master/OvmfPkg/XenPlatformPei/Platform.c#L365>edk2/Platform.c at master · tianocore/edk2 <https://github.com/tianocore/edk2/blob/master/OvmfPkg/XenPlatformPei/Platform.c#L365>
>> github.com <https://github.com/tianocore/edk2/blob/master/OvmfPkg/XenPlatformPei/Platform.c#L365>
>>
>> Thanks,
>>
>> Andrew Fish
>>
>>>
>>> https://wiki.osdev.org/Using_UEFI_Runtime_Services_in_your_Kernel
>>>
>>> Thanks & Regards
>>> Ritul Guru
>>> +91-9916513186
>>>
>>
> <edk2.png>
[-- Attachment #2: Type: text/html, Size: 8454 bytes --]
prev parent reply other threads:[~2023-02-06 18:33 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-06 16:06 regarding calling UEFI runtime services (mainly SetVariable) from linux or android OS which is running on xen+tianocore UEFI ritul guru
2023-02-06 18:16 ` [edk2-devel] " Andrew Fish
2023-02-06 18:25 ` ritul guru
2023-02-06 18:27 ` ritul guru
2023-02-06 18:33 ` Andrew Fish [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=71408315-B855-475B-80AA-C2FC6B665D72@apple.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox