LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   xorg and framebuffer issues with high resolutions (https://www.linuxquestions.org/questions/linux-software-2/xorg-and-framebuffer-issues-with-high-resolutions-789583/)

slightlystoopid 02-16-2010 07:54 PM

xorg and framebuffer issues with high resolutions
 
So I got a nice shiny new 23" 1080p Asus VH236H monitor. Unfortunately, it's not turning out to be as great I was hoping, possibly due to the Geforce FX5200 bios, but I'm not sure. I think these issues are probably related, so I put them in the same thread.

First, the console: vesafb, uvesafb, and nvidiafb all fail at delivering a useable framebuffer greater than 1280x1024. vesafb flat out denies anything beyond 795 (0x31B). uvesafb and nvidiafb will fall back on 1280x1024@75Hz, which causes text to flash all over the screen and requires a reboot to remedy. It doesn't matter if I feed fbset the exact timings X uses, they'll still fallback on 1280x1024. hwinfo has this to say about hardware support:
Code:

02: None 00.0: 11001 VESA Framebuffer
  [Created at bios.459]
  Unique ID: rdCR.2BE3cN5U3aB
  Hardware Class: framebuffer
  Model: "NVIDIA NV34 Board - p162-1n"
  Vendor: "NVIDIA Corporation"
  Device: "NV34 Board - p162-1n"
  SubVendor: "NVIDIA"
  SubDevice:
  Revision: "Chip Rev"
  Memory Size: 128 MB
  Memory Range: 0xe8000000-0xefffffff (rw)
  Mode 0x0300: 640x400 (+640), 8 bits
  Mode 0x0301: 640x480 (+640), 8 bits
  Mode 0x0303: 800x600 (+800), 8 bits
  Mode 0x0305: 1024x768 (+1024), 8 bits
  Mode 0x0307: 1280x1024 (+1280), 8 bits
  Mode 0x030e: 320x200 (+640), 16 bits
  Mode 0x030f: 320x200 (+1280), 24 bits
  Mode 0x0311: 640x480 (+1280), 16 bits
  Mode 0x0312: 640x480 (+2560), 24 bits
  Mode 0x0314: 800x600 (+1600), 16 bits
  Mode 0x0315: 800x600 (+3200), 24 bits
  Mode 0x0317: 1024x768 (+2048), 16 bits
  Mode 0x0318: 1024x768 (+4096), 24 bits
  Mode 0x031a: 1280x1024 (+2560), 16 bits
  Mode 0x031b: 1280x1024 (+5120), 24 bits
  Mode 0x0330: 320x200 (+320), 8 bits
  Mode 0x0331: 320x400 (+320), 8 bits
  Mode 0x0332: 320x400 (+640), 16 bits
  Mode 0x0333: 320x400 (+1280), 24 bits
  Mode 0x0334: 320x240 (+320), 8 bits
  Mode 0x0335: 320x240 (+640), 16 bits
  Mode 0x0336: 320x240 (+1280), 24 bits
  Mode 0x033d: 640x400 (+1280), 16 bits
  Mode 0x033e: 640x400 (+2560), 24 bits
  Mode 0x0347: 1400x1050 (+1400), 8 bits
  Mode 0x0348: 1400x1050 (+2800), 16 bits
  Config Status: cfg=new, avail=yes, need=no, active=unknown

03: None 00.1: 10002 LCD Monitor
  [Created at monitor.95]
  Unique ID: jyhG.zs6hrn8sbx2
  Hardware Class: monitor
  Model: "ASUS VH236H"
  Vendor: ACI
  Device: eisa 0x23f2 "ASUS VH236H"
  Serial ID: "9CLMTF216408"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@67Hz
  Resolution: 640x480@72Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@56Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@72Hz
  Resolution: 800x600@75Hz
  Resolution: 832x624@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@70Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1152x864@75Hz
  Resolution: 1280x1024@60Hz
  Resolution: 1920x1080@60Hz
  Size: 521x293 mm
  Detailed Timings #0:
    Resolution: 1920x1080
    Horizontal: 1920 2008 2052 2200 (+88 +132 +280) +hsync
      Vertical: 1080 1084 1089 1125 (+4 +9 +45) +vsync
    Frequencies: 148.50 MHz, 67.50 kHz, 60.00 Hz
  Driver Info #0:
    Max. Resolution: 1920x1080
    Vert. Sync Range: 55-75 Hz
    Hor. Sync Range: 30-85 kHz
    Bandwidth: 148 MHz
  Config Status: cfg=new, avail=yes, need=no, active=unknown

Supposedly, the framebuffer should be able to support 1400x1050, but I can't get it, possibly because it's not listed as monitor supported. Does this mean that I'm stuck with a 1280x1024 max res?

This brings me to my next problem... Xorg. On my old monitor, I liked the nvidiafb-fbdev driver combination because I could quickly switch between X and console, and so long as I had the proprietary nvidia gl libraries installed, X ran smoothly. (never got the nv driver fbdev option to function with stability) Obviously, this is impossible now. I can't get nv to run at a resolution greater than 1280x1024. With the proprietary drivers, max resolution is 1440x900; however, if I disable max pixel clock checking, support for 1680x1050 and 1920x1080 is added.

Now, this is where things get serious. If I switch back to console after starting X with NoMaxPClkCheck, I get an out of range message from my monitor. I can freely restart/switch back to X and everything is fine there, but the console is unuseable until reboot.

relevant Xorg.0.log
Code:

(**) 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 "NoLogo" "True"
(**) NVIDIA(0): Option "NvAGP" "1"
(**) NVIDIA(0): Option "ConnectedMonitor" "DFP-0"
(**) NVIDIA(0): Option "RenderAccel" "True"
(**) NVIDIA(0): Option "AllowGLXWithComposite" "True"
(**) NVIDIA(0): Option "Coolbits" "1"
(**) NVIDIA(0): Option "UseEdidDpi" "False"
(**) NVIDIA(0): Option "AddARGBGLXVisuals" "True"
(**) NVIDIA(0): Option "ModeValidation" "DFP-0: NoMaxPClkCheck"
(**) NVIDIA(0): Enabling RENDER acceleration
(**) NVIDIA(0): ConnectedMonitor string: "DFP-0"
(**) NVIDIA(0): Use of NVIDIA internal AGP requested
(II) NVIDIA(0): Support for GLX with the Damage and Composite X extensions is
(II) NVIDIA(0):    enabled.
(II) NVIDIA(0): NVIDIA GPU GeForce FX 5200 (NV34) at PCI:1:0:0 (GPU-0)
(--) NVIDIA(0): Memory: 131072 kBytes
(--) NVIDIA(0): VideoBIOS: 04.34.20.87.00
(--) NVIDIA(0): Interlaced video modes are supported on this GPU
(--) NVIDIA(0): Connected display device(s) on GeForce FX 5200 at PCI:1:0:0:
(--) NVIDIA(0):    ACI ASUS VH236H (DFP-0)
(--) NVIDIA(0): ACI ASUS VH236H (DFP-0): 135.0 MHz maximum pixel clock
(--) NVIDIA(0): ACI ASUS VH236H (DFP-0): Internal Single Link TMDS
(II) NVIDIA(0): Mode Validation Overrides for ACI ASUS VH236H (DFP-0):
(II) NVIDIA(0):    NoMaxPClkCheck
(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 (95, 95); computed from "DisplaySize" Monitor
(**) NVIDIA(0):    section option
(**) NVIDIA(0): Enabling 32-bit ARGB GLX visuals.
(--) Depth 24 pixmap format is 32 bpp
(II) NVIDIA(0): Initialized GPU GART.
(II) NVIDIA(0): Setting mode "1920x1080"
(II) Loading extension NV-GLX
(II) NVIDIA(0): NVIDIA 3D Acceleration Architecture Initialized
(II) NVIDIA(0): Using the NVIDIA 2D acceleration architecture
(==) NVIDIA(0): Backing store disabled
(==) NVIDIA(0): Silken mouse enabled
(**) NVIDIA(0): DPMS enabled
(II) Loading extension NV-CONTROL
(==) RandR enabled

Xorg.conf
Code:

Section "Device"
        Identifier        "Card0"
        VendorName        "nVidia Corporation"
        BoardName        "GeForce FX 5200 [NV34] (rev a1)"
        BusID                "PCI:1:0:0"
        Driver                "nvidia"
        Option        "NvAGP"                "1"
        Option        "Coolbits"        "1"
        Option        "RenderAccel"        "True"
        Option        "NoLogo"        "True"
        Option        "AllowGLXWithComposite"        "True"
        Option        "AddARGBGLXVisuals"        "True"
#        Option        "UseEdid"        "False"
        Option        "UseEdidDpi"        "False"
#        Option        "DPI"                "96 x 96"
        Option        "ConnectedMonitor"        "DFP-0"
#        Option        "ExactModeTimingsDVI"        "True"
        Option        "ModeValidation"        "DFP-0: NoMaxPClkCheck"
#        Option        "ModeValidation"        "AllowNon60HzDFPModes,
#                                        NoMaxPClkCheck,
#                                        NoEdidMaxPClkCheck,
#                                        NoMaxSizeCheck,
#                                        NoHorizSyncCheck,
#                                        NoVertRefreshCheck,
#                                        NoDFPNativeResolutionCheck,
#                                        NoVirtualSizeCheck,
#                                        NoVesaModes,
#                                        NoEdidModes,
#                                        NoXServerModes,
#                                        NoTotalSizeCheck"
EndSection

Section "Device"
        Identifier        "Card1"
        VendorName        "nVidia Corporation"
        BoardName        "GeForce FX 5200 [NV34] (rev a1)"
        BusID                "PCI:1:0:0"
        Driver                "nv"
        Option        "NoDDC"
#        Option        "UseFBDev"        "true"
EndSection

Section "Device"
        Identifier        "Card2"
        VendorName        "nVidia Corporation"
        BoardName        "GeForce FX 5200 [NV34] (rev a1)"
        BusID                "PCI:1:0:0"
        Driver                "fbdev"
        Option        "NoDDC"
EndSection

Section "Monitor"
        Identifier        "Monitor0"
        VendorName        "Asus"
        ModelName        "VH236H"
        DisplaySize        510.72 287.28
#        HorizSync        30.0 - 83.0
#        VertRefresh        50.0 - 75.0
#        ModeLine        "1920x1080" 148.5 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
        Option        "DPMS"        "true"
EndSection

Section "Monitor"
        Identifier      "Monitor1"
        VendorName      "Asus"
        ModelName      "VH236H"
        DisplaySize    510.72 287.28
        HorizSync      30.0 - 83.0
        VertRefresh    50.0 - 75.0
        ModeLine        "1920x1080" 148.5 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
        Option  "DPMS"  "true"
EndSection

Section "Monitor"
        Identifier        "Monitor2"
        VendorName        "LG"
        ModelName      "566LM"
        DisplaySize        305 229
        HorizSync        30.0 - 63.0
        VertRefresh        50.0 - 75.0
        ModeLine        "1024x768" 78.75 1024 1056 1152 1312 768 769 772 800 +hsync +vsync
        Option        "DPMS"        "true"
EndSection

Section "Screen"
        Identifier        "Screen0"
        Device                "Card0"
        Monitor                "Monitor0"
        DefaultDepth        24
        SubSection "Display"
                Depth        24
                Modes        "1920x1080"
        EndSubSection
EndSection

Section "Screen"
        Identifier        "Screen1"
        Device                "Card1"
        Monitor                "Monitor1"
        DefaultDepth        24
        SubSection "Display"
                Depth        24
                Modes        "1920x1080"
        EndSubSection
EndSection

Section "Screen"
        Identifier        "Screen2"
        Device                "Card2"
        Monitor                "Monitor1"
        DefaultDepth        24
        SubSection "Display"
                Depth        24
                Modes        "1920x1080"
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier        "DefaultLayout"
        Screen 0        "Screen0"
EndSection

Section "ServerLayout"
        Identifier        "nvLayout"
        Screen 0        "Screen1"
EndSection

Section "ServerLayout"
        Identifier        "fbLayout"
        Screen 0        "Screen2"
EndSection


craigevil 02-16-2010 08:07 PM

If you run vbeinfo from grub it will tell you what resolution it supports.

slightlystoopid 02-16-2010 08:19 PM

Quote:

Originally Posted by craigevil (Post 3866284)
If you run vbeinfo from grub it will tell you what resolution it supports.

yeah, it shows me results similar to what I posted from `hwinfo --vbe`. I just used hwinfo so that everyone reading the thread can see what I see.

Note this part of my post related to that issue:
Quote:

Originally Posted by slightlystoopid
Supposedly, the framebuffer should be able to support 1400x1050, but I can't get it, possibly because it's not listed as monitor supported. Does this mean that I'm stuck with a 1280x1024 max res?



All times are GMT -5. The time now is 01:03 AM.