You are not logged in.

#1 2011-11-22 04:28:00

sashang
Member
Registered: 2011-11-22
Posts: 23

xorg.conf for laptops with 2 vga controllers and an hdmi port

Hi

I installed arch on my laptop and was quite happy that it worked so easily. The only problem at the moment is that the display connected to the hdmi port isn't detected. For example running from the gnome control centre the display applet then 'detect' only detects the laptop display, even though there is a 2nd monitor connected to the laptop via the HDMI port. I suspect that the problem is xrandr is not detecting the monitor connected to the HDMI port. How can I fix this?

Output from lspci -v for the vga controllers:

01:00.0 VGA compatible controller: nVidia Corporation Device 0df5 (rev a1) (prog-if 00 [VGA controller])
    Subsystem: Dell Device 0446
    Flags: bus master, fast devsel, latency 0, IRQ 16
    Memory at f0000000 (32-bit, non-prefetchable) [size=16M]
    Memory at c0000000 (64-bit, prefetchable) [size=256M]
    Memory at d0000000 (64-bit, prefetchable) [size=32M]
    I/O ports at 3000 [size=128]
    Expansion ROM at f1000000 [disabled] [size=512K]
    Capabilities: <access denied>
    Kernel driver in use: nouveau
    Kernel modules: nvidiafb, nouveau00:02.0 VGA compatible controller:

Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) (prog-if 00 [VGA controller])
    Subsystem: Dell Device 0446
    Flags: bus master, fast devsel, latency 0, IRQ 49
    Memory at f1400000 (64-bit, non-prefetchable) [size=4M]
    Memory at e0000000 (64-bit, prefetchable) [size=256M]
    I/O ports at 4000 [size=64]
    Expansion ROM at <unassigned> [disabled]
    Capabilities: <access denied>
    Kernel driver in use: i915
    Kernel modules: i915

output from xrandr:

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
LVDS1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
   1920x1080      60.0*+   40.0 
   1400x1050      60.0 
   1280x1024      60.0 
   1280x960       60.0 
   1024x768       60.0 
   800x600        60.3     56.2 
   640x480        59.9 
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
DP1 disconnected (normal left inverted right x axis y axis)

Offline

#2 2011-11-25 04:25:18

llawwehttam
Member
From: United Kingdom
Registered: 2010-01-19
Posts: 181

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

Have you tried using the proprietary nvidia drivers? I know a lot of people prefer to use open source software but the nvidia drivers seem pretty good.

Offline

#3 2011-11-25 05:18:25

sashang
Member
Registered: 2011-11-22
Posts: 23

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

Yeah I have tried the nvdia drivers. They didn't work. Reason being is that this is a hybrid gpu setup containing two vga controllers and apparently the proprietary nvidia drivers don't work with this setup.

http://ubuntuforums.org/showthread.php? … ht=optimus

However the problem for me isn't the fact that nvidia optimus isn't working on my laptop. I suspect that even if I got optimus working on my laptop, it wouldn''t solve the problem. According to the datapath schematics (http://www.nvidia.com/object/LO_optimus … apers.html) the data flows from the application to the nvidia gpu to the intel vga controller in the case where you want high performace, and in the case of normal performace data will bypass the nvidia gpu and go directly to the the intel gpu. This is fundamentally different from 'switchable' vga controllers where in that case the nvidia gpu is also responsible for rendering to the framebuffer. In this hybrid setup it's the intel controller that is always responsible for writing to the framebuffer, hence it should be the one responsible for communicating with the HDMI port. I suspect it may be something wrong with the HDCP negotiation.

Additionally this worked when the laptop was running windows and I could tell the intel gpu to output over the hdmi port. The capability is there in the hardware. I think that it's a matter of finding whats wrong in the kernel...

Offline

#4 2011-11-25 05:59:35

llawwehttam
Member
From: United Kingdom
Registered: 2010-01-19
Posts: 181

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

I had a similar issue with my laptop and my solution was to disable the intel chip, an option which my BIOS allowed. The nvidia drivers then worked flawlessly.

Offline

#5 2011-11-25 06:21:21

sashang
Member
Registered: 2011-11-22
Posts: 23

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

What model is your laptop? Mines a Dell XPS 15z. There's no option in the bios to disable vga controllers (I suspect this is the case because these aren't switchable).

Offline

#6 2011-11-25 16:21:47

llawwehttam
Member
From: United Kingdom
Registered: 2010-01-19
Posts: 181

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

Mine was a clevo notebook re-branded by novatech as an x65

Uses a pheonix BIOS I think.

