Re: Intel graphics drm issue?

From: Mark Hounschell
Date: Sun Oct 14 2012 - 06:34:49 EST


On 10/14/2012 04:41 AM, Bruno PrÃmont wrote:
Hi Mark,

On Sat, 13 October 2012 Mark Hounschell <dmarkh@xxxxxxxxxx> wrote:
On 10/13/2012 02:57 PM, Mark Hounschell wrote:
On 10/12/2012 05:14 PM, Bruno PrÃmont wrote:
TV - LG 42lb9df
PC - intel DH77DF motherboard

I have another AMD based PC here with an nvidia card and HDMI port. Using
the nvidia driver, it boots up with no output to the tv until X starts.
Once X starts I get my kdm login screen. All is well except the resolution
is 800x600 and I have no VTs. I suspect if I had a properly configured
xorg.conf file, my resolution would be what I defined in it and work.

Using the nouveau driver, I get nothing but "no signal" on the tv. Just
like the the intel box, except no EDID messages in the log file. I've
attached a dmesg outputs for each config.

Back on the Intel machine. I boot up with a normal monitor connected to the
DVI port of the PC. Then at the kdm login screen, I disconnect the DVI
cable from the PC and connect the TV to the PCs DVI port using a DVI/HDMI
adapter. I get a beautiful 1600x1200 resolution screen on the TV. This does
not happen using the PC HDMI port.


One other thing I failed to mention. If i connect the TV HDMI to the Intel
boards DVI port using the adapter, at power up I get all the BIOS messages
and can enter the BIOS and all is fine. But when I let it boot all the way
up like this, I get nothing but "no signal" after leaving BIOS mode.
Turning the tv on/off, cable plug/unplug does not help.

Did you also try the DVI-HDMI adapter cable with the nVidia card?


No, I didn't try that. I certainly can though.

But will all that info I would say the issues is at the side of you TV that
just does not provide (valid) EDID information, thus the driver does not know
what the display supports.

The 1600x1200 when switching DVI displays on Intel would seem like the driver
just kept on display what it had, not reconfiguring anything.


Right, that's what I thought was happening. But at least it tells me that the tv can in fact "probably" operate in whatever resolution I force it to. Is there no way, like in the past we had to do, to just not care what the tv/monitor says or does, and just use a fixed resolution?

For the 800x600 of nVidia, that kind of the default fallback when display
capabilities are unknown as any remotely recent display should alt least be
capable to understand that.


Yep, that's what I figured here too. nvidia provides a "default/fallback" so you can at least access the desktop. Seems a reasonable thing, no?


Your best solution is probably to write an EDID blob (or reuse one you find
somewhere) that provides at least one mode matching your TV's native mode
(probably full-HD).

Google suggested the following document:
http://www.jordansmanuals.com/ServiceManuals%5CLG%5CTV%5CLCD%5C42LB9DF%5C42LB9DF%20Service%20Manual.pdf
which on page 13/14 shows the full EDID blob for the various HDMI outputs of the
TV. You may want to read that document, convert the EDID blobs to 512 bytes binary
files and hell DRM core to use the right one via module/kernel cmdline option:

drm_kms_helper.edid_firmware=edid/lg42lb9df.edid
or
modprobe drm-kms-helper edid_firmware=edid/lg42lb9df.edid

where
/lib/firmware/edid/lg42lb9df.edid
is the 512-bytes EDID blob created according to data from above manual.
(note, that will only work for intel, radeon and nouveau drivers but will
not work for closed drivers of AMD/nVidia)


Thanks for this tip. I will investigate this asap.

PS: If you didn't already do so, try all of the HDMI connectors or the TV and
if available, also two distinct HDMI cables of different brand.

Did all that, first thing.

Thanks
Mark



--
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/