commit drm/i915: disable shared panel fitter for pipe breaks resolution switching

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/09/2013 06:40 PM, Daniel Vetter wrote:
> Can you please quickly test whether the below patch changes anything
> in the behaviour?
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c
> b/drivers/gpu/drm/i915/intel_display.c
> index 8809813..974ae32 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4715,7 +4715,7 @@ static int i9xx_crtc_mode_set(struct drm_crtc *crtc,
>
>          i9xx_set_pipeconf(intel_crtc);
>
> -       intel_enable_pipe(dev_priv, pipe, false);
> +       //intel_enable_pipe(dev_priv, pipe, false);
>
>          intel_wait_for_vblank(dev, pipe);
>
>
>


for some reason the diff did not work. Here a snippet of my modified 
intel_display.c:


...
         /* pipesrc and dspsize control the size that is scaled from,
          * which should always be the user's requested size.
          */
         I915_WRITE(DSPSIZE(plane),
                    ((mode->vdisplay - 1) << 16) |
                    (mode->hdisplay - 1));
         I915_WRITE(DSPPOS(plane), 0);

         I915_WRITE(PIPECONF(pipe), pipeconf);
         POSTING_READ(PIPECONF(pipe));
         //intel_enable_pipe(dev_priv, pipe, false);

         intel_wait_for_vblank(dev, pipe);

         I915_WRITE(DSPCNTR(plane), dspcntr);
         POSTING_READ(DSPCNTR(plane));
...

The screen still does not scale.


By the way, I have had this problem before: 
https://bugzilla.kernel.org/show_bug.cgi?id=43071

-- 
Hans




> On Mon, Apr 8, 2013 at 7:38 PM, Hans de Bruin <jmdebruin at xmsnet.nl> wrote:
>> On 04/07/2013 08:56 PM, Daniel Vetter wrote:
>>>
>>> On Sun, Mar 10, 2013 at 06:02:32PM +0100, Hans de Bruin wrote:
>>>>
>>>> On 03/06/2013 11:37 PM, Daniel Vetter wrote:
>>>>>
>>>>> On Wed, Mar 6, 2013 at 7:39 PM, Hans de Bruin <jmdebruin at xmsnet.nl>
>>>>> wrote:
>>>>>>
>>>>>> On 03/06/2013 03:00 PM, Daniel Vetter wrote:
>>>>>>>
>>>>>>>
>>>>>>> Hi Hans,
>>>>>>>
>>>>>>> Can you please test with 3.9-rc1? That contains an additional patch
>>>>>>> which might prevent the regression. Specifically
>>>>>>>
>>>>>>> commit 9d6d9f19e8146fa24903cb561e204a22232740e3
>>>>>>> Author: Mika Kuoppala <mika.kuoppala at linux.intel.com>
>>>>>>> Date:   Fri Feb 8 16:35:38 2013 +0200
>>>>>>>
>>>>>>>        drm/i915: clean up panel fitter handling in lvds
>>>>>>
>>>>>>
>>>>>>
>>>>>> Today's kernel still contains the bug.
>>>>>
>>>>>
>>>>> Hm, I've just retested latest drm-intel-nightly which should have the
>>>>> same set of relevant patches, and I couldn't reproduce your issue.
>>>>> Low-res modes on the lvds panel seem to correctly scale up here on my
>>>>> 945gm.
>>>>>
>>>>> Can you pls retest with latest -nightly from
>>>>> http://cgit.freedesktop.org/~danvet/drm-intel ?
>>>>>
>>>>> Also please attach the output of xrandr --verbose when running with a
>>>>> reduced mode.
>>>>>
>>>>
>>>> tested:
>>>> http://cgit.freedesktop.org/~danvet/drm-intel
>>>> commit d08a6eb2690b1ac6f0582feb41c2ccbea945285f
>>>> Date:   Thu Mar 7 22:54:25 2013 +0100
>>>>
>>>> The problem is still there
>>>>
>>>>
>>>> my previous post contained  the  xrandr output whiteout the verbose.
>>>> Doe you want my to repost with the verbose option?
>>>
>>>
>>> Sorry for the long delay in taking again a look at this. I've tried to
>>> reproduce this on my various machines similar to yours, but totally
>>> failed. Also, a bunch of people with matching machines to yours actually
>>> claim that the 2 commits which regress for you actually fix up lvds panel
>>> fiting for them. So I'm a bit lost as to what's going on here.
>>>
>>> Can you please try the below debug patch on top of latest 3.9-rc kernels?
>>>
>>> Please boot that kernel with drm.debug=0xe added to your kernel cmdline,
>>> reproduce the issue (preferrably with xrandr --output LVDS --mode ...) and
>>> then attach the complete dmesg. This will enable lots of debugging, so
>>> please make sure you grab everything starting from when i915.ko loads.
>>>
>>
>> ok, here is de dmesg.
>>
>> --
>> Hans
>>
>>
>>
>
>
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> +41 (0) 79 365 57 48 - http://blog.ffwll.ch
>



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux