help-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: EFI NVMe Grub does not see any disk


From: Manuel Lauss
Subject: Re: EFI NVMe Grub does not see any disk
Date: Wed, 19 Apr 2017 20:45:19 +0200

Hi Andrei,

On Wed, Apr 19, 2017 at 8:09 PM, Andrei Borzenkov <address@hidden> wrote:
> 19.04.2017 20:31, Manuel Lauss пишет:
>> Hi Andrei,
>>
>> On Wed, Apr 19, 2017 at 7:15 PM, Andrei Borzenkov <address@hidden> wrote:
>>> 19.04.2017 14:47, Manuel Lauss пишет:
>>>> Hello,
>>>>
>>>> I'm trying to get grub running on an EFI system which only has a NVMe disk.
>>>> My problem is that when grub is launched by EFI (from the ESP), it
>>>> does not see any disks at all,
>>>> 'ls' just prints "(proc)" and nothing more.  Is there a way to get
>>>> grub to recognize the disk
>>>> the firmware has loaded it from?
>>>>
>>>> It's installed this way, /boot/efi is /dev/nvme0n1p2, which is the
>>>> ESP. Version is 2.02_rc2
>>>> grub-install --efi-directory=/boot/efi --no-nvram --target=x86_64-efi
>>>> --compress=xz --themes="breeze" /dev/nvme0n1p2
>>>>
>>>
>>> GRUB relies on EFI for disk access and needs BlockIO protocol on device
>>> so it can work with it. It may be that EFI NVMe driver on your system
>>> does not implement it. Can you boot EFI shell on your system? This could
>>> be used to verify what protocols are present for which device.
>>
>> Yes EFI Shell is available, and can be used to e.g. start the grub efi binary
>> on the nvme device just fine.
>
> Could you run
>
> dh -d
>
> in EFI shell and send me result? You can redirect output to file on ESP
> using standard syntax
>
> dh -d > dh.out

It is attached.  I guess entry 0x60 is the relevant NVMe one.


>>  Is there a special grub module required to
>> get EFI BlockIO Protocol support?
>>
>
> You misunderstand. GRUB relies on and requires BlockIO protocol to be
> provided by platform driver. But NVMe device in principle is not
> required to implement it - EFI specification defines another protocol
> specifically for NVMe. EFI shell is (likely) using Simple File System
> protocol that can be implemented on top of anything.

Ok, learned something new.

Thank you!
        Manuel

Attachment: dh.txt
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]