[PULL] efi patch queue 2017-12-04

Message ID 20171203230830.18187-1-agraf@suse.de
State New
Headers show
Series
  • [PULL] efi patch queue 2017-12-04
Related show

Pull-request

git://github.com/agraf/u-boot.git tags/signed-efi-next

Message

Alexander Graf Dec. 3, 2017, 11:08 p.m.
Hi Tom,

This is my current patch queue for efi.  Please pull.

Alex


The following changes since commit 9804d88630cdb22f5f0ace05ac05942928410fd9:

  Merge branch 'rmobile-mx' of git://git.denx.de/u-boot-sh (2017-11-30 10:39:04 -0500)

are available in the git repository at:

  git://github.com/agraf/u-boot.git tags/signed-efi-next

for you to fetch changes up to 3bb74f9800cdc4cf10a87f2725242c2565256654:

  efi_loader helloworld.efi: Fix building with -Os (2017-12-01 22:31:00 +0100)

----------------------------------------------------------------
Patch queue for efi - 2017-12-04

Highlights for this release:

  - Dynamic EFI object creation (lists instead of static arrays)
  - EFI selftest improvements
  - Minor fixes

----------------------------------------------------------------
Alexander Graf (2):
      efi_loader: Fix partition offsets
      efi_loader helloworld.efi: Fix building with -Os

Heinrich Schuchardt (64):
      efi_loader: move efi_search_obj up in code
      efi_loader: implement SetWatchdogTimer
      efi_selftest: provide test for watchdog timer
      efi_loader: new function utf8_to_utf16
      efi_loader: guard against double inclusion of efi_loader.h
      efi_loader: consistently use efi_status_t in bootefi
      efi_selftest: provide a dummy device path
      efi_selftest: reformat code
      efi_selftest: efi_st_memcmp should return 0
      efi_selftest: deduplicate code
      efi_selftest: allow to select a single test for execution
      efi_selftest: correctly cleanup after selftest
      efi_loader: use bootargs as load options
      efi_selftest: test reboot by watchdog
      test/py: test reboot by EFI watchdog
      test/py: fix typo in test_efi_loader.py
      efi_selftest: provide test for EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL
      efi_loader: set parent handle in efi_load_image
      efi_loader: capitalize EFI_LOCATE_SEARCH_TYPE values
      efi_selftest: test protocol management
      efi_loader: eliminate efi_install_protocol_interface_ext
      efi_loader: eliminate efi_uninstall_protocol_interface_ext
      efi_loader: remove unused typedef for INTN
      efi_loader: replace UINTN by efi_uintn_t
      efi_loader: consistently use efi_uintn_t in boot services
      efi_loader: rework efi_locate_handle
      efi_loader: rework efi_search_obj
      efi_loader: fix typo efi_install_multiple_protocol_interfaces
      efi_loader: debug output efi_install_protocol_interface
      efi_loader implement UninstallMultipleProtocolInterfaces
      efi_loader: efi_gop: check calloc return value
      efi_loader: efi_disk: check return value of calloc
      efi_loader: efi_net: check return value of calloc
      efi_loader: efi_dp_match should have const arguments
      efi_loader: make efi_create_handle non-static
      efi_loader: argument of efi_search_obj should be const
      efi_loader: efi_gop: use correct types for parameters
      efi_selftest: test for graphics output protocol
      efi_loader: helper functions for protocol management
      efi_loader: simplify efi_install_protocol_interface
      efi_loader: simplify efi_search
      efi_loader: simplify efi_uninstall_protocol_interface
      efi_loader: simplify efi_locate_protocol
      efi_loader: refactor efi_setup_loaded_image
      efi_loader: efi_console: use helper functions
      efi_loader: helloworld.c: remove superfluous include
      efi_loader: size of media device path node represenation
      efi_loader: efi_dp_str should print path not node
      efi_loader: fix efi_convert_device_node_to_text
      efi_loader: reimplement LocateDevicePath
      efi_selftest: test EFI_DEVICE_PATH_TO_TEXT_PROTOCOL
      efi_loader: efi_disk: use efi_add_protocol
      efi_loader: efi_net: use efi_add_protocol
      efi_loader: efi_gop: use efi_add_protocol
      efi_loader: simplify efi_open_protocol
      efi_loader: simplify find_obj
      efi_loader: manage protocols in a linked list
      efi_selftest: compile without special compiler flags
      efi_selftest: add missing line feed
      efi_loader: output load options in helloworld
      test/py: check return code of helloworld
      efi_loader: pass handle of loaded image
      efi_loader: helper function to add EFI object to list
      efi_loader: comments for EFI_DEVICE_PATH_TO_TEXT_PROTOCOL

Jonathan Gray (1):
      efi_loader: initialise partition_signature memory

Rob Clark (1):
      efi_loader: add missing breaks