Offline

#7 2011-11-30 11:23:59

sashang
Member
Registered: 2011-11-22
Posts: 23

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

Ok I figured out what's wrong. Basically I was relying on nvidia-settings to generate the right xorg.cong file but it doesn't, which is why the driver doesn't load. Also on this laptop it looks like the nvidia controller is connected directly to the hdmi output. I had to ammend the file to

1) include the correct module path for the nvidia driver
2) Specify the busid of the nvidia controller.

To find out the busid use

lspci -v

.

01:00.0 VGA compatible controller: nVidia Corporation GT200 [GeForce GTX 260] (rev a1)

The busid is the sequence of digits before VGA.

Then ammend the xorg.conf file so that it looks similar this:

.
.
.
Section "Device"
    Identifier "Device0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BusID "PCI:01:00:0"
    Option "NoLogo" "true"
    Option "UseEDID" "true"
    Option "ConnectedMonitor" "DFP"
EndSection

Section "Files"
    ModulePath      "/usr/lib/<path to nvidia driver>"
    ModulePath      "/usr/lib/xorg/modules"
EndSection
.
.
.

Offline

#8 2012-02-24 22:00:47

Pres
Member
Registered: 2011-09-12
Posts: 423

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

Curious how well you got this working (and working with the nvidia driver). I have the same issue, and got it working using the intel and nouveau drivers. However, I am unable to drag windows to the second screen, use desktop effects, or modify the layout with xrandr. I tried installing the nvidia driver alongside the intel one, however there is a conflict between nvidia-utils and libgl that won't allow that.

Here's my setup:

$ lspci -v
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) (prog-if 00 [VGA controller])
        Subsystem: Dell Device 04b8
        Flags: bus master, fast devsel, latency 0, IRQ 56
        Memory at f2400000 (64-bit, non-prefetchable) [size=4M]
        Memory at e0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 5000 [size=64]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: <access denied>
        Kernel driver in use: i915

01:00.0 VGA compatible controller: NVIDIA Corporation Device 0dd6 (rev a1) (prog-if 00 [VGA controller])
        Subsystem: Dell Device 04b8
        Flags: bus master, fast devsel, latency 0, IRQ 16
        Memory at f0000000 (32-bit, non-prefetchable) [size=32M]
        Memory at c0000000 (64-bit, prefetchable) [size=256M]
        Memory at d0000000 (64-bit, prefetchable) [size=64M]
        I/O ports at 4000 [size=128]
        Expansion ROM at f2000000 [disabled] [size=512K]
        Capabilities: <access denied>
        Kernel driver in use: nouveau

And the file in xorg.conf.d I used to get X running with both screens:

Section "Device"
    Identifier "Device0"
    Driver "intel"
    BusID "PCI:00:02:0"
EndSection


Section "Device"
    Identifier "Device1"
    Driver "nouveau"
    BusID "PCI:01:00:0"
    Option "NoLogo" "true"
    Option "UseEDID" "true"
    Option "ConnectedMonitor" "DFP"
EndSection

Section "Monitor"
   Identifier  "Monitor0"
   HorizSync   30-94
   VertRefresh 48-85
EndSection

Section "Monitor"
   Identifier  "Monitor1"
   HorizSync   30-94
   VertRefresh 48-85
EndSection

Section "Screen"
   Identifier  "Screen0"
   Device      "Device0"
   Monitor     "Monitor0"
   DefaultDepth    24
   SubSection "Display"
       Depth       24
       Modes       "1600x900"
   EndSubSection
EndSection

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

Section "ServerLayout"
    Identifier  "Default Layout"
    Screen  0   "Screen0" Absolute 0 180 
    Screen  1   "Screen1" Absolute 1600 0
EndSection

Offline

#9 2013-10-09 18:08:18

silenceleaf
Member
Registered: 2013-03-16
Posts: 38

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

this config is worked for me, But the I can't move my program from one screen to another screen, do you know how to solve it?

Offline

#10 2013-11-18 18:28:34

cubisttriangle
Member
Registered: 2012-01-22
Posts: 11

Re: xorg.conf for laptops with 2 vga controllers and an hdmi port

If anyone is still interested in how to move windows between screens (within the same X screen), you should add the Option "Xinerama" "1" to the ServerFlags section.  Twinview may also be used.  See:

   http://us.download.nvidia.com/XFree86/L … nview.html

   https://wiki.archlinux.org/index.php/NV … e_monitors

Last edited by cubisttriangle (2013-11-18 18:55:20)

Offline

Board footer

Powered by FluxBB