Where is RandR rotation handled?

James Le Cuirot chewi at aura-online.co.uk
Tue Dec 1 14:25:01 PST 2009


Hi,

I have an old tablet with a Trident card. A long standing problem has
been that you cannot rotate the screen with xrandr. It can only be done
through xorg.conf and thus requires a restart. The error you get is
this.

X Error of failed request: BadMatch (invalid parameter attributes)
  Major opcode of failed request: 154 (RANDR)
  Minor opcode of failed request: 2 (RRSetScreenConfig)
  Serial number of failed request: 12
  Current serial number in output stream: 12

I've not really hacked X before but I figured it might not be too hard
to get this working with xrandr if it already works through xorg.conf.
I set out to find the exact point of failure but could only trace it as
far back as XRRSetScreenConfigAndRate in libXrandr. An _XReply request
is made here and the BadMatch gets passed back through here. But I
cannot see where and why that BadMatch is generated. I checked the
xf86-video-trident source as well as a couple of drivers that do
support rotation (intel and radeonhd) but while I could see some RandR
rotation stuff there, I couldn't find anything that looked like it was
dealing with this request and sending back a BadMatch. Even if it would
be harder to fix than I'm suggesting, I'm curious to know how this
works.

Thanks,
James


More information about the xorg-devel mailing list