Bug#772581: grub-install: Does not work on mixed mode EFI systems

Hendrik Weimer hendrik at enyo.de
Mon Dec 8 19:02:17 UTC 2014


Package: grub-efi-ia32
Version: 2.02-beta2-15

I just got an ASUS X205TA notebook, which has a Bay Trail 64-bit CPU and
requires a 32-bit UEFI (no BIOS legacy mode). After installation, I
tried to get a bootable system via "grub-install --target i386-efi":

| Installing for i386-efi platform.
| 
| EFI variables are not supported on this system.
| 
| 
| EFI variables are not supported on this system.
| 
| Installation finished. No error reported.

This creates two files in the "EFI/debian" directory of the EFI system
partition, but booting any of them manually from an EFI shell only
results in a blank screen.

Output of "dmesg | grep -i EFI":

| [    0.000000] efi: EFI v2.31 by American Megatrends
| [    0.000000] efi:  ACPI=0x7bf77000  ACPI 2.0=0x7bf77014  SMBIOS=0x7c928190 
| [    0.000000] efi: No EFI runtime due to 32/64-bit mismatch with kernel
| [    0.000000] efi: mem00: type=7, attr=0xf, range=[0x0000000000000000-0x000000000008f000) (0MB)
| [    0.000000] efi: mem01: type=10, attr=0xf, range=[0x000000000008f000-0x0000000000090000) (0MB)
| [    0.000000] efi: mem02: type=7, attr=0xf, range=[0x0000000000090000-0x000000000009e000) (0MB)
| [    0.000000] efi: mem03: type=0, attr=0xf, range=[0x000000000009e000-0x00000000000a0000) (0MB)
| [    0.000000] efi: mem04: type=2, attr=0xf, range=[0x0000000000100000-0x0000000001015000) (15MB)
| [    0.000000] efi: mem05: type=7, attr=0xf, range=[0x0000000001015000-0x0000000001200000) (1MB)
| [    0.000000] efi: mem06: type=2, attr=0xf, range=[0x0000000001200000-0x0000000002115000) (15MB)
| [    0.000000] efi: mem07: type=7, attr=0xf, range=[0x0000000002115000-0x0000000020000000) (478MB)
| [    0.000000] efi: mem08: type=0, attr=0xf, range=[0x0000000020000000-0x0000000020200000) (2MB)
| [    0.000000] efi: mem09: type=7, attr=0xf, range=[0x0000000020200000-0x0000000036256000) (352MB)
| [    0.000000] efi: mem10: type=2, attr=0xf, range=[0x0000000036256000-0x0000000037123000) (14MB)
| [    0.000000] efi: mem11: type=7, attr=0xf, range=[0x0000000037123000-0x000000005a6b6000) (565MB)
| [    0.000000] efi: mem12: type=2, attr=0xf, range=[0x000000005a6b6000-0x0000000078c00000) (485MB)
| [    0.000000] efi: mem13: type=4, attr=0xf, range=[0x0000000078c00000-0x0000000078c20000) (0MB)
| [    0.000000] efi: mem14: type=7, attr=0xf, range=[0x0000000078c20000-0x0000000079449000) (8MB)
| [    0.000000] efi: mem15: type=1, attr=0xf, range=[0x0000000079449000-0x00000000794eb000) (0MB)
| [    0.000000] efi: mem16: type=4, attr=0xf, range=[0x00000000794eb000-0x000000007b914000) (36MB)
| [    0.000000] efi: mem17: type=7, attr=0xf, range=[0x000000007b914000-0x000000007bd11000) (3MB)
| [    0.000000] efi: mem18: type=2, attr=0xf, range=[0x000000007bd11000-0x000000007bd1b000) (0MB)
| [    0.000000] efi: mem19: type=3, attr=0xf, range=[0x000000007bd1b000-0x000000007bf14000) (1MB)
| [    0.000000] efi: mem20: type=0, attr=0xf, range=[0x000000007bf14000-0x000000007bf44000) (0MB)
| [    0.000000] efi: mem21: type=9, attr=0xf, range=[0x000000007bf44000-0x000000007bf78000) (0MB)
| [    0.000000] efi: mem22: type=10, attr=0xf, range=[0x000000007bf78000-0x000000007c041000) (0MB)
| [    0.000000] efi: mem23: type=6, attr=0x800000000000000f, range=[0x000000007c041000-0x000000007c929000) (8MB)
| [    0.000000] efi: mem24: type=5, attr=0x800000000000000f, range=[0x000000007c929000-0x000000007c985000) (0MB)
| [    0.000000] efi: mem25: type=4, attr=0xf, range=[0x000000007c985000-0x000000007cbf6000) (2MB)
| [    0.000000] efi: mem26: type=2, attr=0xf, range=[0x000000007cbf6000-0x000000007cbf7000) (0MB)
| [    0.000000] efi: mem27: type=4, attr=0xf, range=[0x000000007cbf7000-0x000000007cc00000) (0MB)
| [    0.000000] efi: mem28: type=11, attr=0x8000000000000001, range=[0x00000000e00f8000-0x00000000e00f9000) (0MB)
| [    0.000000] efi: mem29: type=11, attr=0x8000000000000001, range=[0x00000000fed01000-0x00000000fed02000) (0MB)
| [    0.000000] efi: mem30: type=11, attr=0x8000000000000001, range=[0x00000000fed08000-0x00000000fed09000) (0MB)
| [    0.000000] efi: mem31: type=11, attr=0x8000000000000001, range=[0x00000000ffb00000-0x0000000100000000) (5MB)
| [    0.000000] ACPI: UEFI 0x000000007BFF4000 000042 (v01 _ASUS_ Notebook 00000000      00000000)
| [    0.000000] efi: efi: Setup done, disabling due to 32/64-bit mismatch
| [    0.442486] Switched to clocksource refined-jiffies

I've managed to get a bootable system by creating an EFI image by hand,
using the instructions provided in [1] (but using grub-mkimage from sid)
and copying grub.cfg, the kernel image and the initrd to the EFI
partition.

[1] <https://github.com/lopaka/instructions/blob/master/ubuntu-14.10-install-asus-x205ta.md>



More information about the Pkg-grub-devel mailing list