The RandR-"unable to set rotation" issue in AMD Geode LX platform

Cui, Hunk Hunk.Cui at amd.com
Wed Jun 2 00:25:54 PDT 2010


Hi, Tim & Frank,

	From the Ubuntu BTS: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-geode, I sum up two unsolved issue.

	The first issue is about the geode driver do not display 1024x600 screen in some 16:9 netbook, because the Geode LX driver does not support the 16:9 screen, in common situation, the default is setup to 4:3 screen (1024x768), so some guys want to set 1024x600, the only method is add a common line in xorg.conf file, see following:
in Section "Monitor"
Add: Modeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -Hsync +Vsync
	After that, the Geode-driver may run on a unstable environment, but I suggest some guys use this method test the machine on a long run time. Once occur the unstable instance, through BTS to tell me. I'll follow it.

	The second issue is the RandR-"unable to set rotation" issue, now I have been established three Xorg environments, only use the XRandR client program (it can download from http://cgit.freedesktop.org/xorg/ ).
The phenomenon, see below:
1).Xserver-1.6.4/Geode driver-2.11.7
	Run: xrandr --output default --rotate left 
	Phenomenon: The screen properly rotate 
	Run: xrandr --output default --rotate normal --auto
	Phenomenon: The screen return to normal state
2).Xserver-1.7.1/Geode driver-2.11.7
	Run: xrandr --output default --rotate left 
	Phenomenon: The screen turn to black 
	Run: xrandr --output default --rotate normal --auto
	Phenomenon: The screen return to normal state
3).Xserver-1.8.99/Geode driver-2.11.8
	Run: xrandr --output default --rotate left 
	Phenomenon: The screen turn to black 
	Run: xrandr --output default --rotate normal --auto
	Phenomenon: The screen does not return to normal state, still black

	Now the problem become more and more urgent, I use ddd tools to trace the part of Xserver-ProcRRDispatch, Alex Deucher (from xorg-devel) suggest focus on the randr crtc hooks for allocating the shadow pixmap used for rotation (shadow_create, shadow_allocate, shadow_destroy). I'll follow this issue.

Thanks,
Hunk Cui
 

-----Original Message-----
From: Cui, Hunk 
Sent: Thursday, May 27, 2010 10:36 AM
To: Writer, Tim
Cc: Huang, FrankR; Torres, Rigo
Subject: RE: About "unable to set rotation" issue

Hi, Tim,

	I gave a try with 1.7.1 server on rotation following your suggestion. Geode driver 2.11.7, In our platform, the <OUTPUT> name is "default", 
(BTW: In general use $ xrandr -q to discover the appropriate output names for your configuration, the reference link: http://www.thinkwiki.org/wiki/Xorg_RandR_1.2)

When I tried: "xrandr --output default --rotate left". The screen turn to black.
Then tried: "xrandr --output default --rotate normal --auto". The screen return to normal.

Now we doubt it is a bug, because from 1.6.4 server to 1.7.1 server, the part of RandR have been updated and changed from source code.

Tim, Are there any other ideas?

Thanks,
Hunk Cui


-----Original Message-----
From: Huang, FrankR 
Sent: Thursday, May 27, 2010 9:30 AM
To: Torres, Rigo
Cc: Writer, Tim; Cui, Hunk
Subject: RE: About "unable to set rotation" issue

Rigo,

	Ok. Hunk will give a try with 1.7.1 server on rotation following Tim's suggestion.
	If you have any question on build.sh method, please feel free to mail me.

Thanks,
Frank

-----Original Message-----
From: Torres, Rigo 
Sent: 2010年5月27日 1:00
To: Huang, FrankR
Cc: Writer, Tim; Cui, Hunk
Subject: RE: About "unable to set rotation" issue

Hi Frank,
I have not upgraded to Xserver 1.7.1, so I have not tested rotation with Xserver 1.7.1.
I am still having trouble with jhbuild even after Tim's suggestions.
If I can't get it to build this week. I will just try your long build method.

Let us know if Tim's suggestions for ration work with Xserver 1.7.1.

Rigo

-----Original Message-----
From: Writer, Tim [mailto:Tim.Writer at amd.com] 
Sent: Wednesday, May 26, 2010 8:14 AM
To: Cui, Hunk
Cc: Torres, Rigo; Huang, FrankR
Subject: Re: About "unable to set rotation" issue

On Wed, May 26 2010, "Cui, Hunk" <Hunk.Cui at amd.com> wrote:

> Hi, Rigo,
>  
>         As you said on Ubuntu BTS, https://bugs.launchpad.net/ubuntu/+source/
> xserver-xorg-video-geode/+bug/377929
> About “unable to set rotation on AMD Geode LX800”, you used Ubuntu 9.10 which
> comes with generic kernel 2.6.31-17 and Xserver 1.6.4, geode-driver 2.11.6, I
> also able to rotate the screen just fine with the default geode driver that
> comes with this distribution using Xrandr. Rotation is working just fine with
> 'xrandr'. I used command such as:
>> xrandr -o left
>> xrandr -o right
>> xrandr -o inverted
>> xrandr -o normal
>  
> When I use Xserver 1.7.1, geode-driver 2.11.7,
>> xrandr -o left
>> xrandr -o right
>> xrandr -o inverted
> The screen are black and unable to return.

Have you tried:

    xrandr --output OUTPUT --rotate left

where OUTPUT would be replaced by one of the outputs shown when you run
`xrandr' without any options.

The `-o' options is a RandR 1.0/1.1 command and may exercise a different
driver code path from the RandR 1.2 `--rotate' option. RandR 1.2
introduced per-output rotation which wasn't available in earlier
versions. Consequently, `xrandr -o' is equivalent to rotating the entire
desktop (composed of all the outputs) rather than just a specific
output. Depeding on the Geode driver's support for multiple outputs and
which outputs are connected, using `xrandr -o' could confuse the driver.

If the screen still goes black, it would be interesting to see what this
script does:

    #!/bin/sh
    OUTPUT=<insert output name>
    xrandr --output $OUTPUT --rotate left
    sleep 15
    xrandr --output $OUTPUT --rotate normal --auto

Tim



More information about the xorg mailing list