Gwenole Beauchesne [Mon, 22 Aug 2011 14:18:45 +0000 (16:18 +0200)]
New project build rules and files.
Gwenole Beauchesne [Mon, 22 Aug 2011 09:18:04 +0000 (11:18 +0200)]
Moved files around.
Gwenole Beauchesne [Tue, 26 Jul 2011 11:48:25 +0000 (19:48 +0800)]
i965_drv_video: don't export internal driver functions.
Make sure to use our internal functions. In particular, we override
some DRM functions and they have to be used. e.g. this fixes VA/GLX.
Gwenole Beauchesne [Wed, 20 Jul 2011 11:10:08 +0000 (13:10 +0200)]
i965_drv_video: cosmetics (cleanup Makefile).
Xiang, Haihao [Tue, 12 Jul 2011 07:28:29 +0000 (15:28 +0800)]
i965_drv_video: update post processing interface
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 8 Jul 2011 02:54:31 +0000 (10:54 +0800)]
i965_drv_video: fixes assertion failure
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 7 Jul 2011 07:55:58 +0000 (15:55 +0800)]
i965_drv_video: fix next slice vertical position for field picture
This fixes https://bugs.freedesktop.org/show_bug.cgi?id=38628
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Gwenole Beauchesne [Tue, 28 Jun 2011 01:30:21 +0000 (18:30 -0700)]
i965_drv_video: add support for VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD.
Gwenole Beauchesne [Tue, 28 Jun 2011 04:19:51 +0000 (21:19 -0700)]
i965_drv_video: fix subpicture scale factor for Y axis.
Gwenole Beauchesne [Tue, 28 Jun 2011 00:02:58 +0000 (17:02 -0700)]
i965_drv_video: simplify put_surface() and put_subpicture() args.
Xiang, Haihao [Wed, 15 Jun 2011 01:11:26 +0000 (09:11 +0800)]
i965_drv_video: fix assertion failure
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 14 Jun 2011 01:49:44 +0000 (09:49 +0800)]
i965_drv_video: fix GPU hang issue when decoding field coded MPEG2 picture.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Edgar Hucek [Mon, 13 Jun 2011 05:43:37 +0000 (13:43 +0800)]
i965_drv_video: fix memory leaks in i965 driver
Signed-off-by: Edgar Hucek <gimli@dark-green.com>
Xiang, Haihao [Mon, 13 Jun 2011 04:46:16 +0000 (12:46 +0800)]
i965_drv_video: track the internal format of a surface
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 10 Jun 2011 02:48:16 +0000 (10:48 +0800)]
i965_drv_video: encode on Ivybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 9 Jun 2011 08:22:03 +0000 (16:22 +0800)]
i965_drv_video: fix VME shaders
1. The response length for inter type on Ivybridge is 6.
2. fix register region
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 9 Jun 2011 05:13:24 +0000 (13:13 +0800)]
i965_drv_video: new shaders for VME on Ivybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 9 Jun 2011 01:56:16 +0000 (09:56 +0800)]
i965_drv_video: set surface base address in VME
It is easy to fill the binding table without relocation and make sure
all offsets in binding table only uses bits[15:0]
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 26 May 2011 02:33:47 +0000 (10:33 +0800)]
i965_drv_video: clean up
Don't emit PIPE_CONTROL directly, instead call intel_batchbuffer_emit_mi_flush.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Alexander Osin [Tue, 7 Jun 2011 18:35:33 +0000 (22:35 +0400)]
i965_drv_video: Added check of obj_surface->bo field inside i965_media_h264_surface_state()
Zhou Chang [Wed, 1 Jun 2011 08:01:14 +0000 (16:01 +0800)]
i965_drv_video: improved MV quality for VME
Xiang, Haihao [Wed, 25 May 2011 06:14:42 +0000 (14:14 +0800)]
i965_drv_video: clean up codes
Check and allocate surface BO in a same function
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 25 May 2011 04:55:46 +0000 (12:55 +0800)]
i965_drv_video: rendering for Ivybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 25 May 2011 01:32:50 +0000 (09:32 +0800)]
i965_drv_video: new shaders for rendering on Ivybridge
SEND on Ivybridge uses GRFs instead of MRFs
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 25 May 2011 01:27:07 +0000 (09:27 +0800)]
i965_drv_video: VC1 decoding on Ivybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 25 May 2011 01:24:08 +0000 (09:24 +0800)]
i965_drv_video: H.264 & MPEG2 decoding on Ivybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 17 May 2011 09:00:22 +0000 (17:00 +0800)]
i965_drv_video: Ivybridge PCI IDs
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 16 May 2011 01:49:01 +0000 (09:49 +0800)]
i965_drv_video: thread safety for object allocation
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 13 May 2011 07:45:22 +0000 (15:45 +0800)]
i965_drv_vidoe: thread safety for rendering
Xiang, Haihao [Fri, 13 May 2011 05:17:58 +0000 (13:17 +0800)]
i965_drv_video: move batchbuffer to context
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 12 May 2011 08:00:30 +0000 (16:00 +0800)]
i965_drv_video: clean up batchbuffer interface
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 10 May 2011 05:06:22 +0000 (13:06 +0800)]
i965_drv_video: store post process parameters in context
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 10 May 2011 04:52:05 +0000 (12:52 +0800)]
i965_drv_video: store kernel info in the corresponding context
Xiang, Haihao [Tue, 10 May 2011 04:45:56 +0000 (12:45 +0800)]
i965_drv_video: use the same structure for all kernels
Xiang, Haihao [Tue, 10 May 2011 04:49:54 +0000 (12:49 +0800)]
i965_drv_video: create media_state per context
Also clean up some codes
Alexander I Osin [Thu, 28 Apr 2011 15:52:55 +0000 (18:52 +0300)]
Implemented i965_LockSurface, i965_UnlockSurface, i965_BufferInfo
Alexander I Osin [Thu, 28 Apr 2011 15:53:55 +0000 (18:53 +0300)]
Added locked_image_id in struct object_surface
Xiang, Haihao [Tue, 26 Apr 2011 08:10:22 +0000 (16:10 +0800)]
Merge branch 'snb-encoder'
Xiang, Haihao [Tue, 26 Apr 2011 05:26:38 +0000 (13:26 +0800)]
i965_drv_video/encode: offset for coded buffer
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 05:23:09 +0000 (13:23 +0800)]
i965_drv_video/encode: indentation fix
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 05:09:03 +0000 (13:09 +0800)]
i965_drv_video/encode: media read with sampler cache
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 04:15:15 +0000 (12:15 +0800)]
i965_drv_video/video: set base address for MV data
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 02:20:59 +0000 (10:20 +0800)]
i965_drv_video/encode: merge global symbols in intra/inter shader
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 02:01:02 +0000 (10:01 +0800)]
i965_drv_video/encode: remove all intra data in inter shader
Need to revert this commit if select inter-intra mixed mode for P/B frame
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 01:53:25 +0000 (09:53 +0800)]
i965_drv_video: clean up gen6_mfc_avc_pipeline_programing
don't need to map VME output for inter frame
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 01:43:11 +0000 (09:43 +0800)]
i965_drv_video/encode: merge the object command for intra/inter frame
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 01:37:20 +0000 (09:37 +0800)]
i965_drv_video/encode: also simplify the object command for inter frame
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 22 Apr 2011 01:30:32 +0000 (09:30 +0800)]
i965_drv_video/encode: reduce inline data for inter shader
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 21 Apr 2011 05:17:00 +0000 (13:17 +0800)]
i965_drv_video: simplify the object command for intra frame
fixes some comments in intra_frame.asm as well.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 21 Apr 2011 04:56:28 +0000 (12:56 +0800)]
i965_drv_video/encode: fetch neighbor pixel in intra shader
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 21 Apr 2011 04:53:39 +0000 (12:53 +0800)]
i965_drv_video/encode: fix neighbor pixel luma value in VME message
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 21 Apr 2011 05:23:56 +0000 (13:23 +0800)]
i965_drv_video/encode: fix macroblock instra struct in VME message
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 14 Apr 2011 07:32:03 +0000 (15:32 +0800)]
i965_drv_video/encode: fix interface descriptor table
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Zhou Chang [Thu, 14 Apr 2011 05:37:45 +0000 (13:37 +0800)]
add inter frame support in vme.
Xiang, Haihao [Thu, 14 Apr 2011 05:29:14 +0000 (13:29 +0800)]
i965_drv_video/encode: fix CURBE usage for VME
This fixes a potential GPU hang issue
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 11 Apr 2011 02:13:17 +0000 (10:13 +0800)]
i965_drv_video: fix the format of a derived image for MPEG2 on ILK
The native format used for MPEG2 decoding on ILK is I420
Xiang, Haihao [Mon, 11 Apr 2011 01:04:37 +0000 (09:04 +0800)]
i965_drv_video: associate the derived image with the surface
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Zhou Chang [Wed, 6 Apr 2011 02:31:39 +0000 (10:31 +0800)]
disabling cabac zeros words inert, using 0x00000000 as end of bit streaming flag.
Zhou Chang [Sat, 2 Apr 2011 08:47:41 +0000 (16:47 +0800)]
Support Inter frames in driver.
Xiang, Haihao [Sat, 2 Apr 2011 08:16:04 +0000 (16:16 +0800)]
fix for VAEncCodedBufferType
It matches VA spec.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Sat, 2 Apr 2011 05:54:53 +0000 (13:54 +0800)]
Workaround for 720p/1080p encoding
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Sat, 2 Apr 2011 04:38:36 +0000 (12:38 +0800)]
release all BOs when terminating
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Sat, 2 Apr 2011 04:05:10 +0000 (12:05 +0800)]
fix internal buffer size
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Sat, 2 Apr 2011 04:02:57 +0000 (12:02 +0800)]
fix for interface descriptor
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Zhou Chang [Fri, 1 Apr 2011 07:07:46 +0000 (15:07 +0800)]
i965_drv_vidoe: Encoder on Sandy Bridge
Currently it supports Intra frame
Signed-off-by: Zhou Chang <chang.zhou@intel.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Austin Yuan [Fri, 1 Apr 2011 03:34:47 +0000 (11:34 +0800)]
1. add interface VARenderDevice for output the video into an external device when the WM is not aware of it
2. add interface VARenderMode for APP to swith between overlay and GPU post-processing
3. add VADisplayAttribOverlayColorKey/VADisplayAttribOverlayAutoPaintColorKey which is simliar to Xv for overlay post-processing
4. fix the build issue on Android 2.3
Signed-off-by: Austin Yuan <shengquan.yuan@gmail.com>
Signed-off-by: Jason Hu <jason.hu@intel.com>
Signed-off-by: Zhaohan Ren <zhaohan.ren@intel.com>
Xiang, Haihao [Mon, 14 Mar 2011 05:05:57 +0000 (13:05 +0800)]
i965_drv_video/VC1: fix for single intensity compensation parameter setting
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 14 Mar 2011 01:52:54 +0000 (09:52 +0800)]
i965_drv_video/VC1: fix data offset for Main/Simple profile
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 11 Mar 2011 07:49:09 +0000 (15:49 +0800)]
i965_drv_video/VC1: disable overlap if PQUANT is less than 9 in Main/Simple profile
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 11 Mar 2011 04:54:47 +0000 (12:54 +0800)]
i965_drv_video: Fixes the dimension of a surface on SandyBridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 11 Mar 2011 03:24:22 +0000 (11:24 +0800)]
i965_drv_video: rendere I420/YV12 surface on SandyBridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 11 Mar 2011 03:10:48 +0000 (11:10 +0800)]
i965_drv_video: only use tiled surface for NV12 on SandyBridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 10 Mar 2011 06:17:20 +0000 (14:17 +0800)]
i965_drv_video: deinterlacing & scaling on SandyBridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 10 Mar 2011 05:56:31 +0000 (13:56 +0800)]
i965_drv_video: shaders for post processing on SandyBridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 15 Feb 2011 08:07:04 +0000 (16:07 +0800)]
i965_drv_video: move pp_context to i965_driver_data and make it a pointer.
Later media_state/render_state/pp_context will be moved to object_context.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 10 Mar 2011 05:02:36 +0000 (13:02 +0800)]
i965_drv_video: don't support MPEG2/VC1/H264 without BSD support on SandyBridge.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 10 Mar 2011 02:26:23 +0000 (10:26 +0800)]
i965_drv_video: Implement vaDeriveImage()
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 7 Mar 2011 07:43:08 +0000 (15:43 +0800)]
i965_drv_video: map/unmap a tiled GEM BO
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Thu, 24 Feb 2011 07:22:46 +0000 (15:22 +0800)]
i965_dri_video: don't try to render an invalid surface
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Gwenole Beauchesne [Thu, 27 Jan 2011 09:41:24 +0000 (10:41 +0100)]
i965_drv_video: make VADriverContext.vtable a pointer.
Gwenole Beauchesne [Thu, 27 Jan 2011 09:04:03 +0000 (10:04 +0100)]
Bump VA-API version to 0.32.0. Fix __vaDriverInit*() function name.
Osin, Alexander I [Wed, 9 Feb 2011 01:17:17 +0000 (09:17 +0800)]
i965_drv_video: set the number of elements in a buffer store.
Xiang, Haihao [Tue, 1 Feb 2011 04:30:28 +0000 (12:30 +0800)]
i965_drv_video: check frame store index firstly on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Gwenole Beauchesne [Thu, 27 Jan 2011 03:36:07 +0000 (11:36 +0800)]
[G45] Fix check for H.264 decoding support.
Gwenole Beauchesne [Thu, 27 Jan 2011 03:09:31 +0000 (11:09 +0800)]
[G45] Fix check for VC-1 decoding support
Xiang, Haihao [Wed, 26 Jan 2011 16:44:43 +0000 (00:44 +0800)]
i965_drv_video: VC-1 on Sandybridge
Currently support progressive picture.
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Fri, 21 Jan 2011 01:35:46 +0000 (09:35 +0800)]
i965_drv_video: build shaders for decoding & post proscessing
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Singed-off-by: Chen, Yangyang <yangyang.chen@intel.com>
Singed-off-by: Han, Haofu <haofu.han@intel.com>
Xiang, Haihao [Mon, 10 Jan 2011 02:19:00 +0000 (10:19 +0800)]
i965_drv_video: support IA44/AI44 subpicture formats on Sandybridge
This fixes https://bugs.freedesktop.org/show_bug.cgi?id=32868
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Damien Lespiau [Thu, 16 Dec 2010 16:12:50 +0000 (00:12 +0800)]
i965_drv_video: Fix a small typo in a comment
Obviousy 50 - 2 + 8 != 2, 50 - 2 + 8 - 2 seems to be 54 though.
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Xiang, Haihao [Tue, 16 Nov 2010 06:49:16 +0000 (14:49 +0800)]
i965_drv_video/mpeg2: upload Quantizer Matrix in raster order on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 16 Nov 2010 02:15:56 +0000 (10:15 +0800)]
i965_drv_video: fix mpeg2 decoding on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 16 Nov 2010 01:20:05 +0000 (09:20 +0800)]
i965_drv_video: Enable BLT ring
Use BLT ring to clear background
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 15 Nov 2010 07:05:29 +0000 (15:05 +0800)]
i965_drv_video: release mfd context
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Mon, 15 Nov 2010 07:15:57 +0000 (15:15 +0800)]
i965_drv_video: add support for mpeg2 decoding on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 10 Nov 2010 05:56:45 +0000 (13:56 +0800)]
i965_drv_video/render: render sub-picture on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Wed, 10 Nov 2010 02:48:12 +0000 (10:48 +0800)]
i965_drv_video: Currently only use tiled-Y surfaces on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 9 Nov 2010 08:56:13 +0000 (16:56 +0800)]
i965_drv_video: fix row data buffer for deblocking on Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 9 Nov 2010 05:30:39 +0000 (13:30 +0800)]
i965_drv_video: fix surface dimension
It is needed for Y-tiled surface
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 9 Nov 2010 05:08:47 +0000 (13:08 +0800)]
i965_drv_video/render: rendering for Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Xiang, Haihao [Tue, 9 Nov 2010 05:07:50 +0000 (13:07 +0800)]
i965_drv_video/render: new fragmensts for Sandybridge
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>