NVIDIA: Difference between revisions

imported>Eadwu
No edit summary
imported>Boundless-thread
No edit summary
Line 115: Line 115:
}
}
</nowiki>}}
</nowiki>}}
====External Displays====
In the event that your dedicated GPU has display outputs inaccessible to the internal GPU you need to configure Xorg Displays and set output providers using xrandr.
An example Xorg configuration is below:
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
{
  services.xserver.config = ''
Section "ServerLayout"
    Identifier  "layout"
    Screen    0 "dGPU"
    Inactive    "iGPU"
EndSection
Section "Device"
    Identifier  "iGPU"
    Driver      "modesetting"
    BusID      "PCI:0:2:0"
EndSection
Section "Device"
    Identifier "dGPU"
    Driver    "nvidia"
    BusID      "PCI:1:0:0"
EndSection
Section "Screen"
    Identifier "dGPU"
    Device    "dGPU"
    Option "AllowEmptyInitialConfiguration" "Yes"
    #Option "UseDisplayDevice" "none"
EndSection
Section "Screen"
    Identifier "iGPU"
    Device    "iGPU"
EndSection
    '';
}</nowiki>}}
To configure the output sources, first list the providers:
<nowiki>
xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x1b8 cap: 0x1, Source Output crtcs: 4 outputs: 3 associated providers: 0 name:NVIDIA-0
Provider 1: id: 0x202 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 0 associated providers: 1 name:modesetting
</nowiki>
You should see two providers, one for the external GPU and one for the internal GPU. 
Then run xrandr to set:
<nowiki>xrandr --setprovideroutputsource 1 0</nowiki>


=== Bumblebee ===
=== Bumblebee ===