Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • early-display
  • variant-emmc-nvme-boot
  • 2023-01-25
  • v3
  • variant-emmc-nvme-boot
  • 2020-06-01
7 results

efi_disk.c

Blame
  • Forked from Reform / reform-boundary-uboot
    Source project has a limited visibility.
    • Rob Clark's avatar
      884bcf6f
      efi_loader: use proper device-paths for partitions · 884bcf6f
      Rob Clark authored
      
      Also, create disk objects for the disk itself, in addition to the
      partitions.  (UEFI terminology is a bit confusing, a "disk" object is
      really a partition.)  This helps grub properly identify the boot device
      since it is trying to match up partition "disk" object with it's parent
      device.
      
      Now instead of seeing devices like:
      
        /File(sdhci@07864000.blk)/EndEntire
        /File(usb_mass_storage.lun0)/EndEntire
      
      You see:
      
        /ACPI(133741d0,0)/UnknownMessaging(1d)/EndEntire
        /ACPI(133741d0,0)/UnknownMessaging(1d)/HD(0,800,64000,dd904a8c00000000,1,1)/EndEntire
        /ACPI(133741d0,0)/UnknownMessaging(1d)/HD(1,64800,200000,dd904a8c00000000,1,1)/EndEntire
        /ACPI(133741d0,0)/UnknownMessaging(1d)/HD(2,264800,19a000,dd904a8c00000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(0,800,60000,38ca680200000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(1,61000,155000,38ca680200000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(2,20fa800,1bbf8800,38ca680200000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(3,1b6800,1f44000,38ca680200000000,1,1)/EndEntire
      
      This is on a board with single USB disk and single sd-card.  The
      UnknownMessaging(1d) node in the device-path is the MMC device,
      but grub_efi_print_device_path() hasn't been updated yet for some
      of the newer device-path sub-types.
      
      This patch is inspired by a patch originally from Peter Jones, but
      re-worked to use efi_device_path, so it doesn't much resemble the
      original.
      
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      [agraf: s/unsigned/unsigned int/]
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      884bcf6f
      History
      efi_loader: use proper device-paths for partitions
      Rob Clark authored
      
      Also, create disk objects for the disk itself, in addition to the
      partitions.  (UEFI terminology is a bit confusing, a "disk" object is
      really a partition.)  This helps grub properly identify the boot device
      since it is trying to match up partition "disk" object with it's parent
      device.
      
      Now instead of seeing devices like:
      
        /File(sdhci@07864000.blk)/EndEntire
        /File(usb_mass_storage.lun0)/EndEntire
      
      You see:
      
        /ACPI(133741d0,0)/UnknownMessaging(1d)/EndEntire
        /ACPI(133741d0,0)/UnknownMessaging(1d)/HD(0,800,64000,dd904a8c00000000,1,1)/EndEntire
        /ACPI(133741d0,0)/UnknownMessaging(1d)/HD(1,64800,200000,dd904a8c00000000,1,1)/EndEntire
        /ACPI(133741d0,0)/UnknownMessaging(1d)/HD(2,264800,19a000,dd904a8c00000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(0,800,60000,38ca680200000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(1,61000,155000,38ca680200000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(2,20fa800,1bbf8800,38ca680200000000,1,1)/EndEntire
        /ACPI(133741d0,0)/USB(0,0)/USB(0,0)/USB(0,0)/HD(3,1b6800,1f44000,38ca680200000000,1,1)/EndEntire
      
      This is on a board with single USB disk and single sd-card.  The
      UnknownMessaging(1d) node in the device-path is the MMC device,
      but grub_efi_print_device_path() hasn't been updated yet for some
      of the newer device-path sub-types.
      
      This patch is inspired by a patch originally from Peter Jones, but
      re-worked to use efi_device_path, so it doesn't much resemble the
      original.
      
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      [agraf: s/unsigned/unsigned int/]
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>