qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Question on UEFI ACPI tables setup and probing on arm64


From: Ying Fang
Subject: Question on UEFI ACPI tables setup and probing on arm64
Date: Fri, 30 Oct 2020 10:50:01 +0800
User-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

Hi,

I have a question on UEFI/ACPI tables setup and probing on arm64 platform.

Currently on arm64 platform guest can be booted with both fdt and ACPI
supported. If ACPI is enabled, [1] says the only defined method for
passing ACPI tables to the kernel is via the UEFI system configuration
table. So AFAIK, ACPI Should be dependent on UEFI.

What's more [2] says UEFI kernel support on the ARM architectures
is only available through a *stub*. The stub populates the FDT /chosen
node with some UEFI parameters describing the UEFI location info.

So i dump /sys/firmware/fdt from the guest, it does have something like:

/dts-v1/;

/ {
        #size-cells = <0x02>;
        #address-cells = <0x02>;

        chosen {
                linux,uefi-mmap-desc-ver = <0x01>;
                linux,uefi-mmap-desc-size = <0x30>;
                linux,uefi-mmap-size = <0x810>;
                linux,uefi-mmap-start = <0x04 0x3c0ce018>;
                linux,uefi-system-table = <0x04 0x3f8b0018>;
bootargs = "BOOT_IMAGE=/vmlinuz-4.19.90-2003.4.0.0036.oe1.aarch64 root=/dev/mapper/openeuler-root ro rd.lvm.lv=openeuler/root rd.lvm.lv=openeuler/swap video=VGA-1:640x480-32@60me smmu.bypassdev=0x1000:0x17 smmu.bypassdev=0x1000:0x15 crashkernel=1024M,high video=efifb:off video=VGA-1:640x480-32@60me";
                linux,initrd-end = <0x04 0x3a85a5da>;
                linux,initrd-start = <0x04 0x392f2000>;
        };
};

But the question is that I did not see any code adding the uefi
in fdt chosen node in *arm_load_dtb* or anywhere else.
Qemu only maps the OVMF binary file into a pflash device.
So I'm really confused on how UEFI information is provided to
guest by qemu. Does anybody know of the details about it ?

[1] https://www.kernel.org/doc/html/latest/arm64/arm-acpi.html
[2] https://www.kernel.org/doc/Documentation/arm/uefi.rst

Thanks.
Ying



reply via email to

[Prev in Thread] Current Thread [Next in Thread]