Mark Kettenis
2016-02-02 20:32:13 UTC
Date: Tue, 2 Feb 2016 14:14:04 -0500
Best not to drop the list. There are other developers that might wantto chime in.
Date: Tue, 2 Feb 2016 02:09:08 -0500
Testing UEFI booting. Willing to test patches and debug.
1) Encountered screen corruption immediately after EFIBOOT.
http://imgur.com/mXURlgV
Looks like the framebuffer configuration is not correctly passed toTesting UEFI booting. Willing to test patches and debug.
1) Encountered screen corruption immediately after EFIBOOT.
http://imgur.com/mXURlgV
the kernel isn't quite right. Or the kernel is misinterpreting that
information.
The code in sys/arch/amd64/stand/efiboot/efiboot.c:efi_makebootargs()
queries UEFI for the framebuffer layout. It would help if you could
print that information. This requires building and installing a new
EFIBOOT bootloader.
It would also be useful to know the resolution of your screen.
Thanks,
Mark
ei.config_acpi: 0x66bfe014
ei.config_smbios: 0x66abef98
ei.fb_addr: 0x80000000
ei.fb_size: 0x420000
ei.fb_width: 1024
ei.fb_height: 768
ei.fb_pixpsl: 1024
perhaps there is something subtly wrong with our bootloader code.
--- efiboot.c.orig Tue Feb 2 13:47:13 2016
+++ efiboot.c Tue Feb 2 13:50:18 2016
@@ -509,6 +509,7 @@
ST->ConfigurationTable[i].VendorTable;
}
+ printf("acpi:0x%x smbios:0x%x ", ei.config_acpi, ei.config_smbios);
/*
* Frame buffer
*/
@@ -561,6 +562,8 @@
ei.fb_height = gopi->VerticalResolution;
ei.fb_width = gopi->HorizontalResolution;
ei.fb_pixpsl = gopi->PixelsPerScanLine;
+ printf("addr:0x%x sz:0x%x %ux%u pixpsl:%u", ei.fb_addr, ei.fb_size,
ei.fb_width, ei.fb_height, ei.fb_pixpsl);
+
}
addbootarg(BOOTARG_EFIINFO, sizeof(ei), &ei);
Mode 0: 80 x 25
Current Mode = 0
Region 0: type 1 at 0x0 for 440KB
Region 1: type 4 at 0x6e000 for 8KB
Region 2: type 1 at 0x70000 for 88KB
Region 3: type 2 at 0x86000 for 232KB
Region 4: type 1 at 0x100000 for 1525032KB
Region 5: type 2 at 0x5d24a000 for 6148KB
Region 6: type 1 at 0x5d84b000 for 192KB
Region 7: type 2 at 0x5d87b000 for 24KB
Region 8: type 1 at 0x5d881000 for 84KB
Region 9: type 2 at 0x5d896000 for 60KB
Region 10 type 1 at 0x5d8a5000 for 141416KB
Region 11 type 2 at 0x662bf000 for 8192KB
Region 12 type 4 at 0x66abf000 for 1024KB
Region 13 type 3 at 0x66bbf000 for 256KB
Region 14 type 1 at 0x66bff000 for 4KB
Region 15 type 2 at 0x66c00000 for 397312KB
Region 16 type 2 at 0xf8000000 for 65536KB
Region 17 type 2 at 0xfec00000 for 4KB
Region 18 type 2 at 0xfec10000 for 4KB
Region 19 type 2 at 0xfed80000 for 4KB
Region 20 type 2 at 0xfee00000 for 4KB
Region 21 type 2 at 0xffc00000 for 4096KB
low ram: 768KB High ram: 2079744KB
Total free memory: 1667256KB
+++ efiboot.c Tue Feb 2 13:50:18 2016
@@ -509,6 +509,7 @@
ST->ConfigurationTable[i].VendorTable;
}
+ printf("acpi:0x%x smbios:0x%x ", ei.config_acpi, ei.config_smbios);
/*
* Frame buffer
*/
@@ -561,6 +562,8 @@
ei.fb_height = gopi->VerticalResolution;
ei.fb_width = gopi->HorizontalResolution;
ei.fb_pixpsl = gopi->PixelsPerScanLine;
+ printf("addr:0x%x sz:0x%x %ux%u pixpsl:%u", ei.fb_addr, ei.fb_size,
ei.fb_width, ei.fb_height, ei.fb_pixpsl);
+
}
addbootarg(BOOTARG_EFIINFO, sizeof(ei), &ei);
Mode 0: 80 x 25
Current Mode = 0
Region 0: type 1 at 0x0 for 440KB
Region 1: type 4 at 0x6e000 for 8KB
Region 2: type 1 at 0x70000 for 88KB
Region 3: type 2 at 0x86000 for 232KB
Region 4: type 1 at 0x100000 for 1525032KB
Region 5: type 2 at 0x5d24a000 for 6148KB
Region 6: type 1 at 0x5d84b000 for 192KB
Region 7: type 2 at 0x5d87b000 for 24KB
Region 8: type 1 at 0x5d881000 for 84KB
Region 9: type 2 at 0x5d896000 for 60KB
Region 10 type 1 at 0x5d8a5000 for 141416KB
Region 11 type 2 at 0x662bf000 for 8192KB
Region 12 type 4 at 0x66abf000 for 1024KB
Region 13 type 3 at 0x66bbf000 for 256KB
Region 14 type 1 at 0x66bff000 for 4KB
Region 15 type 2 at 0x66c00000 for 397312KB
Region 16 type 2 at 0xf8000000 for 65536KB
Region 17 type 2 at 0xfec00000 for 4KB
Region 18 type 2 at 0xfec10000 for 4KB
Region 19 type 2 at 0xfed80000 for 4KB
Region 20 type 2 at 0xfee00000 for 4KB
Region 21 type 2 at 0xffc00000 for 4096KB
low ram: 768KB High ram: 2079744KB
Total free memory: 1667256KB