efi_loader: device path for SATA devices
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 20 May 2020 21:12:02 +0000 (23:12 +0200)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 21 May 2020 08:00:17 +0000 (10:00 +0200)
commitbf3bcef7fb8ef4b0bb56d00304a934a5a5eb187e
treed71e1a7521cca79f160591430df5cd607b068f36
parent19ecced71cfb92519e8ef7dddbc4138d871fe97c
efi_loader: device path for SATA devices

Provide device path nodes for SATA devices.

This avoids creation of two handles with the same device path indicating
our root node.

This is what the device paths for a SATA drive with four partitions could
like:

/VenHw(..)/Sata(0x0,0xffff,0x0)
/VenHw(..)/Sata(0x0,0xffff,0x0)/HD(1,MBR,0x81ea591f,0x800,0x63ff830)
/VenHw(..)/Sata(0x0,0xffff,0x0)/HD(2,MBR,0x81ea591f,0x6400800,0x9ff830)
/VenHw(..)/Sata(0x0,0xffff,0x0)/HD(3,MBR,0x81ea591f,0x6e00800,0x16ef2ab0)
/VenHw(..)/Sata(0x0,0xffff,0x0)/HD(4,MBR,0x81ea591f,0x1dcf3800,0x1dcedab0)

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
include/efi_api.h
lib/efi_loader/efi_device_path.c
lib/efi_loader/efi_device_path_to_text.c