<div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 23 Sep 2021, 09:22 FMDF, <<a href="mailto:fmdefrancesco@gmail.com">fmdefrancesco@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 23 Sep 2021, 09:11 FMDF, <<a href="mailto:fmdefrancesco@gmail.com" target="_blank" rel="noreferrer">fmdefrancesco@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 22 Sep 2021, 08:22 Ruben Safir, <<a href="mailto:ruben@mrbrklyn.com" rel="noreferrer noreferrer" target="_blank">ruben@mrbrklyn.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">What is this for?<br>
<br>
efivarfs on /sys/firmware/efi/efivars type efivarfs<br>
<br>
why would the OS need to know anything about the UEFI <br>
boot loader once it is up and running?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I think you are still making confusion: UEFI bootloaders and UEFI are two different entities. </div><div dir="auto"><br></div><div dir="auto">UEFI bootloaders (like Grub2) serve the purpose to locate, pass kernel options  and platform information to the kernel that themselves are going to boot.</div><div dir="auto"><br></div><div dir="auto">Instead the UEFI is an interface between the running OS and the platform firmware.</div><div dir="auto"><br></div><div dir="auto">UEFI defines two types of services: <span style="border-style:initial;border-color:initial;line-height:inherit;background-image:none;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial">boot services</span> and <span style="border-style:initial;border-color:initial;line-height:inherit;background-image:none;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial">runtime services</span>.<br></div><div dir="auto"><br></div><div dir="auto">After booting is done, via UEFI boot services and eventually UEFI bootloaders, the OS does not need anymore the bootloader and the UEFI boot services.</div><div dir="auto"><br></div><div dir="auto">Instead the OS needs UEFI runtime services to talk to the platform firmware. For example, if OS cannot talk to the platform via UEFI, it cannot even shutdown the system (obviously there is much more than simply shutting down). How can an OS know that you've attached a plug and play device if it cannot talk to the platform firmware?</div><div dir="auto"><br></div><div dir="auto">Fabio</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">For sake of completeness and for better understanding that OS need UEFI, but not necessarily EFI bootloaders, please read the following document:</div><div dir="auto"><br></div><div dir="auto"><a href="https://www.kernel.org/doc/html/latest/admin-guide/efi-stub.html" target="_blank" rel="noreferrer">https://www.kernel.org/doc/html/latest/admin-guide/efi-stub.html</a><br></div><div dir="auto"><br></div><div dir="auto">Linux can boot without bootloaders, but it still needs to use UEFI at runtime.</div><div dir="auto"><br></div><div dir="auto">Fabio</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">While at this, please read also:</div><div dir="auto"><br></div><div dir="auto"><a href="https://www.kernel.org/doc/html/latest/arm/uefi.html">https://www.kernel.org/doc/html/latest/arm/uefi.html</a><br></div><div dir="auto"><a href="https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface">https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface</a><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>
</blockquote></div></div></div>