Stefan Roese (1):
      efi_loader: Exit in efi_set_bootdev() upon invalid "desc"

 cmd/bootefi.c                                   |  73 ++-
 include/charset.h                               |  15 +
 include/efi.h                                   |   6 +-
 include/efi_api.h                               |  48 +-
 include/efi_loader.h                            |  66 +-
 include/efi_selftest.h                          |  21 +
 lib/charset.c                                   |  57 +-
 lib/efi_loader/Makefile                         |   6 +-
 lib/efi_loader/efi_boottime.c                   | 788 ++++++++++++++----------
 lib/efi_loader/efi_console.c                    |  48 +-
 lib/efi_loader/efi_device_path.c                |  67 +-
 lib/efi_loader/efi_device_path_to_text.c        | 193 +++---
 lib/efi_loader/efi_disk.c                       | 103 ++--
 lib/efi_loader/efi_gop.c                        |  34 +-
 lib/efi_loader/efi_memory.c                     |  20 +-
 lib/efi_loader/efi_net.c                        |  31 +-
 lib/efi_loader/efi_watchdog.c                   |  89 +++
 lib/efi_loader/helloworld.c                     |  38 +-
 lib/efi_selftest/Makefile                       |  22 +-
 lib/efi_selftest/efi_selftest.c                 | 153 ++++-
 lib/efi_selftest/efi_selftest_console.c         |  10 +
 lib/efi_selftest/efi_selftest_devicepath.c      | 390 ++++++++++++
 lib/efi_selftest/efi_selftest_events.c          |   2 +-
 lib/efi_selftest/efi_selftest_gop.c             |  95 +++
 lib/efi_selftest/efi_selftest_manageprotocols.c | 354 +++++++++++
 lib/efi_selftest/efi_selftest_snp.c             |   2 +-
 lib/efi_selftest/efi_selftest_textoutput.c      |  53 ++
 lib/efi_selftest/efi_selftest_tpl.c             |   4 +-
 lib/efi_selftest/efi_selftest_util.c            |  11 +-
 lib/efi_selftest/efi_selftest_watchdog.c        | 231 +++++++
 test/py/tests/test_efi_loader.py                |   4 +-
 test/py/tests/test_efi_selftest.py              |  14 +-
 32 files changed, 2390 insertions(+), 658 deletions(-)
 create mode 100644 lib/efi_loader/efi_watchdog.c
 create mode 100644 lib/efi_selftest/efi_selftest_devicepath.c
 create mode 100644 lib/efi_selftest/efi_selftest_gop.c
 create mode 100644 lib/efi_selftest/efi_selftest_manageprotocols.c
 create mode 100644 lib/efi_selftest/efi_selftest_textoutput.c
 create mode 100644 lib/efi_selftest/efi_selftest_watchdog.c

Comments

Tom Rini Dec. 4, 2017, 3:13 p.m. | #1
On Mon, Dec 04, 2017 at 12:08:30AM +0100, Alexander Graf wrote:

> Hi Tom,

> 

> This is my current patch queue for efi.  Please pull.

> 

> Alex

> 

> 

> The following changes since commit 9804d88630cdb22f5f0ace05ac05942928410fd9:

> 

>   Merge branch 'rmobile-mx' of git://git.denx.de/u-boot-sh (2017-11-30 10:39:04 -0500)

> 

> are available in the git repository at:

> 

>   git://github.com/agraf/u-boot.git tags/signed-efi-next

> 

> for you to fetch changes up to 3bb74f9800cdc4cf10a87f2725242c2565256654:

> 

>   efi_loader helloworld.efi: Fix building with -Os (2017-12-01 22:31:00 +0100)

> 


NAK.  New warnings on at least qemu-x86_efi_payload32 qemu-x86_efi_payload64:
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c: In function ‘efi_main’:
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:298:29: warning: passing argument 1 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
  ret = boot->get_memory_map(&size, NULL, &key, &desc_size, &version);
                             ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:298:29: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:298:42: warning: passing argument 3 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
  ret = boot->get_memory_map(&size, NULL, &key, &desc_size, &version);
                                          ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:298:42: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:298:48: warning: passing argument 4 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
  ret = boot->get_memory_map(&size, NULL, &key, &desc_size, &version);
                                                ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:298:48: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:316:29: warning: passing argument 1 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
  ret = boot->get_memory_map(&size, desc, &key, &desc_size, &version);
                             ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:316:29: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:316:42: warning: passing argument 3 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
  ret = boot->get_memory_map(&size, desc, &key, &desc_size, &version);
                                          ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:316:42: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:316:48: warning: passing argument 4 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
  ret = boot->get_memory_map(&size, desc, &key, &desc_size, &version);
                                                ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:316:48: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:334:30: warning: passing argument 1 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
   ret = boot->get_memory_map(&size, desc, &key, &desc_size,
                              ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:334:30: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:334:43: warning: passing argument 3 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
   ret = boot->get_memory_map(&size, desc, &key, &desc_size,
                                           ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:334:43: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:334:49: warning: passing argument 4 of ‘boot->get_memory_map’ from incompatible pointer type [-Wincompatible-pointer-types]
   ret = boot->get_memory_map(&size, desc, &key, &desc_size,
                                                 ^
/home/trini/work/u-boot/u-boot/lib/efi/efi_stub.c:334:49: note: expected ‘size_t * {aka unsigned int *}’ but argument is of type ‘ulong * {aka long unsigned int *}’

-- 
Tom