[Bug 202309] [uefi] smashed screen on HP Probook 430 G1 with UEFI

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Sep 3 06:30:05 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202309

Oliver Pinter <op at freebsd.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |Ray"@FreeBSD.org,
                   |                            |dumbbell at FreeBSD.org,
                   |                            |marcel at FreeBSD.org
           See Also|                            |https://bugs.freebsd.org/bu
                   |                            |gzilla/show_bug.cgi?id=1940
                   |                            |63
                 CC|Ray"@FreeBSD.org            |ray at FreeBSD.org

Marcel Moolenaar <marcel at FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|New                         |Open
                 CC|ray at FreeBSD.org             |
           Assignee|freebsd-bugs at FreeBSD.org    |marcel at FreeBSD.org
             Status|Open                        |In Progress

Douglas King <douglasking215 at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |douglasking215 at gmail.com

Ed Maste <emaste at freebsd.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |emaste at freebsd.org

Marcel Moolenaar <marcel at FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|marcel at FreeBSD.org          |freebsd-bugs at FreeBSD.org

Vaclav Mocek <next.little.owl at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |next.little.owl at gmail.com

Alexey Dokuchaev <danfe at FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |danfe at FreeBSD.org

--- Comment #1 from Marcel Moolenaar <marcel at FreeBSD.org> ---
If I can read the screen correctly, it looks like the resolution is 1366x768,
with a stride of 1366 and a color depth of 32 bits per pixel (or 4 bytes per
pixel).

The console output seems to be using a stride that's just wrong. Since the
stride is coming from UEFI, it's hard to think of a reason why the kernel would
do this.

Have you tried updating the firmware?

--- Comment #2 from Oliver Pinter <op at freebsd.org> ---
Yes, today I updated to latest bios from HP, but the issue still exists.

How could I extract these information without serial port or change the
settings in loader or kernel?

--- Comment #3 from Marcel Moolenaar <marcel at FreeBSD.org> ---
Created attachment 160509
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=160509&action=edit
loader with 'gop' command

--- Comment #4 from Marcel Moolenaar <marcel at FreeBSD.org> ---
(In reply to Oliver Pinter from comment #2)

I committed revision 287299 (-current), that adds a 'gop' command to the
loader. I attached a pre-compiled EFI loader with this command to this PR.

Can you run 'gop get' and 'gop list' and add the output to this PR?

Also: can you try different modes (if possible) and see if that makes a
difference?

--- Comment #5 from Douglas King <douglasking215 at gmail.com> ---
Created attachment 162834
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=162834&action=edit
BIOS information

dmidecode output

--- Comment #6 from Douglas King <douglasking215 at gmail.com> ---
Created attachment 162835
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=162835&action=edit
Dmidecode output

--- Comment #7 from Douglas King <douglasking215 at gmail.com> ---
I am having the same issue trying to install on an HP Elitebook 2540p.
The error happens at the same point shown in the video except the whole output
is "squished" in the top 5-10% of the disply.
The display changes with user interaction but none of it is viewable.
The text from the boot process remains unaffected. 
Booting without EFI freezes slightly earlier in the boot.

'gop' only has one mode listed.

--- Comment #8 from Oliver Pinter <op at freebsd.org> ---
The issue still exists and the same on most recent stable from 2016.01.18.

--- Comment #9 from Vaclav Mocek <next.little.owl at gmail.com> ---
I have the same issue with an older Lenovo Ideapad S205, where during the boot
the screen is garbled. I tested the snapshot 10.2-r293802 and 11-r293801, both
are failing. I had the same issue with Linux three years back - the video mode
was not set correctly even in Grub2 and workaround was to use the option
gfxmode, which overwrites the detected values. So, I suspect that the UEFI GOP
provides partly incorrect information and the efifb is not set correctly.

Unfortunately, I have no clue how to debug these thing on FreeBSD, any hint
would be welcomed.

--- Comment #10 from Vaclav Mocek <next.little.owl at gmail.com> ---
I have the same issue with an older Lenovo Ideapad S205, where during the boot
the screen is garbled. I tested the snapshot 10.2-r293802 and 11-r293801, both
are failing. I had the same issue with Linux three years back - the video mode
was not set correctly even in Grub2 and workaround was to use the option
gfxmode, which overwrites the detected values. So, I suspect that the UEFI GOP
provides partly incorrect information and the efifb is not set correctly.

Unfortunately, I have no clue how to debug these thing on FreeBSD, any hint
would be welcomed.

--- Comment #11 from Alexey Dokuchaev <danfe at FreeBSD.org> ---
Exactly the same problem is observed on HP ProBook 645 G1 against recent
-CURRENT (r304729).  In CSM mode, "gop get" returns only one mode, with much
larger frame buffer size compared to native (non-CSM) boot for some reason:

> OK gop get
> mode 0: 1024x768x32, stride=1024
>     frame buffer: address=c0000000, size=1000000
>     color mask: R=00ff0000, G=0000ff00, B=000000ff
In CSM mode, laptop initializes itself with 1024x768 screen resolution and
FreeBSD boots fine.

Now, in native (non-CSM) mode, four modes are reported:

> OK gop get
> mode 0: 1366x768x32, stride=1366
>     frame buffer: address=c0000000, size=420000
>     color mask: R=00ff0000, G=0000ff00, B=000000ff
> 
> OK gop list
> mode 0: 1366x768x32, stride=1366
> mode 1: 800x600x32, stride=800
> mode 2: 1024x768x32, stride=1024
> mode 3: 640x480x32, stride=640
However, only modes 2 and 3 allow to have normal (non-smashed) console. 
Booting in other modes looks exactly like on the video clip attached earlier.

--- Comment #12 from Alexey Dokuchaev <danfe at FreeBSD.org> ---
Tonight I've played with it a bit more.

1. I've discovered that in Linux Matthew Garrett had patched EFI framebuffer
size calculation instead of trusting what firmware provides back in 2012
(https://lkml.org/lkml/2012/7/27/407).  I've made a similar change to our code,
but it didn't fix the problem:

> efifb->fb_size = efifb->fb_height * efifb->fb_stride * 4;
Side note: Linux is setting their si->lfb_linelength = pixels_per_scan_line *
4; while we use it as is: efifb->fb_stride = info->PixelsPerScanLine; I wonder
why...

2. I've tried booting rather old ubuntu-11.04-desktop-amd64.iso in native UEFI
mode and got very similar screen distortion in GRUB; it didn't boot further and
I don't have a more recent Ubuntu version at my hands at the moment.

3. OS X Mavericks on HP Probook/Elitebook laptops guide
(http://www.insanelymac.com/forum/topic/293842-guide-mavericks-on-hp-probookelitebook-laptops-with-clover-uefi-bootloader/)
also mentions this problem under "Known issues" as item number one: "Distorted
bootscreen with 7-series laptops using 1366x768 display + UEFI native (without
CSM) setting. Changing Clover resolution to 1024x768 can fix it."

At this point I tend to believe that this is a problem on HP side, and I'm not
sure if it can be efficiently mitigated other than sticking to 1024x768 (mode
2).  Any further ideas are certainly welcome.

--- Comment #13 from Kubilay Kocak <koobs at FreeBSD.org> ---
Test comment

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list