[mythtv-users] SOLVED: Sharp LC-42D64U and xorg

Erik Sejr esejr at wildroseinternet.ca
Wed Sep 17 03:21:13 UTC 2008


On Mon, Sep 15, 2008 at 10:40 AM, Erik Sejr <esejr at wildroseinternet.ca
<mailto:esejr at wildroseinternet.ca>> wrote:
>
>     Hi,
>     I have had MythTV up and running at 1080p on the older sharp 42"
>     LCD but I
>     recently moved and purchased a new LC-42D64U since I liked my old
>     unit.
>     When I first booted up my Myth machine connected to this new TV it
>     seemed
>     to just lock up. Upon closer inspection I found I was able to boot
>     into
>     text mode ok, the problem only seemed to happen when the system
>     tried to
>     start the X server. It seems when X tries to initialize the
>     display it just
>     locks up. If I try to start X at 1920x1080 I get a black screen on the
>     display and the system doesn't appear to load X.
>     Control-Alt-Backspace does
>     not get me back to the prompt - I have to reboot. If I start it at
>     a lower
>     resolution (say 640x480) I get the same thing on the screen
>     (nothing) but I
>     CAN use control-alt-backspace to kill X and return to the prompt.
>     Also,
>     based on the hard disk activity and messages after killing the
>     server, X
>     appears to load normally at this resolution but the display
>     remains black.
>
>     I read the EDID information from the using monitor-edid (This
>     machine is
>     running Fedora 7):
>
>     Name: SHARP HDMI
>     EISA ID: SHP0ffb
>     Screen size: 82.0 cm x 46.0 cm (37.02 inches, aspect ratio 16/9 =
>     1.78)
>     Gamma: 2.2
>     Digital signal
>     Max video bandwidth: 170 MHz
>
>            HorizSync 15-75
>            VertRefresh 55-76
>
>            # Monitor preferred modeline (60.0 Hz vsync, 67.5 kHz
>     hsync, ratio
>     16/9)
>            ModeLine "1920x1080" 148.5 1920 2008 2052 2200 1080 1084
>     1089 1125
>     +hsync +vsync
>
>            # Monitor preferred modeline (60.0 Hz vsync, 47.7 kHz
>     hsync, ratio
>     16/9)
>            ModeLine "1360x768" 85.5 1360 1424 1536 1792 768 771 777
>     795 +hsync
>     +vsync
>
>     Here's the pertinent sections of xorg.conf:
>
>     Section "Screen"
>
>        Identifier     "Screen0"
>        Device         "Videocard0"
>        Monitor        "Monitor1"
>        DefaultDepth    24
>        Option         "Connected Monitor" "DFP"
>        Option         "ExactModeTimingsDVI" "True"
>        SubSection     "Display"
>            Viewport    0 0
>            Depth       24
>            Modes      "1920x1080"
>        EndSubSection
>     EndSection
>
>     Section "Monitor"
>        Identifier     "Monitor1"
>        VendorName     "Sharp"
>        ModelName      "42 Inch 1080p LCD HDTV"
>        HorizSync       15.0 - 75.0
>        VertRefresh     55.0 - 76.0
>        ModeLine       "1920x1080" 148.5 1920 2008 2052 2200 1080 1084 1089
>     1125 +hsync +vsync
>        Option         "DPMS" "True"
>     EndSection
>
>     Section "Device"
>        Identifier     "Videocard0"
>        Driver         "nvidia"
>        VendorName     "Videocard vendor"
>        BoardName      "nVidia Corporation C51 PCI Express Bridge"
>     EndSection
>
>     The video card is a Geforce 6150, Nvidia driver is version
>     173.14.05. <http://173.14.05.> The
>     monitor is connected via a DVI->HDMI cable. I ran startx -- -verbose 5
>     -logging 5. The log is too big to post and will make a mess of this
>     message, but here are the interesting parts that I believe may be
>     the cause
>     of this problem:
>
>     (II) NVIDIA(GPU-0): No display devices connected; falling back to:
>     CRT-0
>     (WW) NVIDIA(GPU-0): Unable to read EDID for display device CRT-0
>     (II) NVIDIA(0): NVIDIA GPU GeForce 6150 (C51) at PCI:0:5:0 (GPU-0)
>     (--) NVIDIA(0): Memory: 262144 kBytes
>     (--) NVIDIA(0): VideoBIOS: 05.51.22.33.07
>     (--) NVIDIA(0): Interlaced video modes are supported on this GPU
>     (--) NVIDIA(0): Connected display device(s) on GeForce 6150 at
>     PCI:0:5:0:
>     (--) NVIDIA(0):     CRT-0
>     (--) NVIDIA(0): CRT-0: 350.0 MHz maximum pixel clock
>     (II) NVIDIA(0): Assigned Display Device: CRT-0
>     (II) NVIDIA(0): Validated modes:
>     (II) NVIDIA(0):     "800x600"
>     (II) NVIDIA(0): Virtual screen size determined to be 800 x 600
>     (WW) NVIDIA(0): Unable to get display device CRT-0's EDID; cannot
>     compute
>     DPI
>     (WW) NVIDIA(0):     from CRT-0's EDID.
>     (==) NVIDIA(0): DPI set to (75, 75); computed from built-in default
>     (==) NVIDIA(0): Enabling 32-bit ARGB GLX visuals.
>     (--) Depth 24 pixmap format is 32 bpp
>
>     Why can't it seem to find the display even when it is plugged in and
>     operating in text mode? Any thoughts on how to get around this?
>     Has anyone
>     got Myth working on this TV? If so I'd love to have a look at your
>     xorg.conf.
>
>     Your help is greatly appreciated.
>
>     Regards,
>     Erik
>
I managed to get this working, for the information of the list and
future users of this TV who may have this problem I will post the
solution here.

