From patchwork Tue Dec 5 21:59:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Graf X-Patchwork-Id: 120758 Delivered-To: patch@linaro.org Received: by 10.140.22.227 with SMTP id 90csp6291103qgn; Tue, 5 Dec 2017 13:59:21 -0800 (PST) X-Google-Smtp-Source: AGs4zMbBnEt/cWNNnImPKLHDJiEv/KJn8tNBC4AfiUH1meszDCYKMvlGy8nzuZL8VxVlgYuJ2RnC X-Received: by 10.80.164.87 with SMTP id v23mr36380380edb.99.1512511161485; Tue, 05 Dec 2017 13:59:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1512511161; cv=none; d=google.com; s=arc-20160816; b=bl6hdBBb2NavLoCa9TGg1e2DrB3EeK/nSIKrm3JJ1Pt95olrtQiABb37sh76HpouRo 7z5KAfkNQXRxdOv5RQfr5hWoClf/1Q0bNUhQ1nSfD+bgYYwog+y8LgS1lFzazXCsrEWT IDCM3AXaUBvkmQ+ol8t0U3n5BUvAcPmIlUCdJsxQfO6Xf+ZUAxSVVLhKnNJaVyleeWHp 9MsNhoywisOfV56+Wye0CJ3Br3JssYURhqlZG3y50esxNGIh1ViyVR6kG+s2Mv1Q8a7v Jj5UfGuCHvf0CwKX6KbGea3DCiZy0sconyB2m3hYkD6pJ90tkwZJa5mgQScY4q/ZynQP Sijw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:cc:message-id:date:to:from :arc-authentication-results; bh=JJYaDgGzS6wxS3djl0nbdxbgmfTsYNvN4zP6MS9oqms=; b=cLYe/sI+/JkVieFl9RsuN5xUGzPGNUEFDbpRHOIDSX429E7WAuZlKwLmqhwkdmSrJY xcbYpe7oyyxiM4dMgHIUsbGnj7FdyGVDdglzedM2g/aZUFcaXvIJa4FNK/gmrK8R3L8h MvA00m26fG9ahaH/yCFNCtDQ73n27xAG/jsLnIXa46UONC3YLVKlQTnrPz32T8lKAwPj eXvTGhh41KAAlwyB6vMs6IdhI9pNwoPBpBrsh/5+4VTusCZx3qPisWk5DV16+01pD0VI H6rUaH6KoPBBymywMJ8KsQxP4Mgx9SYGfgS4i/dBnAPux8MjdwNd2FMWmIPN0BDxESFB UFIA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Return-Path: Received: from lists.denx.de (dione.denx.de. [81.169.180.215]) by mx.google.com with ESMTP id y89si1142654eda.212.2017.12.05.13.59.17; Tue, 05 Dec 2017 13:59:21 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) client-ip=81.169.180.215; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Received: by lists.denx.de (Postfix, from userid 105) id F41E3C21F1F; Tue, 5 Dec 2017 21:59:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 69762C21DE7; Tue, 5 Dec 2017 21:59:11 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id F22CDC21DE7; Tue, 5 Dec 2017 21:59:09 +0000 (UTC) Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by lists.denx.de (Postfix) with ESMTPS id 7DF68C21DE4 for ; Tue, 5 Dec 2017 21:59:09 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id B748CAF6A; Tue, 5 Dec 2017 21:59:08 +0000 (UTC) From: Alexander Graf To: Tom Rini Date: Tue, 5 Dec 2017 22:59:07 +0100 Message-Id: <20171205215907.72874-1-agraf@suse.de> X-Mailer: git-send-email 2.12.3 Cc: Heinrich Schuchardt , u-boot@lists.denx.de Subject: [U-Boot] [PULL] efi patch queue 2017-12-05 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" 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 bb0bb91cf0aa2c13528fe39be2006f32f7b9c437: efi_stub: Use efi_uintn_t (2017-12-05 22:56:17 +0100) ---------------------------------------------------------------- Patch queue for efi - 2017-12-05 Highlights for this release: - Dynamic EFI object creation (lists instead of static arrays) - EFI selftest improvements - Minor fixes ---------------------------------------------------------------- Alexander Graf (3): efi_loader: Fix partition offsets efi_loader helloworld.efi: Fix building with -Os efi_stub: Use efi_uintn_t 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/efi_stub.c | 2 +- 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 +- 33 files changed, 2391 insertions(+), 659 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