]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
efi_loader: VenMedia device path node
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 3 Feb 2021 17:46:07 +0000 (18:46 +0100)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 4 Feb 2021 19:12:41 +0000 (20:12 +0100)
The Load File2 protocol exposes a device path with a VenMedia() node. Hence
our implementation of the device path to text protocol should support this
node.

Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
lib/efi_loader/efi_device_path_to_text.c

index 5ae4833fa78c7180b0634854c6182d8fe85a24d4..1aaa9f94fa4547fe2307e085145aea5613c7e6d3 100644 (file)
@@ -244,6 +244,21 @@ static char *dp_media(char *s, struct efi_device_path *dp)
                             cddp->partition_start, cddp->partition_size);
                break;
        }
+       case DEVICE_PATH_SUB_TYPE_VENDOR_PATH: {
+               int i, n;
+               struct efi_device_path_vendor *vdp =
+                       (struct efi_device_path_vendor *)dp;
+
+               s += sprintf(s, "VenMedia(%pUl", &vdp->guid);
+               n = (int)vdp->dp.length - sizeof(struct efi_device_path_vendor);
+               if (n > 0) {
+                       s += sprintf(s, ",");
+                       for (i = 0; i < n; ++i)
+                               s += sprintf(s, "%02x", vdp->vendor_data[i]);
+               }
+               s += sprintf(s, ")");
+               break;
+       }
        case DEVICE_PATH_SUB_TYPE_FILE_PATH: {
                struct efi_device_path_file_path *fp =
                        (struct efi_device_path_file_path *)dp;