|
Discussing how SystemTable and its Pointers should be treated in Rust
The UEFI shim will modify the LoadImage, StartImage, Exit, and ExitBootServices pointers in SystemTable->BootServices: https://github.com/rhboot/shim/blob/main/replacements.c#L154-L183 In certain debu
The UEFI shim will modify the LoadImage, StartImage, Exit, and ExitBootServices pointers in SystemTable->BootServices: https://github.com/rhboot/shim/blob/main/replacements.c#L154-L183 In certain debu
|
By
Michael Brown
· #90651
·
|
|
[PATCH] MdeModulePkg/Frontpage: Get SMBIOS Data from table directly
From the way that your patch uses SMBIOS data, I'm assuming that your use case involves a pre-existing SMBIOS table structure that is constructed by something (e.g. coreboot) before UEFI starts up, an
From the way that your patch uses SMBIOS data, I'm assuming that your use case involves a pre-existing SMBIOS table structure that is constructed by something (e.g. coreboot) before UEFI starts up, an
|
By
Michael Brown
· #86335
·
|
|
[PATCH] MdeModulePkg/Frontpage: Get SMBIOS Data from table directly
Could you not avoid code duplication by exposing the SMBIOS table via EFI_SMBIOS_PROTOCOL? This would provide a much more general solution that would not be specific to UiApp/Frontpage.c. Michael
Could you not avoid code duplication by exposing the SMBIOS table via EFI_SMBIOS_PROTOCOL? This would provide a much more general solution that would not be specific to UiApp/Frontpage.c. Michael
|
By
Michael Brown
· #86276
·
|
|
Read SPI BAR offset 0x10 throwing processor exception
PCI_BASE_ADDRESSREG_OFFSET is an offset within PCI configuration space. It looks as though you are trying to use an MMIO access to read from PCI configuration space, which is not a valid thing to do.
PCI_BASE_ADDRESSREG_OFFSET is an offset within PCI configuration space. It looks as though you are trying to use an MMIO access to read from PCI configuration space, which is not a valid thing to do.
|
By
Michael Brown
· #86160
·
|
|
[PATCH] MdePkg: DebugLib: Compilation fix for clang-13.
A quick experiment shows that gcc won't generate a warning but clang will. Can be fixed by adding extra parentheses around FALSE: #define ASSERT(Expression) do { \ if ((FALSE)) { \ (VOID) (Expression)
A quick experiment shows that gcc won't generate a warning but clang will. Can be fixed by adding extra parentheses around FALSE: #define ASSERT(Expression) do { \ if ((FALSE)) { \ (VOID) (Expression)
|
By
Michael Brown
· #83938
·
|
|
[PATCH] MdePkg: DebugLib: Compilation fix for clang-13.
I would very strongly recommend having the non-debug version of the macro use something like: #define ASSERT(Expression) do { \ if (FALSE) { \ (VOID) (Expression); \ } \ } while (FALSE) Without the "i
I would very strongly recommend having the non-debug version of the macro use something like: #define ASSERT(Expression) do { \ if (FALSE) { \ (VOID) (Expression); \ } \ } while (FALSE) Without the "i
|
By
Michael Brown
· #83918
·
|
|
Progress on getting Uncrustify working for EDK2?
I very strongly agree with this. It's always a bad sign when a project requires installation of a custom version of a widely used tool. Michael
I very strongly agree with this. It's always a bad sign when a project requires installation of a custom version of a widely used tool. Michael
|
By
Michael Brown
· #83505
·
|
|
[PATCH] MdeModulePkg/Core/Dxe: Acquire a lock when iterating gHandleList
At a first glance, it looks as though if the caller does not already hold the lock, then the result from CoreValidateHandle() may be invalid by the time that control returns to the caller. Under what
At a first glance, it looks as though if the caller does not already hold the lock, then the result from CoreValidateHandle() may be invalid by the time that control returns to the caller. Under what
|
By
Michael Brown
· #81748
·
|
|
EFI_AUDIO_OUTPUT_PROTOCOL: assistance with VirtIO initialization
That doesn't immediately make sense to me in the context of reading sections 5.2.1.2 and 5.2.2.2.2 of the audio spec, but feel free to post the whole wireshark capture (off-list!) and I can take a loo
That doesn't immediately make sense to me in the context of reading sections 5.2.1.2 and 5.2.2.2.2 of the audio spec, but feel free to post the whole wireshark capture (off-list!) and I can take a loo
|
By
Michael Brown
· #77527
·
|
|
[PATCH v2 1/2] OvmfPkg/Bhyve: add USB support
When there is no fundamental limitation, i.e. when a future version of the hypervisor may be able to support the feature with no changes to the firmware, then it would be good practice to leave the dr
When there is no fundamental limitation, i.e. when a future version of the hypervisor may be able to support the feature with no changes to the firmware, then it would be good practice to leave the dr
|
By
Michael Brown
· #77447
·
|
|
EFI_AUDIO_OUTPUT_PROTOCOL: assistance with VirtIO initialization
BTW, in case you aren't already aware of this: wireshark is pretty good at dissecting USB traffic. You can capture it by doing a "modprobe usbmon", after which you'll see a number of usbmonN devices s
BTW, in case you aren't already aware of this: wireshark is pretty good at dissecting USB traffic. You can capture it by doing a "modprobe usbmon", after which you'll see a number of usbmonN devices s
|
By
Michael Brown
· #77446
·
|
|
EFI_AUDIO_OUTPUT_PROTOCOL: assistance with VirtIO initialization
I have no idea what higher-level utility library functions exist within EDK2 that you might be able to use. Based on skimming through the USB audio spec, at the raw protocol level you would need to us
I have no idea what higher-level utility library functions exist within EDK2 that you might be able to use. Based on skimming through the USB audio spec, at the raw protocol level you would need to us
|
By
Michael Brown
· #77445
·
|
|
EFI_AUDIO_OUTPUT_PROTOCOL: assistance with VirtIO initialization
Do you mean that you can't figure out how to retrieve the descriptors via the UEFI APIs, or that you don't know how to interpret the descriptors after retrieval? Thanks, Michael
Do you mean that you can't figure out how to retrieve the descriptors via the UEFI APIs, or that you don't know how to interpret the descriptors after retrieval? Thanks, Michael
|
By
Michael Brown
· #77423
·
|
|
[PATCH v2 1/2] OvmfPkg/Bhyve: add USB support
Is that a detail of the current implementation, or a fundamental limitation in the bhyve architecture? Thanks, Michael
Is that a detail of the current implementation, or a fundamental limitation in the bhyve architecture? Thanks, Michael
|
By
Michael Brown
· #77422
·
|
|
[PATCH v2 2/3] UefiPayloadPkg: Add PayloadLoaderPeim which can load ELF payload
FWIW, I strongly agree with Marvin on this: having ParseStatus in its current form is a bad idea since it adds no value but does incur a cost. Thanks, Michael
FWIW, I strongly agree with Marvin on this: having ParseStatus in its current form is a bad idea since it adds no value but does incur a cost. Thanks, Michael
|
By
Michael Brown
· #76326
·
|
|
VirtIO sound device in qemu?
QEMU also has good support for passing through a real USB device, which might be useful if you ever suspect that the QEMU device implementation is behaving incorrectly. (This is not implausible: I sti
QEMU also has good support for passing through a real USB device, which might be useful if you ever suspect that the QEMU device implementation is behaving incorrectly. (This is not implausible: I sti
|
By
Michael Brown
· #76269
·
|
|
VirtIO sound device in qemu?
Do you mean that you can't find a way to get QEMU to create a Virtio audio device visible to the guest, or that you can't find a way to get QEMU to connect this Virtio device to the host-side audio ou
Do you mean that you can't find a way to get QEMU to create a Virtio audio device visible to the guest, or that you can't find a way to get QEMU to connect this Virtio device to the host-side audio ou
|
By
Michael Brown
· #76124
·
|
|
[edk2-rfc] [edk2-devel] RFC: design review for TDVF in OVMF
Secure Boot defines a security boundary between the firmware and the operating system: the operating system is not permitted to make arbitrary changes to firmware variables. It sounds as though you ha
Secure Boot defines a security boundary between the firmware and the operating system: the operating system is not permitted to make arbitrary changes to firmware variables. It sounds as though you ha
|
By
Michael Brown
· #76109
·
|
|
[edk2-rfc] [edk2-devel] RFC: design review for TDVF in OVMF
The "one binary" decision isn't relevant here, is it? It would make more sense to implement 5-level paging within the base EDK2 architecture. This would allow that feature to be tested in isolation fr
The "one binary" decision isn't relevant here, is it? It would make more sense to implement 5-level paging within the base EDK2 architecture. This would allow that feature to be tested in isolation fr
|
By
Michael Brown
· #76108
·
|
|
[edk2-rfc] [edk2-devel] RFC: design review for TDVF in OVMF
Out of interest: does Intel TDX provide any security benefits beyond the (much simpler) Intel SGX? As far as I can tell from the various papers, the fundamental difference between TDX and SGX seems to
Out of interest: does Intel TDX provide any security benefits beyond the (much simpler) Intel SGX? As far as I can tell from the various papers, the fundamental difference between TDX and SGX seems to
|
By
Michael Brown
· #76079
·
|