Hi,
On Fri, 16 Jun 2017 09:29:50 +0500
"dmitry.sensei" <[email protected]> wrote:
> FrameBufferBase = 0xc0000000
> FrameBufferSize = 0x40000000
> VerticalResolution = 768
> HorizontalResolution = 1366
> PixelsPerScanLine = 1366
> PixelFormat = 1
> RedMask = 0x0
> GreenMask = 0x0
> BlueMask = 0x0
> ReservedMask = 0x0
Thanks,
Can you test the diff for the kernel?
diff --git a/sys/arch/amd64/amd64/efifb.c b/sys/arch/amd64/amd64/efifb.c
index 2418354beaf..3e73fe5fafe 100644
--- a/sys/arch/amd64/amd64/efifb.c
+++ b/sys/arch/amd64/amd64/efifb.c
@@ -361,6 +361,7 @@ int
efifb_cnattach(void)
{
struct efifb *fb = &efifb_console;
+ int pixpsl;
if (bios_efiinfo == NULL || bios_efiinfo->fb_addr == 0)
return (-1);
@@ -373,8 +374,8 @@ efifb_cnattach(void)
fb->depth = max(fb->depth, fls(bios_efiinfo->fb_green_mask));
fb->depth = max(fb->depth, fls(bios_efiinfo->fb_blue_mask));
fb->depth = max(fb->depth, fls(bios_efiinfo->fb_reserved_mask));
- fb->psize = bios_efiinfo->fb_height *
- bios_efiinfo->fb_pixpsl * (fb->depth / 8);
+ pixpsl = (bios_efiinfo->fb_pixpsl + 7) & 7; /* align 8 bytes */
+ fb->psize = bios_efiinfo->fb_height * pixpsl * (fb->depth / 8);
efifb_rasops_init();