I tried to rotate one of my screens using xrandr, but nvidia driver doesn’t support it:
$ xrandr --output DP-3-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-3-2 --mode 1920x1080 --pos 1920x0 --rotate normal --output DP-2 --mode 1920x1080 --pos 3840x0 --rotate right --output eDP-1 --off
xrandr: output DP-2 cannot use rotation “right” reflection “none”
nvidia-settings tells me that “PRIME displays cannot be controlled by nvidia-settings and must be configured by an external RandR capable tool.” Setting meta modes via nvidia-settings does not do anything (won’t even print an error). I suppose there is no point in setting up metamodes in xorg.conf.
Here is contents of my nvidia-bug-report.log.gz: https://drive.google.com/file/d/0BzWoHuz3g6H1akFpYUpzdi1zUUU/view?usp=sharing
PS: nouveau driver can rotate DP-3-2 but is not able to wake it up after turning it off via xrandr --off.
Did you try xrandr --output DP-2 --rotate right or left ?
I tried both:
$ xrandr --output DP-2 --rotate right
xrandr: output DP-2 cannot use rotation "right" reflection "none"
$ xrandr --output DP-2 --rotate left
xrandr: output DP-2 cannot use rotation "left" reflection "none"
If you connect only one display to GPU board [DP-2] and unplug all other display and hit the command ?
Same thing happens. Note that I’m using thinkpad laptop connected via docking station. I can’t undock it because DP-2 is not on the notebook, only on dock. I ran these commands:
$ xrandr
Screen 0: minimum 8 x 8, current 5760 x 1080, maximum 16384 x 16384
eDP-1 connected
1920x1080 60.02 + 59.93
1680x1050 59.95 59.88
1600x1024 60.17
1400x1050 59.98
1280x1024 60.02
1440x900 59.89
1280x960 60.00
1360x768 59.80 59.96
1152x864 60.00
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
960x600 60.00
960x540 59.99
800x600 60.00 60.32 56.25
840x525 60.01 59.88
800x512 60.17
700x525 59.98
640x512 60.02
720x450 59.89
640x480 60.00 59.94
680x384 59.80 59.96
576x432 60.06
512x384 60.00
400x300 60.32 56.34
320x240 60.05
DP-1 disconnected
HDMI-1 disconnected
DP-2 disconnected 1920x1080+3840+0 0mm x 0mm
HDMI-2 disconnected
DP-3 disconnected
HDMI-3 disconnected
DP-3-1 disconnected 1920x1080+0+0 0mm x 0mm
DP-3-2 connected 1920x1080+1920+0 527mm x 296mm
1920x1080 60.00*+ 50.00 59.94
1600x1200 60.00
1600x900 60.00
1280x1024 75.02 60.02
1152x864 75.00
1280x720 60.00 50.00 59.94
1024x768 75.08 60.00
800x600 75.00 60.32
720x576 50.00
720x480 60.00 59.94
640x480 75.00 60.00 59.94
720x400 70.08
DP-3-3 disconnected
$ xrandr --output DP-2 --rotate left
xrandr: output DP-2 cannot use rotation "left" reflection "none"
$ xrandr --output DP-2 --rotate right
xrandr: output DP-2 cannot use rotation "right" reflection "none"
It seems that RandRRotation is not used even though I have it in my xorg.conf, see here:
[ 1120.448] (--) Depth 24 pixmap format is 32 bpp
[ 1120.448] (==) modeset(G0): Backing store enabled
[ 1120.448] (==) modeset(G0): Silken mouse enabled
[ 1120.448] (II) modeset(G0): RandR 1.2 enabled, ignore the following RandR disabled message.
[ 1120.511] (==) modeset(G0): DPMS enabled
[ 1120.511] (WW) modeset(G0): Option "AllowEmptyInitialConfiguration" is not used
[ 1120.511] (WW) modeset(G0): Option "IgnoreDisplayDevices" is not used
[ 1120.511] (WW) modeset(G0): Option "RandRRotation" is not used
[ 1120.629] (II) NVIDIA: Using 12288.00 MB of virtual memory for indirect memory
[ 1120.629] (II) NVIDIA: access.
[ 1120.675] (II) NVIDIA(0): Built-in logo is bigger than the screen.
[ 1120.675] (II) NVIDIA(0): Setting mode "NULL"
[ 1120.682] (==) NVIDIA(0): Disabling shared memory pixmaps
[ 1120.682] (==) NVIDIA(0): Backing store enabled
[ 1120.682] (==) NVIDIA(0): Silken mouse enabled
[ 1120.683] (==) NVIDIA(0): DPMS enabled
[ 1120.683] (WW) NVIDIA(0): Option "RandRRotation" is not used
[ 1120.683] (II) Loading sub module "dri2"
[ 1120.683] (II) LoadModule: "dri2"
[ 1120.683] (II) Module "dri2" already built-in
[ 1120.683] (II) NVIDIA(0): [DRI2] Setup complete
[ 1120.683] (II) NVIDIA(0): [DRI2] VDPAU driver: nvidia
[ 1120.683] (--) RandR disabled
[ 1120.687] (II) SELinux: Disabled on system
[ 1120.688] (II) Initializing extension GLX
[ 1120.688] (II) Indirect GLX disabled.
And this is my xorg.conf:
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "None"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:2@0:0:0"
Option "ConstrainCursor" "off"
Option "RandRRotation" "on"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
Option "RandRRotation" "on"
EndSection
Yeah. This is because Canonical patches X to unconditionally disable rotation for PRIME. Our driver does support rotation. Please connect Canonical.
Please also see:
Bug-Ubuntu: https://launchpad.net/bugs/1386620
Bug-Ubuntu: https://launchpad.net/bugs/1308515
Bug-Ubuntu: https://launchpad.net/bugs/1489696
The three Ubuntu-Bugs are marked as resolved by now. The issue however persists. Is there a way for Ubuntu users to rotate the screen with Nvidia drivers? Can I install an unpatched x-server? What’s the outlook n this?