Bug 25683 - [GM45 945GME] Configure crtc 1 invalid after panning on and off
Summary: [GM45 945GME] Configure crtc 1 invalid after panning on and off
Status: VERIFIED NOTABUG
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: medium normal
Assignee: ykzhao
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-16 23:56 UTC by zhao jian
Modified: 2010-12-28 02:36 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
xorg.log (46.42 KB, text/plain)
2009-12-16 23:56 UTC, zhao jian
no flags Details

Description zhao jian 2009-12-16 23:56:37 UTC
Created attachment 32139 [details]
xorg.log

System Environment:
--------------------------
Platform        GM45 945GME
Libdrm:         (master)fbc8b2d95f5da096ee771a3e2ef6f89306679e89
Mesa:           (master)2ddee2cfbcef59128b2a251d5391ddc2b4aea4bb
Xserver:                (master)77221c9155a3c96cb63b210a048db1ea71a5e359
Xf86_video_intel:       (master)8ecf70ea553083cbc26928dc3973c8f6f8b3d9d0
Kernel: (drm-intel-next)d09c23de9f967a7b7dcee0ffc57222ddbd821aba

Bug detailed description:
-------------------------
I first test xrandr's panning feature, it works well, when I want to disable it, it failed. I just change mode with --mode 1024x600, it has no effect, then I turn off the output with --off and turn on it with --auto, but it is still black screen only with an error output: 
xrandr: Configure crtc 1 invalid time

Reproduce steps:
----------------
1. xinit&
2. xrandr --output LVDS1 --panning 1680x1024
3. xrandr --output LVDS1 --off
4. xrandr --output LVDS1 --auto
Comment 1 ykzhao 2010-03-29 01:52:45 UTC
It is very interesting that it can work well again if the X is restarted after the issue happens.

At the same time I notice that some behaviours are also changed in the following test by using panning.
   1. Two display output devices are used when starting X
   2. use panning for one display device and then turn off it by using xrandr
   3. fail to turn on it again 
   4. Another monitor will also flicker once when using the command of "xrandr -q --verbose". In fact it won't flicker if not using panning.

thanks.
Comment 2 ykzhao 2010-03-29 07:15:00 UTC
After some investigations it seems that this issue is related with the incorrect usage of panning.  According to the code related with the panning, it seems that the panning option should always be added explicitly after we enable the panning for one output. Only when the panning is disabled again, it is unnecessary to add the option of "panning" again.

Please try the following command and see whether the issue still exists.
   1. xrandr --output LVDS1 --panning 1680x1050
   2. xrandr --output LVDS1 --off
   3. xrandr --output LVDS1 --auto --panning 1680x1050
   4. xrandr --output LVDS1 --panning 0x0
   5. xrandr --output LVDS1 --off; 
   6. xrandr --output LVDS1 --auto

thanks.
Comment 3 zhao jian 2010-04-01 02:18:40 UTC
(In reply to comment #2)
> After some investigations it seems that this issue is related with the
> incorrect usage of panning.  According to the code related with the panning, it
> seems that the panning option should always be added explicitly after we enable
> the panning for one output. Only when the panning is disabled again, it is
> unnecessary to add the option of "panning" again.
> Please try the following command and see whether the issue still exists.
>    1. xrandr --output LVDS1 --panning 1680x1050
>    2. xrandr --output LVDS1 --off
>    3. xrandr --output LVDS1 --auto --panning 1680x1050
>    4. xrandr --output LVDS1 --panning 0x0
>    5. xrandr --output LVDS1 --off; 
>    6. xrandr --output LVDS1 --auto
> thanks.

Yes. It works well if add --panning option now. So closed. 
Comment 4 Gordon Jin 2010-04-01 17:33:43 UTC
I'm not sure if this is "incorrect usage of panning" from user's point of view. Does the manual reflect this? If not, we should either fix manual or code.
Comment 5 ykzhao 2010-04-01 23:35:18 UTC
(In reply to comment #4)
> I'm not sure if this is "incorrect usage of panning" from user's point of view.
> Does the manual reflect this? If not, we should either fix manual or code.

What I give in comment #2 is only to add the option of "panning" when panning is used. But it is difficult to describe how to use the parameter of "panning".For example: the following is also OK.
   >1. xrandr --output LVDS1 --panning 1680x1050
   >2. xrandr --output LVDS1 --off
   >3. xrandr --output LVDS1 --auto --panning 1920x1200

   As the code related with panning resides in xserver instead of our driver, it is not the bug of our driver.

thanks.
  



Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.