From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Widawsky Subject: Re: [PATCH 00/18] [RFC] Introduce the Haswell VECS Date: Wed, 7 Nov 2012 12:03:01 +0000 Message-ID: <20121107120301.190a405d@bwidawsk.net> References: <1352219142-1395-1-git-send-email-ben@bwidawsk.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from shiva.chad-versace.us (209-20-75-48.static.cloud-ips.com [209.20.75.48]) by gabe.freedesktop.org (Postfix) with ESMTP id E93389E7C0 for ; Wed, 7 Nov 2012 04:02:34 -0800 (PST) In-Reply-To: <1352219142-1395-1-git-send-email-ben@bwidawsk.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org Cc: libva@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org The basic usage of this feature is already upstream in libva. git://anongit.freedesktop.org/vaapi/intel-driver On Tue, 6 Nov 2012 16:25:24 +0000 Ben Widawsky wrote: > The VECS is a new command streamer introduced in Haswell which allows > offloading of video post processing to a new engine called the VEBOX. > Like other rings, it is up to userspace to take advantage of it. Also > like the other rings, the primary enabling is turning on interrupts, > adding the new semaphores, and other basic bits. Somewhat more > complicated than the other rings, the VECS has its interrupts in the > PMIMR, so as a result, I did a bunch of interrupt naming cleanups > because I thought it made more sense. > > Coming separately will be the basic i-g-t test cases. I still have some > work to do on those, but figure that the review can go on in parallel. > > In terms of the work history, these started as patches by me, finished by > Haihao, and then cleaned up and rebased by me. I tried to leave credit to > Haihao where applicable, but I rewrote a lot of his stuff, so blame me if > something is bad. > > Ben Widawsky (14): > drm/i915: Comments for semaphore clarification > drm/i915: Semaphore MBOX update generalization > drm/i915: Introduce VECS: the 4th ring > drm/i915: Add VECS semaphore bits > drm/i915: Rename ring flush functions > drm/i915: Vebox ringbuffer init > drm/i915: Create a more generic pm handler for hsw+ > drm/i915: make PM interrupt writes non-destructive > drm/i915: Create an ivybridge_irq_preinstall > drm/i915: Add PM regs to pre install > drm/i915: Convert irq_refounct to struct > drm/i915: consolidate interrupt naming scheme > drm/i915: vebox interrupt get/put > drm/i915: Enable vebox interrupts > > Xiang, Haihao (4): > drm/i915: add HAS_VEBOX > drm/i915: add VEBOX into debugfs > drm/i915: add I915_EXEC_VEBOX to i915_gem_do_execbuffer() > drm/i915: add I915_PARAM_HAS_VEBOX to i915_getparam > > drivers/gpu/drm/i915/i915_debugfs.c | 13 ++ > drivers/gpu/drm/i915/i915_dma.c | 5 +- > drivers/gpu/drm/i915/i915_drv.c | 2 + > drivers/gpu/drm/i915/i915_drv.h | 3 + > drivers/gpu/drm/i915/i915_gem.c | 8 ++ > drivers/gpu/drm/i915/i915_gem_execbuffer.c | 9 ++ > drivers/gpu/drm/i915/i915_irq.c | 153 +++++++++++++++++------ > drivers/gpu/drm/i915/i915_reg.h | 148 ++++++++++++----------- > drivers/gpu/drm/i915/intel_pm.c | 8 +- > drivers/gpu/drm/i915/intel_ringbuffer.c | 188 +++++++++++++++++++++-------- > drivers/gpu/drm/i915/intel_ringbuffer.h | 13 +- > include/uapi/drm/i915_drm.h | 3 +- > 12 files changed, 383 insertions(+), 170 deletions(-) > -- Ben Widawsky, Intel Open Source Technology Center