This problem was caused by the Nvidia drivers failing to correctly read
the EDID information from the TV. Even the most recent drivers
apparently have this bug. Through my research I've found that it seems
to be fairly rare and only occurs with certain video card/TV
combinations (apparently mine is one of them). Due to the inability to
read the EDID the driver falls back to settings that don't work with
this TV since this, like most HD monitors are pretty picky about the
signal and timings..

The solution was to work around the driver bug by manually dumping the
EDID from the set to a file. I did this with a little program called
Phoenix EDID designer. It is a windows program, so I had to plug the TV
into the DVI port on my desktop machine running windows and read the
EDID from the registry and save it as a "raw 128-byte format" file that
the driver supports. There may be a Linux program that can do this, but
I was unable to find one.

Then I copied the EDID file to the MythTV machine via samba and
configured the X server as follows:

Section "Monitor"
        Identifier   "Monitor1"
        VendorName   "Sharp"
        ModelName    "42 Inch 1080p LCD HDTV"
        HorizSync    15-75
        VertRefresh  55-76
        Modeline     "1920x1080" 148.500 1920 2008 2052 2200 1080 1084
1089 1125 +hsync +vsync
        Option       "DPMS" "True
EndSection

Section "Device"
        Identifier  "Videocard0"
        Driver      "nvidia"
        Option      "UseDisplayDevice" "DFP-0"
        Option      "AddARGBGLXVisuals" "true"
        Option      "CustomEDID" "DFP-0:/home/harpax/sharp.raw"
        Option      "Connected Monitor" "DFP"
        VendorName  "Videocard vendor"
        BoardName   "nVidia Corporation C51 PCI Express Bridge"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Videocard0"
        Monitor    "Monitor1"
        DefaultDepth     24
        Option "ExactModeTimingsDVI" "True"
        SubSection "Display"
                Viewport 0 0
                Depth 24
                Modes "1920x1080"
        EndSubSection
EndSection

The log now looks like this:

(II) Setting vga for screen 0.
(II) Enabling PCI device
(**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
(==) NVIDIA(0): RGB weight 888
(==) NVIDIA(0): Default visual is TrueColor
(==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
(**) NVIDIA(0): Option "ConnectedMonitor" "DFP"
(**) NVIDIA(0): Option "CustomEDID" "DFP-0:/home/harpax/sharp.raw"
(**) NVIDIA(0): Option "ExactModeTimingsDVI" "True"
(**) NVIDIA(0): Option "UseDisplayDevice" "DFP-0"
(**) NVIDIA(0): Option "AddARGBGLXVisuals" "true"
(**) NVIDIA(0): Enabling RENDER acceleration
(**) NVIDIA(0): ConnectedMonitor string: "DFP"
(II) NVIDIA(0): Support for GLX with the Damage and Composite X
extensions is
(II) NVIDIA(0):     enabled.
(II) NVIDIA(0): NVIDIA GPU GeForce 6150 (C51) at PCI:0:5:0 (GPU-0)
(--) NVIDIA(0): Memory: 262144 kBytes
(--) NVIDIA(0): VideoBIOS: 05.51.22.33.07
(--) NVIDIA(0): Interlaced video modes are supported on this GPU
(--) NVIDIA(0): Connected display device(s) on GeForce 6150 at PCI:0:5:0:
(--) NVIDIA(0):     SHARP HDMI (DFP-0)
(--) NVIDIA(0): SHARP HDMI (DFP-0): 310.0 MHz maximum pixel clock
(--) NVIDIA(0): SHARP HDMI (DFP-0): Internal Single Link TMDS
(II) NVIDIA(0): Assigned Display Device: DFP-0
(II) NVIDIA(0): Validated modes:
(II) NVIDIA(0):     "1920x1080"
(II) NVIDIA(0): Virtual screen size determined to be 1920 x 1080
(--) NVIDIA(0): DPI set to (59, 59); computed from "UseEdidDpi" X config
(--) NVIDIA(0):     option
(**) NVIDIA(0): Enabling 32-bit ARGB GLX visuals.
(--) Depth 24 pixmap format is 32 bpp

And everything works perfectly!

Regards,
Erik


More information about the mythtv-users mailing list