From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Richter Subject: Re: [PATCH] Workaround for flicker with panning on the i830 Date: Mon, 11 Nov 2013 16:33:51 +0100 Message-ID: <5280F8DF.5020205@math.tu-berlin.de> References: <1383818746-1199-1-git-send-email-daniel.vetter@ffwll.ch> <20131107134516.GP5986@intel.com> <32493_1383921850_527CF8B9_32493_10045_1_20131108075743.GZ14082@phenom.ffwll.local> <527D024D.8020000@math.tu-berlin.de> <32493_1383928311_527D11F3_32493_10984_1_20131108163213.GC14082@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: Received: from hydra.rus.uni-stuttgart.de (hydra.rus.uni-stuttgart.de [129.69.192.3]) by gabe.freedesktop.org (Postfix) with ESMTP id 3ADF8FAAE6 for ; Mon, 11 Nov 2013 07:34:02 -0800 (PST) In-Reply-To: <32493_1383928311_527D11F3_32493_10984_1_20131108163213.GC14082@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: Daniel Vetter Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Am 08.11.2013 17:32, schrieb Daniel Vetter: > Kernel has a tool in scripts/checkpatch.pl which will tell you what's all > off ;-) Also sob line and similar essential things are missing, but the > script should notice this all. > > Also I think it'd be good to extract this hack into a little helper > function, maybe called i830_plane_panning_hack or so. That way it's out of > the normal code flow and clearly marked as something exceptionel. Thanks, I'll try that. Still working on it, though. > >> As a related question: Is there possibly a command line tool that >> would allow me to modify the intel chipset registers on the fly >> without going through a kernel recompile? It would make some >> experiments just so much simpler. > intel-gpu-tools has intel_reg_read/write tools. That should help ;-) These tools are exceptional, and exactly what I was looking for. Thanks a lot! Now, how much is known about the register DSPARB, found at offset 0x70030? Because, if I just feed this register with "correct" values (for whatever "correct" means), I do get a stable image on pipe A and pipe B. I haven't found out what "correct" is, precisely, but there is something I can do here. By default, on my setup, the value here is 0x17e5f, but depending on the scroll position, 0x17e51, 0x17e61, 0x17e6f or 0x17e63 create stable images. So there is at least some way how to get the image right, though I don't quite understand the mechanics yet. BTW, now that I looked at intel_regs_dump: When the screen is flickering, I do get "pipe A underruns". I tried working with the watermark registers, but all I can get is a crashed GPU or a ripped display, so this is not quite the right approach. DSPARB seems to be the best trick so far, even though I don't quite get how it works. Any ideas? Greetings, Thomas