I’m posting this on the off chance that it might help someone with a similar issue.
One morning last week my Lenovo P580 laptop failed to boot. As the Lenovo
splash screen changed to the intial Grub2 message the PC froze. It did not
respond to the keyboard at all, and there was a continuous rapid beep code. I
couldn’t even intervene using the “REISUB” technique. I had made no changes to
the software in a long time, so I knew I was not the cause of the problem.
Because of the timing I was unsure whether the problem was a corrupted BIOS or
an issue with Grub2.
Eventually, through trial and error, I discovered a workaround. If I
immediately pressed f12 as soon as the splash screen came up I could then
change the boot device from the hard disk and then back again. The PC would
boot and run normally. This made me suspect that the problem was a corrupted
BIOS, but I still wasn’t sure. I did go into the BIOS setup screens and found
that all the settings were still correct.
I’d been planning to upgrade from 12.3 to 13.1 anyway so I did that upgrade
next in hopes of overwriting the Grub files in the process. The upgrade went
O.K. and 13.1 was stable, but I still had to use the workaround to boot. So
I then downloaded a new version of the BIOS from the Lenovo site and flashed
the BIOS from Windows. When the PC rebooted the splash screen had changed, and
the f2 and f12 options no longer showed. After about 1 second the screen went
black until eventually a series of error messages came on the screen.
EFI Network 0 for IPv6 (mac address) boot failed Checking media (Fail)
EFI Network 0 for IPv4 (mac address) boot failed
Default Boot Device Missing or Boot Failed Insert Recovery Media and hit any key
The Select Boot Manager to choose a new Boot Device or to Boot Recovery Media
I used the f12 option to get to the device selection screen, but there were
only two options available, the IPv4 and IPv6 options.
I then found a post on the Lenovo forums that suggested I could still use the
f2 option to get into the BIOS setup screens. I went to the Boot
options and changed the Boot Mode to “Legacy Support”. That allowed the PC to
boot, and it turned out that the original issue was resolved as well.