summaryrefslogtreecommitdiff
path: root/lib/efi_loader/helloworld.c
AgeCommit message (Collapse)Author
2024-10-09efi_loader: Show FirmwareVendor and FirmwareRevision in helloworldSimon Glass
Show the firmware vendor and revision to make it clear which firmware is used, e.g. whether U-Boot is providing the boot services. The output will look like Firmware vendor: Das U-Boot Firmware revision: 20241000 Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-09-12efi_loader: Put back copyright messageSimon Glass
This was lost in a later commit, so add it back. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-05-13efi_loader: print file path w/o boot deviceHeinrich Schuchardt
Helloworld.efi should print the file path even if the boot device is not set. Signed-off-by: Heinrich Schuchardt <[email protected]>
2023-04-08efi_loader: avoid using HandleProtocol in helloworld.efiHeinrich Schuchardt
HandleProtocol() is deprecated and leaves an OpenedProtocolInformation behind. Use OpenProtocol(GET_PROTOCOL) instead. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-02-10efi_loader: static functions in helloworld.cHeinrich Schuchardt
Make functions that are not used externally static. Signed-off-by: Heinrich Schuchardt <[email protected]>
2022-09-03efi_loader: printing UEFI revision in helloworld.efiHeinrich Schuchardt
We need to support multiple digits in the parts of the UEFI verision number. E.g. EFI_SPECIFICATION_VERSION = (123 << 16) | 456 must be printed as 123.45.6 Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-02-03efi: Use 16-bit unicode stringsSimon Glass
At present we use wide characters for unicode but this is not necessary. Change the code to use the 'u' literal instead. This helps to fix build warnings for sandbox on rpi. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2022-01-29efi_loader: correct function comment styleHeinrich Schuchardt
Replace @return and @param. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-03-31efi_loader: typo 'devide path'Heinrich Schuchardt
Fix a typo in helloworld.efi. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-01-13efi_loader: print boot device and file path in helloworldHeinrich Schuchardt
Let helloworld.efi print the device path of the boot device and the file path as provided by the loaded image protocol. Signed-off-by: Heinrich Schuchardt <[email protected]>
2019-04-23efi_loader: consistent naming of protocol GUIDsHeinrich Schuchardt
We should consistently use the same name for protocol GUIDs as defined in the UEFI specification. Not adhering to this rule has led to duplicate definitions for the EFI_LOADED_IMAGE_PROTOCOL_GUID. Adjust misnamed protocol GUIDs. Adjust the text for the graphics output protocol in the output of the `efidebug dh` command. Signed-off-by: Heinrich Schuchardt <[email protected]>
2019-02-13efi_loader: use library memcpy() in helloworld.efiHeinrich Schuchardt
Helloworld does not need its own memcpy() implementation anymore. Use the one provided in efi_freestanding.c. Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Alexander Graf <[email protected]>
2018-12-02efi_selftest: use CR LF in helloworldHeinrich Schuchardt
The UEFI spec defines that a line feed moves the cursor to the next line and (only) a carriage return moves the cursor to the beginning of the line. So we should issue CR LF when we want to get to the start of the next line. Add some comments. Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Alexander Graf <[email protected]>
2018-07-02efi_loader: helloworld: Output ACPI configuration tableBin Meng
Output ACPI configuration table if it exists. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2018-05-07SPDX: Convert all of our single license tags to Linux Kernel styleTom Rini
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by: Tom Rini <[email protected]>
2018-04-04efi_loader: show UEFI revision in helloworldHeinrich Schuchardt
Output the UEFI revision number in helloworld. Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Alexander Graf <[email protected]>
2018-01-22efi_loader: check tables in helloworld.efiHeinrich Schuchardt
Check if the device tree and the SMBIOS table are available. Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Alexander Graf <[email protected]>
2017-12-16efi_loader: helloworld.c: Explicitly use .rodata for loaded_image_guidAlexander Graf
Commit bbf75dd9345d0b ("efi_loader: output load options in helloworld") introduced a const variable in efi_main() called loaded_image_guid which got populated from a constant struct. While you would usually expect a compiler to realize that this variable should really just be a global pointer to .rodata, gcc disagrees and instead puts it on the stack. Unfortunately in some implementations of gcc it does so my calling memcpy() which we do not implement in our hello world environment. So let's explicitly move it to a global variable which in turn puts it in .rodata reliably and gets rid of the memcpy(). Fixes: bbf75dd9345d0b ("efi_loader: output load options in helloworld") Reported-by: Florian Fainelli <[email protected]> Signed-off-by: Alexander Graf <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Tested-by: Florian Fainelli <[email protected]>
2017-12-01efi_loader: output load options in helloworldHeinrich Schuchardt
We need to test if we pass a valid image handle when loading and EFI application. This cannot be done in efi_selftest as it is not loaded as an image. So let's enhance helloworld a bit. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Alexander Graf <[email protected]>
2017-12-01efi_loader: helloworld.c: remove superfluous includeHeinrich Schuchardt
Remove a superfluous include from helloworld.c Signed-off-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Alexander Graf <[email protected]>
2016-11-14efi: Add support for a hello world test programSimon Glass
It is useful to have a basic sanity check for EFI loader support. Add a 'bootefi hello' command which loads HelloWord.efi and runs it under U-Boot. Signed-off-by: Simon Glass <[email protected]> [agraf: Fix documentation, add unfulfilled kconfig dep] Signed-off-by: Alexander Graf <[email protected]>