diff options
-rw-r--r-- | AUTHORS | 10 | ||||
-rw-r--r-- | COPYING | 19 | ||||
-rw-r--r-- | Makefile.am | 9 | ||||
-rw-r--r-- | NEWS | 40 | ||||
-rw-r--r-- | README | 39 | ||||
-rwxr-xr-x | autogen.sh | 3 | ||||
-rw-r--r-- | configure.ac | 99 | ||||
-rw-r--r-- | src/Makefile.am | 15 | ||||
-rw-r--r-- | src/i965_avc_bsd.c | 2 | ||||
-rw-r--r-- | src/i965_avc_hw_scoreboard.c | 2 | ||||
-rw-r--r-- | src/i965_avc_ildb.c | 1 | ||||
-rw-r--r-- | src/i965_drv_video.c | 2 | ||||
-rw-r--r-- | src/i965_media_h264.c | 1 | ||||
-rw-r--r-- | src/i965_render.c | 2 | ||||
-rw-r--r-- | src/intel_driver.c | 2 | ||||
-rw-r--r-- | src/shaders/Makefile.am | 3 | ||||
-rw-r--r-- | src/shaders/h264/Makefile.am | 3 | ||||
-rw-r--r-- | src/shaders/h264/mc/Makefile.am | 3 | ||||
-rw-r--r-- | src/shaders/mpeg2/Makefile.am | 3 | ||||
-rw-r--r-- | src/shaders/mpeg2/vld/Makefile.am | 4 | ||||
-rw-r--r-- | src/shaders/post_processing/Makefile.am | 3 | ||||
-rw-r--r-- | src/shaders/render/Makefile.am | 3 | ||||
-rw-r--r-- | src/shaders/vme/Makefile.am | 3 |
23 files changed, 257 insertions, 14 deletions
@@ -0,0 +1,10 @@ +Intel Linux graphics team working on the driver: +Chang Zhou +Gwenole Beauchesne +Haihao Xiang (primary author) +Nanhai Zou + +Additional contributors: +Alexander Osin +Damien Lespiau +Edgar Hucek @@ -0,0 +1,19 @@ + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sub license, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice (including the + next paragraph) shall be included in all copies or substantial portions + of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR + ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..099031a --- /dev/null +++ b/Makefile.am @@ -0,0 +1,9 @@ +AUTOMAKE_OPTIONS = foreign + +SUBDIRS = src + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = \ + aclocal.m4 compile config.guess config.sub \ + configure depcomp install-sh ltmain.sh \ + Makefile.in missing @@ -0,0 +1,40 @@ +libva-driver-intel NEWS -- summary of changes. 2011-07-28 +Copyright (C) 2009-2011 Intel Corporation + +Version 1.0.14 - 28.Jul.2011 +* Add H.264 encoding support to Ivy Bridge +* Add support for VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD +* Fix next slice vertical position for MPEG-2 (#38628) +* Fix subpicture scale factor for Y axis +* Fix GPU hang when decoding field coded MPEG-2 picture +* Fix memory leaks (Edgar Hucek) + +Version 1.0.13 - 25.May.2011 +* Add H.264 encoding support to Sandy Bridge +* Add MPEG-2, VC-1 and H.264 decoding support to Ivy Bridge +* Fix thread safety issues + +Version 1.0.11 - 14.Mar.2011 +* Add deinterlacing & scaling support to Sandy Bridge +* Add vaDeriveImage() implementation +* Fix VC-1 decoding for Main/Simple profiles + +Version 1.0.9 - 27.Jan.2011 +* Add VC-1 decoding support to Sandy Bridge + +Version 1.0.8 - 21.Jan.2011 +* Add support for IA44/AI44 subpicture formats (#32868) + +Version 1.0.7 - 17.Dec.2011 +* Add MPEG-2 and H.264 decoding support to Sandy Bridge + +Version 1.0.5 - 02.Sep.2010 +* Add deinterlacing & scaling support to Ironlake + +Version 1.0.4 - 13.Jul.2010 +* Add vaGetImage() implementation +* Add support for RGBA subpictures +* Fix H.264 decoding on Ironlake + +Version 1.0.3 - 10.Jun.2010 +* Add H.264 decoding support to Ironlake @@ -0,0 +1,39 @@ + + libva-driver-intel + VA driver for Intel G45 & HD Graphics family + + Copyright (C) 2009-2011 Intel Corporation + + +License +------- + +Please read the COPYING file available in this package. + + +Overview +-------- + +libva-driver-intel is the VA-API implementation for Intel G45 chipsets +and Intel HD Graphics for Intel Core processor family. + +Platform definitions: +CTG: Cantiga, Intel GMA 4500MHD (GM45) +ILK: Ironlake, Intel HD Graphics for 2010 Intel Core processor family +SNB: Sandybridge, Intel HD Graphics for 2011 Intel Core processor family +IVB: Ivybridge + + +Codecs +------ + +H.264 D ILK+ +H.264 E SNB+ +MPEG-2 D CTG+ +VC-1 D SNB+ + + +Requirements +------------ + +libva >= 1.0.14 diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..9c2f4f6 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,3 @@ +#! /bin/sh +autoreconf -v --install +./configure "$@" diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..18b9ad3 --- /dev/null +++ b/configure.ac @@ -0,0 +1,99 @@ +# intel-driver package version number +m4_define([intel_driver_major_version], [1]) +m4_define([intel_driver_minor_version], [0]) +m4_define([intel_driver_micro_version], [14]) +m4_define([intel_driver_pre_version], [0]) +m4_define([intel_driver_version], + [intel_driver_major_version.intel_driver_minor_version.intel_driver_micro_version]) +m4_if(intel_driver_pre_version, [0], [], [ +m4_append([intel_driver_version], intel_driver_pre_version, [.pre]) +]) + +AC_PREREQ([2.57]) +AC_INIT([intel_driver], [intel_driver_version], [haihao.xiang@intel.com], + [libva-driver-intel]) +AC_CONFIG_SRCDIR([Makefile.am]) +AM_INIT_AUTOMAKE + +AM_CONFIG_HEADER([src/config.h]) + +INTEL_DRIVER_MAJOR_VERSION=intel_driver_major_version +INTEL_DRIVER_MINOR_VERSION=intel_driver_minor_version +INTEL_DRIVER_MICRO_VERSION=intel_driver_micro_version +AC_DEFINE([INTEL_DRIVER_MAJOR_VERSION], [intel_driver_major_version], [Major version of the driver]) +AC_DEFINE([INTEL_DRIVER_MINOR_VERSION], [intel_driver_minor_version], [Minor version of the driver]) +AC_DEFINE([INTEL_DRIVER_MICRO_VERSION], [intel_driver_micro_version], [Micro version of the driver]) +AC_DEFINE([INTEL_DRIVER_PRE_VERSION], [intel_driver_pre_version], [Preversion of the driver]) + +INTEL_DRIVER_LT_LDFLAGS="-avoid-version" +AC_SUBST(INTEL_DRIVER_LT_LDFLAGS) + +dnl Use pretty build output with automake >= 1.11 +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [ + AM_DEFAULT_VERBOSITY=1 + AC_SUBST(AM_DEFAULT_VERBOSITY) +]) + +AC_DISABLE_STATIC +AC_PROG_LIBTOOL +AC_PROG_CC +AM_PROG_CC_C_O + +AC_C_BIGENDIAN +AC_HEADER_STDC +AC_SYS_LARGEFILE + +dnl Check for recent enough DRM +PKG_CHECK_MODULES([DRM], [libdrm >= 2.4.23]) + +dnl Check for gen4asm +PKG_CHECK_MODULES(GEN4ASM, [intel-gen4asm >= 1.2], [gen4asm=yes], [gen4asm=no]) +AM_CONDITIONAL(HAVE_GEN4ASM, test x$gen4asm = xyes) + +dnl Check for VA-API +PKG_CHECK_MODULES(LIBVA_DEPS, [libva]) +PKG_CHECK_MODULES(LIBVA_X11_DEPS, [libva-x11]) + +VA_VERSION=`$PKG_CONFIG --modversion libva` +VA_MAJOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f1` +VA_MINOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f2` +VA_MICRO_VERSION=`echo "$VA_VERSION" | cut -d'.' -f3` +VA_VERSION_STR="$VA_VERSION" + +va_full_version_int=`expr ${VA_MAJOR_VERSION:-0} "*" 1000000 + \ + ${VA_MINOR_VERSION:-0} "*" 10000 + \ + ${VA_MICRO_VERSION:-0} "*" 100 + \ + 0` +VA_DRIVER_INIT_FUNC="__vaDriverInit_${VA_MAJOR_VERSION}_${VA_MINOR_VERSION}" +AC_DEFINE_UNQUOTED([VA_DRIVER_INIT_FUNC], [$VA_DRIVER_INIT_FUNC], + [Define driver entry-point]) + +dnl Check for VA-API drivers path +AC_MSG_CHECKING([for VA drivers path]) +LIBVA_DRIVERS_PATH=`$PKG_CONFIG libva --variable driverdir` +if test -z "$LIBVA_DRIVERS_PATH"; then + LIBVA_DRIVERS_PATH="/usr/lib/xorg/modules/drivers" +fi +AC_MSG_RESULT([$LIBVA_DRIVERS_PATH]) +AC_SUBST(LIBVA_DRIVERS_PATH) + +AC_OUTPUT([ + Makefile + src/Makefile + src/shaders/Makefile + src/shaders/h264/Makefile + src/shaders/h264/mc/Makefile + src/shaders/mpeg2/Makefile + src/shaders/mpeg2/vld/Makefile + src/shaders/post_processing/Makefile + src/shaders/render/Makefile + src/shaders/vme/Makefile +]) + +dnl Print summary +echo +echo $PACKAGE configuration summary: +echo +echo VA-API version ................... : $VA_VERSION_STR +echo VA-API drivers path .............. : $LIBVA_DRIVERS_PATH +echo diff --git a/src/Makefile.am b/src/Makefile.am index 405489b..7a8de4d 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -23,11 +23,9 @@ SUBDIRS = shaders INCLUDES = \ - -I$(top_srcdir) \ - -I$(top_srcdir)/va \ - -I$(top_srcdir)/va/x11 \ -DPTHREADS \ $(DRM_CFLAGS) \ + $(LIBVA_DEPS_CFLAGS) \ $(NULL) driver_cflags = \ @@ -39,7 +37,13 @@ driver_ldflags = \ -module -avoid-version \ -no-undefined \ -Wl,--no-undefined \ + $(NULL) + +driver_libs = \ + -lpthread \ $(DRM_LIBS) -ldrm_intel \ + $(LIBVA_DEPS_LIBS) \ + $(LIBVA_X11_DEPS_LIBS) \ $(NULL) source_c = \ @@ -94,6 +98,9 @@ i965_drv_video_la_LTLIBRARIES = i965_drv_video.la i965_drv_video_ladir = $(LIBVA_DRIVERS_PATH) i965_drv_video_la_CFLAGS = $(driver_cflags) i965_drv_video_la_LDFLAGS = $(driver_ldflags) -i965_drv_video_la_LIBADD = $(top_builddir)/va/libva-x11.la -lpthread +i965_drv_video_la_LIBADD = $(driver_libs) i965_drv_video_la_SOURCES = $(source_c) noinst_HEADERS = $(source_h) + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in config.h.in diff --git a/src/i965_avc_bsd.c b/src/i965_avc_bsd.c index 2fa53fc..9fa9649 100644 --- a/src/i965_avc_bsd.c +++ b/src/i965_avc_bsd.c @@ -30,8 +30,6 @@ #include <string.h> #include <assert.h> -#include "va_backend.h" - #include "intel_batchbuffer.h" #include "intel_driver.h" diff --git a/src/i965_avc_hw_scoreboard.c b/src/i965_avc_hw_scoreboard.c index 3fb7ae3..b17ea83 100644 --- a/src/i965_avc_hw_scoreboard.c +++ b/src/i965_avc_hw_scoreboard.c @@ -30,8 +30,6 @@ #include <string.h> #include <assert.h> -#include "va_backend.h" - #include "intel_batchbuffer.h" #include "intel_driver.h" diff --git a/src/i965_avc_ildb.c b/src/i965_avc_ildb.c index 0518a18..a4277d7 100644 --- a/src/i965_avc_ildb.c +++ b/src/i965_avc_ildb.c @@ -30,7 +30,6 @@ #include <string.h> #include <assert.h> -#include "va_backend.h" #include "intel_batchbuffer.h" #include "intel_driver.h" diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c index 72f82b7..e788bc5 100644 --- a/src/i965_drv_video.c +++ b/src/i965_drv_video.c @@ -32,7 +32,7 @@ #include <string.h> #include <assert.h> -#include "va/x11/va_dricommon.h" +#include <va/va_dricommon.h> #include "intel_driver.h" #include "intel_memman.h" diff --git a/src/i965_media_h264.c b/src/i965_media_h264.c index ddc43de..b31ef0b 100644 --- a/src/i965_media_h264.c +++ b/src/i965_media_h264.c @@ -3,7 +3,6 @@ #include <string.h> #include <assert.h> -#include "va_backend.h" #include "intel_batchbuffer.h" #include "intel_driver.h" diff --git a/src/i965_render.c b/src/i965_render.c index fee7109..ad8de1e 100644 --- a/src/i965_render.c +++ b/src/i965_render.c @@ -37,7 +37,7 @@ #include <assert.h> #include <va/va_backend.h> -#include "va/x11/va_dricommon.h" +#include <va/va_dricommon.h> #include "intel_batchbuffer.h" #include "intel_driver.h" diff --git a/src/intel_driver.c b/src/intel_driver.c index 5ccdfa5..5fd22c9 100644 --- a/src/intel_driver.c +++ b/src/intel_driver.c @@ -29,7 +29,7 @@ #include <assert.h> -#include "va_dricommon.h" +#include <va/va_dricommon.h> #include "intel_batchbuffer.h" #include "intel_memman.h" diff --git a/src/shaders/Makefile.am b/src/shaders/Makefile.am index 17770a9..6669923 100644 --- a/src/shaders/Makefile.am +++ b/src/shaders/Makefile.am @@ -1 +1,4 @@ SUBDIRS = h264 mpeg2 render post_processing vme + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/h264/Makefile.am b/src/shaders/h264/Makefile.am index d6d106b..68a9b59 100644 --- a/src/shaders/h264/Makefile.am +++ b/src/shaders/h264/Makefile.am @@ -1 +1,4 @@ SUBDIRS = mc + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/h264/mc/Makefile.am b/src/shaders/h264/mc/Makefile.am index a4ab3c0..f3be1ed 100644 --- a/src/shaders/h264/mc/Makefile.am +++ b/src/shaders/h264/mc/Makefile.am @@ -182,3 +182,6 @@ clean-local: -rm -f $(INTEL_G4B_GEN5) -rm -f $(INTEL_MC_G4B_GEN5) $(INTEL_MC_EXPORT_GEN5) endif + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/mpeg2/Makefile.am b/src/shaders/mpeg2/Makefile.am index e5c6e7f..9795594 100644 --- a/src/shaders/mpeg2/Makefile.am +++ b/src/shaders/mpeg2/Makefile.am @@ -1 +1,4 @@ SUBDIRS = vld + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/mpeg2/vld/Makefile.am b/src/shaders/mpeg2/vld/Makefile.am index ff534fe..0413054 100644 --- a/src/shaders/mpeg2/vld/Makefile.am +++ b/src/shaders/mpeg2/vld/Makefile.am @@ -1,4 +1,3 @@ - INTEL_G4I = addidct.g4i \ do_iq_intra.g4i \ do_iq_non_intra.g4i \ @@ -88,3 +87,6 @@ clean-local: -rm -f $(INTEL_G4B) -rm -f $(INTEL_G4B_GEN5) endif + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/post_processing/Makefile.am b/src/shaders/post_processing/Makefile.am index e5af86b..762c3ce 100644 --- a/src/shaders/post_processing/Makefile.am +++ b/src/shaders/post_processing/Makefile.am @@ -140,3 +140,6 @@ clean-local: -rm -f $(INTEL_PP_G6B) endif + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/render/Makefile.am b/src/shaders/render/Makefile.am index a571ea2..b3a8c23 100644 --- a/src/shaders/render/Makefile.am +++ b/src/shaders/render/Makefile.am @@ -87,3 +87,6 @@ clean-local: -rm -f $(INTEL_G6B) -rm -f $(INTEL_G7B) endif + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in diff --git a/src/shaders/vme/Makefile.am b/src/shaders/vme/Makefile.am index e1097a7..5252ff9 100644 --- a/src/shaders/vme/Makefile.am +++ b/src/shaders/vme/Makefile.am @@ -35,3 +35,6 @@ clean-local: -rm -f $(INTEL_G7B) endif + +# Extra clean files so that maintainer-clean removes *everything* +MAINTAINERCLEANFILES = Makefile.in |