Re: [PATCH] retrieve VBE EDID/DDC info independent of used video mode



H. Peter Anvin wrote:
Antonino A. Daplas wrote:
On Wed, 2007-08-01 at 09:54 +0800, Antonino A. Daplas wrote:
On Tue, 2007-07-31 at 21:17 -0400, Daniel Drake wrote:
Zwane Mwaikambo wrote:
Sorry if this has been hashed out before, but could you point me
towards the gentoo bugzilla entry? I'm trying to understand how
your setup broke. Which version VBE does your system have?
Here's the bug:
http://bugs.gentoo.org/show_bug.cgi?id=181067

Looking at the dmesg output of the working and failing kernel, it does
seem that there's no EDID block available in the failing kernel.


BTW, I looked at the above bug report, it seems his last dmesg does not
have fbcon enabled. Make sure that CONFIG_FRAMEBUFFER_CONSOLE=y before
doing more tests (the problem of lack of the EDID block in the failing
kernel still applies).


Okay, I'm royally puzzled why that would be. I've gone over the code
quite a few times, and I do not see any way (other than VESA < 2.0) that
could cause that.

I look forward to getting the debug output; depending on what it is we
might have to get some debugging output from the setup code.

We can printf in the new setup code, although obviously that requires
leaving the screen in text mode. However, EDID information should still
be available.


How about this patch?

Tony
---

Subject: video setup: Fix VBE DDC reading

Add memory operand constraint and write-only modifier to the inline
assembly to effect the writing of the EDID block to boot_params.edid_info.

Signed-off-by: Antonino Daplas <adaplas@xxxxxxxxx>
---

arch/i386/boot/video-vesa.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/i386/boot/video-vesa.c b/arch/i386/boot/video-vesa.c
index e6aa9eb..f1bc71e 100644
--- a/arch/i386/boot/video-vesa.c
+++ b/arch/i386/boot/video-vesa.c
@@ -268,7 +268,7 @@ #ifdef CONFIG_FIRMWARE_EDID
dx = 0; /* EDID block number */
di =(size_t) &boot_params.edid_info; /* (ES:)Pointer to block */
asm(INT10
- : "+a" (ax), "+b" (bx), "+d" (dx)
+ : "+a" (ax), "+b" (bx), "+d" (dx), "=m" (boot_params.edid_info)
: "c" (cx), "D" (di)
: "esi");
#endif /* CONFIG_FIRMWARE_EDID */

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: [PATCH] retrieve VBE EDID/DDC info independent of used video mode
    ... Looking at the dmesg output of the working and failing kernel, ... seem that there's no EDID block available in the failing kernel. ... I look forward to getting the debug output; depending on what it is we might have to get some debugging output from the setup code. ...
    (Linux-Kernel)
  • [RFC patch 01/32] x86: Add platform_setup infrastructure
    ... x86_quirks or paravirt ops. ... Some of those setup hooks are pretty ... paravirt guests are just a hardware platform in the setup code, ...
    (Linux-Kernel)
  • Re: 2.6.23-rc1: no setup signature found...
    ... Use the new x86 setup code for i386 ... This patch hooks the new x86 setup code into the Makefile machinery. ... some old version of grub out there which did the "load four sectors" ...
    (Linux-Kernel)
  • Re: 2.6.23-rc1: no setup signature found...
    ... grub is "No setup signature found...," which, imho, comes from ... Anyone can give a quick clue, or should I do a bisect? ... The message means that the setup code wasn't loaded ... What distro/version of grub are you running? ...
    (Linux-Kernel)