1. 25 Feb, 2021 4 commits
    • Heinrich Schuchardt's avatar
      disk: part: partitions are not legacy · 5c16b81d
      Heinrich Schuchardt authored
      Currently partition support depends on CONFIG_HAVE_BLOCK_DEVICE.
      
      CONFIG_HAVE_BLOCK_DEVICE is described as
      
          'Enable Legacy Block Device'
      
      If CONFIG_BLK is enabled, we should be able to support partitions even if
      CONFIG_HAVE_BLOCK_DEVICE=n.
      
      Furthermore the combination
      
      CONFIG_EFI_PARTITION=y && CONFIG_HAVE_BLOCK_DEVICE=n && CONFIG_PARTITIONS=y
      
      leads to a build error
      
         'partition_basic_data_guid' defined but not used
      
      Move the CONFIG_HAVE_BLOCK_DEVICE dependency from C code to Kconfig.
      Allow enabling CONFIG_PARTITIONS if CONFIG_BLK=y.
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      5c16b81d
    • Heinrich Schuchardt's avatar
      efi_loader: fix documentation in efi_loader.h · a45d4018
      Heinrich Schuchardt authored
      Correct missing descriptions and typos in efi_loader.h.
      Signed-off-by: Heinrich Schuchardt's avatarHeinrich Schuchardt <xypron.glpk@gmx.de>
      a45d4018
    • Jose Marinho's avatar
      efi: ESRT creation tests · 6e8c9c96
      Jose Marinho authored
      This commmit exercises the ESRT creation -- introduced in the previous
      commit -- in two tests.
      
      test 1:
       A fake FMP, with TEST_ESRT_NUM_ENTRIES FW images, is installed in the
       system leading to the corresponding ESRT entries being populated.
       The ESRT entries are checked against the datastructure used to
       initialize the FMP.
      
      test 1 invocation:
       make sandbox_capsule_defconfig all
       ./u-boot -d arch/sandbox/dts/test.dtb
       ut lib
      
      test 2:
       The test is part of test_efi_capsule_fw3.
      
       In order to run the test the following must be added to
       sandbox_defconfig:
        +CONFIG_CMD_SF=y
        +CONFIG_CMD_MEMORY=y
        +CONFIG_CMD_FAT=y
        +CONFIG_DFU=y
      
       The ESRT is printed in the u-boot shell by calling efidebug esrt.
       The test ensures that, after the capsule is installed, the  ESRT
       contains entries with the GUIDs:
        - EFI_FIRMWARE_IMAGE_TYPE_UBOOT_FIT_GUID;
        - EFI_FIRMWARE_IMAGE_TYPE_UBOOT_RAW_GUID;
      
      test 2 invocation:
       sudo ./test/py/test.py --bd sandbox -k capsule_fw3 -l --build
      Signed-off-by: default avatarJose Marinho <jose.marinho@arm.com>
      
      CC: Heinrich Schuchardt	<xypron.glpk@gmx.de>
      CC: Sughosh Ganu <sughosh.ganu@linaro.org>
      CC: AKASHI Takahiro <takahiro.akashi@linaro.org>
      CC: Ilias Apalodimas <ilias.apalodimas@linaro.org>
      CC: Andre Przywara <andre.przywara@arm.com>
      CC: Alexander Graf <agraf@csgraf.de>
      CC: nd@arm.com
      6e8c9c96
    • Jose Marinho's avatar
      efi: Add ESRT to the EFI system table · cdaa9dac
      Jose Marinho authored
      The ESRT is initialised during efi_init_objlist after
      efi_initialize_system_table().
      
      The ESRT is recreated from scratch at the following events:
      - successful UpdateCapsule;
      - FMP instance install.
      
      The code ensures that every ESRT entry has a unique fw_class value.
      
      Limitations:
      - The ESRT is not updated when an FMP instance is uninstalled;
      - the fields image_type and flags are currently set to UNKNOWN and 0
      respectively. The mapping between fw_class and the image_type/flags
      fields is platform specific. A mapping function is lacking from the
      current implementation but should be added in the future.
      Signed-off-by: default avatarJose Marinho <jose.marinho@arm.com>
      
      CC: Heinrich Schuchardt	<xypron.glpk@gmx.de>
      CC: Sughosh Ganu <sughosh.ganu@linaro.org>
      CC: AKASHI Takahiro <takahiro.akashi@linaro.org>
      CC: Ilias Apalodimas <ilias.apalodimas@linaro.org>
      CC: Andre Przywara <andre.przywara@arm.com>
      CC: Alexander Graf <agraf@csgraf.de>
      CC: nd@arm.com
      cdaa9dac
  2. 24 Feb, 2021 7 commits
  3. 23 Feb, 2021 11 commits
  4. 22 Feb, 2021 9 commits
  5. 21 Feb, 2021 9 commits