From mboxrd@z Thu Jan 1 00:00:00 1970
From: bugzilla-daemon@freedesktop.org
Subject: [Bug 56139] [bisected] kernel 3.7.0-rc1 breaks 6950 (CAYMAN)
Date: Mon, 05 Nov 2012 14:03:53 +0000
Message-ID:
References:
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="===============2036162730=="
Return-path:
Received: from culpepper.freedesktop.org (unknown [131.252.210.165])
by gabe.freedesktop.org (Postfix) with ESMTP id 52B929F386
for ;
Mon, 5 Nov 2012 06:03:53 -0800 (PST)
In-Reply-To:
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org
Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org
To: dri-devel@lists.freedesktop.org
List-Id: dri-devel@lists.freedesktop.org
--===============2036162730==
Content-Type: multipart/alternative; boundary="1352124233.dCdeb50.15416"; charset="us-ascii"
--1352124233.dCdeb50.15416
Date: Mon, 5 Nov 2012 14:03:53 +0000
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
https://bugs.freedesktop.org/show_bug.cgi?id=56139
--- Comment #12 from Alex Deucher ---
(In reply to comment #11)
> Found what is wrong with the help of a few printk and by comparing to the
> code being replaced. All the logic is good (going through crtc, disabling
> them, waiting for vblank) BUT setting "tmp |=
> EVERGREEN_CRTC_DISP_READ_REQUEST_DISABLE;" is wrong.
>
> If I do as in the previous code by setting tmp = 0 and then continuing with:
> radeon_wait_for_vblank(rdev, i);
> WREG32(EVERGREEN_CRTC_CONTROL + crtc_offsets[i], tmp);
> everything works fine as before.
>
> What is expected from "tmp |= EVERGREEN_CRTC_DISP_READ_REQUEST_DISABLE;"?
> From what I read with printk, it is far from a 0 or a 1. Is this normal?
That's the most important bit in the entire sequence. It's a bit field in a
register (bit 24 to be exact). That bit is the bit that actually disables the
requests from the display controller in the memory controller. The whole point
of this code is to disable all clients of the memory controller (mc_stop()) so
that we can change the location of vram within the GPU's address space. Once
we've moved vram, we can re-enable the clients (mc_resume()) so that they point
to the new vram location.
--
You are receiving this mail because:
You are the assignee for the bug.
--1352124233.dCdeb50.15416
Date: Mon, 5 Nov 2012 14:03:53 +0000
MIME-Version: 1.0
Content-Type: text/html; charset="UTF-8"
Comment # 12
on bug 56139
from Alex Deucher
(In reply to comment #11)
> Found what is wrong with the help of a few printk and by comparing to the
> code being replaced. All the logic is good (going through crtc, disabling
> them, waiting for vblank) BUT setting "tmp |=
> EVERGREEN_CRTC_DISP_READ_REQUEST_DISABLE;" is wrong.
>
> If I do as in the previous code by setting tmp = 0 and then continuing with:
> radeon_wait_for_vblank(rdev, i);
> WREG32(EVERGREEN_CRTC_CONTROL + crtc_offsets[i], tmp);
> everything works fine as before.
>
> What is expected from "tmp |= EVERGREEN_CRTC_DISP_READ_REQUEST_DISABLE;"?
> From what I read with printk, it is far from a 0 or a 1. Is this normal?
That's the most important bit in the entire sequence. It's a bit field in a
register (bit 24 to be exact). That bit is the bit that actually disables the
requests from the display controller in the memory controller. The whole point
of this code is to disable all clients of the memory controller (mc_stop()) so
that we can change the location of vram within the GPU's address space. Once
we've moved vram, we can re-enable the clients (mc_resume()) so that they point
to the new vram location.
You are receiving this mail because:
- You are the assignee for the bug.
--1352124233.dCdeb50.15416--
--===============2036162730==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
--===============2036162730==--