#
8745f13f |
|
26-Apr-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: pass GUID by address to efi_dp_from_lo We should not pass GUIDs by value as this requires copying. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
a55039d6 |
|
19-Apr-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: superfluous efi_restore_gd after EFI_CALL EFI_CALL() invokes __efi_entry_check() which executes set_gd(efi_gd). There is no need to execute set_gd(efi_gd) again via efi_restore_gd(). Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05bf7adf |
|
03-Dec-2023 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
efi_loader: use event callback for initrd deregistration Currently efi_initrd_deregister() is called in bootefi.c when the image started from bootefi command returns. Since efi_guid_event_group_return_to_efibootmgr event is implemented, so let's use this event for invoking initrd deregistration. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Tested-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
1431ab8b |
|
15-Feb-2024 |
Mark Kettenis <kettenis@openbsd.org> |
efi_loader: Don't carve out memory reservations too early Moving the efi_carve_out_dt_rsv() call in commit 1be415b21b2d ("efi_loader: create memory reservations in ACPI case") broke boards that create additional memory reservations in ft_board_setup() since it is now called before those additional memory reservations are made. This is the case for the rk3588 boards and breaks booting OpenBSD on those boards. Move the call back to its original location and add a call in the code path used for ACPI. Fixes: 1be415b21b2d ("efi_loader: create memory reservations in ACPI case") Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
fa077218 |
|
26-Jan-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: export efi_get_configuration_table In multiple places we need a function to find an EFI configuration table. Rename get_config_table() to efi_get_configuration_table() and export it. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <akashi.tkhro@gmail.com> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
c38cb227 |
|
14-Dec-2023 |
Tom Rini <trini@konsulko.com> |
efi_loader: Remove <common.h> We largely do not need <common.h> in these files, so drop it. The only exception here is that efi_freestanding.c needs <linux/types.h> and had been getting that via <common.h>. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05bf7adf |
|
03-Dec-2023 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
efi_loader: use event callback for initrd deregistration Currently efi_initrd_deregister() is called in bootefi.c when the image started from bootefi command returns. Since efi_guid_event_group_return_to_efibootmgr event is implemented, so let's use this event for invoking initrd deregistration. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Tested-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
1431ab8b |
|
15-Feb-2024 |
Mark Kettenis <kettenis@openbsd.org> |
efi_loader: Don't carve out memory reservations too early Moving the efi_carve_out_dt_rsv() call in commit 1be415b21b2d ("efi_loader: create memory reservations in ACPI case") broke boards that create additional memory reservations in ft_board_setup() since it is now called before those additional memory reservations are made. This is the case for the rk3588 boards and breaks booting OpenBSD on those boards. Move the call back to its original location and add a call in the code path used for ACPI. Fixes: 1be415b21b2d ("efi_loader: create memory reservations in ACPI case") Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
fa077218 |
|
26-Jan-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: export efi_get_configuration_table In multiple places we need a function to find an EFI configuration table. Rename get_config_table() to efi_get_configuration_table() and export it. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <akashi.tkhro@gmail.com> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
c38cb227 |
|
14-Dec-2023 |
Tom Rini <trini@konsulko.com> |
efi_loader: Remove <common.h> We largely do not need <common.h> in these files, so drop it. The only exception here is that efi_freestanding.c needs <linux/types.h> and had been getting that via <common.h>. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <kojima.masahisa@socionext.com> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
1431ab8b |
|
15-Feb-2024 |
Mark Kettenis <kettenis@openbsd.org> |
efi_loader: Don't carve out memory reservations too early Moving the efi_carve_out_dt_rsv() call in commit 1be415b21b2d ("efi_loader: create memory reservations in ACPI case") broke boards that create additional memory reservations in ft_board_setup() since it is now called before those additional memory reservations are made. This is the case for the rk3588 boards and breaks booting OpenBSD on those boards. Move the call back to its original location and add a call in the code path used for ACPI. Fixes: 1be415b21b2d ("efi_loader: create memory reservations in ACPI case") Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
fa077218 |
|
26-Jan-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: export efi_get_configuration_table In multiple places we need a function to find an EFI configuration table. Rename get_config_table() to efi_get_configuration_table() and export it. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
c38cb227 |
|
14-Dec-2023 |
Tom Rini <trini@konsulko.com> |
efi_loader: Remove <common.h> We largely do not need <common.h> in these files, so drop it. The only exception here is that efi_freestanding.c needs <linux/types.h> and had been getting that via <common.h>. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
fa077218 |
|
26-Jan-2024 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: export efi_get_configuration_table In multiple places we need a function to find an EFI configuration table. Rename get_config_table() to efi_get_configuration_table() and export it. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
c38cb227 |
|
14-Dec-2023 |
Tom Rini <trini@konsulko.com> |
efi_loader: Remove <common.h> We largely do not need <common.h> in these files, so drop it. The only exception here is that efi_freestanding.c needs <linux/types.h> and had been getting that via <common.h>. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
6422820a |
|
16-Jan-2024 |
AKASHI Takahiro <takahiro.akashi@linaro.org> |
efi_loader: split unrelated code from efi_bootmgr.c Some code moved from cmd/bootefi.c is actually necessary only for "bootefi <addr>" command (starting an image manually loaded by a user using U-Boot load commands or other methods (like JTAG debugger). The code will never been opted out as unused code by a compiler which doesn't know how EFI boot manager is implemented. So introduce a new configuration, CONFIG_EFI_BINARY_EXEC, to enforce them opted out explicitly. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> |
#
c38cb227 |
|
14-Dec-2023 |
Tom Rini <trini@konsulko.com> |
efi_loader: Remove <common.h> We largely do not need <common.h> in these files, so drop it. The only exception here is that efi_freestanding.c needs <linux/types.h> and had been getting that via <common.h>. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
c38cb227 |
|
14-Dec-2023 |
Tom Rini <trini@konsulko.com> |
efi_loader: Remove <common.h> We largely do not need <common.h> in these files, so drop it. The only exception here is that efi_freestanding.c needs <linux/types.h> and had been getting that via <common.h>. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
339b527b |
|
19-Jun-2023 |
Raymond Mao <raymond.mao@linaro.org> |
Move bootorder and bootoption apis to lib Rename and move bootorder and bootoption apis from cmd to lib for re-use between eficonfig and bootmgr Fix 'unexpected indentation' when 'make htmldocs' after functions are moved Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ce327084 |
|
18-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
eficonfig: carve out efi_get_next_variable_name_int calls To retrieve the EFI variable name by efi_get_next_variable_name_int(), the sequence of alloc -> efi_get_next_variable_name_int -> realloc -> efi_get_next_variable_name_int is required. In current code, this sequence repeatedly appears in the several functions. It should be curved out a common function. This commit also fixes the missing free() of var_name16 in eficonfig_delete_invalid_boot_option(). Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
3ac026ae |
|
01-Dec-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: utility function to check the variable name is "Boot####" Some commands need to enumerate the existing UEFI load option variable("Boot####"). This commit transfers some code from cmd/efidebug.c to lib/efi_loder/, then exposes efi_varname_is_load_option() function to check whether the UEFI variable name is "Boot####". Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
16b27b67 |
|
03-Oct-2022 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: function to unlink udevice and handle When deleting a device or a handle we must remove the link between the two to avoid dangling references. Provide function efi_unlink_dev() for this purpose. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
ee576662 |
|
21-Jul-2022 |
Masahisa Kojima <masahisa.kojima@linaro.org> |
efi_loader: move udevice pointer into struct efi_object This is a preparation patch to provide the unified method to access udevice pointer associated with the EFI handle by adding udevice pointer into struct efi_object. The patch also introduces a helper function efi_link_dev() to link the udevice and EFI handle. The EFI handles of both EFI block io driver implemented in lib/efi_loader/efi_disk.c and EFI block io driver implemented as EFI payload can access the udevice pointer in the struct efi_object. We can use this udevice pointer to get the U-Boot friendly block device name(e.g. mmc 0:1, nvme 0:1) through EFI handle. Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
b436cc6a |
|
06-May-2022 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: add sha384/512 on certificate revocation Currently we don't support sha384/512 for the X.509 certificate in dbx. Moreover if we come across such a hash we skip the check and approve the image, although the image might needs to be rejected. Rework the code a bit and fix it by adding an array of structs with the supported GUIDs, len and literal used in the U-Boot crypto APIs instead of hardcoding the GUID types. It's worth noting here that efi_hash_regions() can now be reused from efi_signature_lookup_digest() and add sha348/512 support there as well Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
156ccbc3 |
|
23-Jan-2022 |
Simon Glass <sjg@chromium.org> |
efi: Use 16-bit unicode strings 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 <sjg@chromium.org> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
db61e70e |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() should skip VenMedia node The 'efidebug boot dump' command should not display the VenMedia() device path node preceding the device path of the initial ram disk. By letting efi_dp_from_lo() skip the VenMedia() device path node we can simplify the coding. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
9ad37fe4 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid multiple local copies of lf2_initrd_guid Create the GUID as a global variable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
05345425 |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() unused parameter size Parameter size is never used in function efi_dp_from_lo(). Remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
0421735d |
|
14-Oct-2021 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: efi_dp_from_lo() don't copy GUID Instead of copying a GUID and then using a pointer to the copy for calling guidcmp(), just pass the pointer to the orginal GUID. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |
#
37c3ca5c |
|
17-Mar-2021 |
Ilias Apalodimas <ilias.apalodimas@linaro.org> |
efi_loader: Add helper functions for EFI A following patch introduces a different logic for loading initrd's based on the EFI_LOAD_FILE2_PROTOCOL. Since similar logic can be applied in the future for other system files (i.e DTBs), let's add some helper functions which will retrieve and parse file paths stored in EFI variables. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> |