rpms/xorg-x11-drv-i810/devel intel-2.4.2-git-diffs.patch, NONE, 1.1 xorg-x11-drv-i810.spec, 1.100, 1.101 intel-2.1.1-disable-ttm.patch, 1.1, NONE intel-2.2.0-xaadefault.patch, 1.1, NONE intel-2.4.0-no-mm.patch, 1.1, NONE intel-master.patch, 1.1, NONE
Dave Airlie
airlied at fedoraproject.org
Thu Aug 28 12:11:58 UTC 2008
- Previous message (by thread): rpms/dtc/F-9 .cvsignore,1.6,1.7 dtc.spec,1.8,1.9 sources,1.6,1.7
- Next message (by thread): rpms/perl-Geo-IP/F-8 .cvsignore, 1.3, 1.4 perl-Geo-IP.spec, 1.2, 1.3 sources, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: airlied
Update of /cvs/pkgs/rpms/xorg-x11-drv-i810/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv6874
Modified Files:
xorg-x11-drv-i810.spec
Added Files:
intel-2.4.2-git-diffs.patch
Removed Files:
intel-2.1.1-disable-ttm.patch intel-2.2.0-xaadefault.patch
intel-2.4.0-no-mm.patch intel-master.patch
Log Message:
* Thu Aug 28 2008 Dave Airlie <airlied at redhat.com> 2.4.2-2
- upgrade to git head - brings in modesetting + GEM bits
intel-2.4.2-git-diffs.patch:
--- NEW FILE intel-2.4.2-git-diffs.patch ---
diff --git a/Makefile.am b/Makefile.am
index b2398a8..5db07de 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,7 +19,7 @@
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
AUTOMAKE_OPTIONS = foreign
-SUBDIRS = src man
+SUBDIRS = uxa src man
EXTRA_DIST = README
DISTCLEANFILES = doltcompile
diff --git a/configure.ac b/configure.ac
index 809e84d..e276f0e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-video-intel],
- 2.4.2,
+ 2.5.96.0,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-video-intel)
@@ -85,12 +85,17 @@ XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto)
# Checks for pkg-config packages
PKG_CHECK_MODULES(XORG, [xorg-server xproto fontsproto $REQUIRED_MODULES])
sdkdir=$(pkg-config --variable=sdkdir xorg-server)
+drm_cflags=$(pkg-config --cflags libdrm)
# Checks for libraries.
# Checks for header files.
AC_HEADER_STDC
+save_CFLAGS="$CFLAGS"
+CFLAGS="$XORG_CFLAGS $DRI_CFLAGS $drm_cflags"
+CPPFLAGS="$XORG_CFLAGS $DRI_CFLAGS $drm_cflags"
+AC_MSG_CHECKING([whether to include DRI support])
if test x$DRI != xno; then
AC_CHECK_FILE([${sdkdir}/dri.h],
[have_dri_h="yes"], [have_dri_h="no"])
@@ -100,6 +105,12 @@ if test x$DRI != xno; then
[have_dristruct_h="yes"], [have_dristruct_h="no"])
AC_CHECK_FILE([${sdkdir}/damage.h],
[have_damage_h="yes"], [have_damage_h="no"])
+ AC_CHECK_HEADER(xf86drmMode.h,
+ [DRM_MODE=yes],[DRM_MODE=no]
+ [#include "stdint.h"])
+ if test "x$DRM_MODE" = xyes; then
+ AC_DEFINE(XF86DRM_MODE,1,[DRM kernel modesetting])
+ fi
fi
AC_MSG_CHECKING([whether to include DRI support])
if test x$DRI = xauto; then
@@ -113,8 +124,6 @@ if test x$DRI = xauto; then
fi
AC_MSG_RESULT([$DRI])
-save_CFLAGS="$CFLAGS"
-CFLAGS="$XORG_CFLAGS"
AC_CHECK_HEADER(xf86Modes.h,[XMODES=yes],[XMODES=no],[#include "xorg-server.h"])
AC_CHECK_DECL(XSERVER_LIBPCIACCESS,
[XSERVER_LIBPCIACCESS=yes],[XSERVER_LIBPCIACCESS=no],
@@ -174,6 +183,8 @@ else
fi
AC_SUBST([XMODES_CFLAGS])
+UXA_CFLAGS='-I$(top_srcdir)/uxa'
+AC_SUBST([UXA_CFLAGS])
SAVE_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $XORG_CFLAGS"
@@ -197,9 +208,10 @@ if test "x$GCC" = "xyes"; then
-Wnested-externs -fno-strict-aliasing"
fi
+PKG_CHECK_MODULES(DRM, [libdrm >= 2.4.0])
AM_CONDITIONAL(DRI, test x$DRI = xyes)
if test "$DRI" = yes; then
- PKG_CHECK_MODULES(DRI, [libdrm xf86driproto glproto])
+ PKG_CHECK_MODULES(DRI, [xf86driproto glproto])
AC_DEFINE(XF86DRI,1,[Enable DRI driver support])
AC_DEFINE(XF86DRI_DEVEL,1,[Enable developmental DRI driver support])
PKG_CHECK_MODULES(DRI_MM, [libdrm >= 2.4.0],[DRI_MM=yes], [DRI_MM=no])
@@ -209,17 +221,6 @@ if test "$DRI" = yes; then
if test "$have_damage_h" = yes; then
AC_DEFINE(DAMAGE,1,[Use Damage extension])
fi
-
- save_CFLAGS="$CFLAGS"
- CFLAGS="$XORG_CFLAGS $DRI_CFLAGS"
- AC_CHECK_TYPE(drm_i915_flip_t,
- [AC_DEFINE(HAVE_I915_FLIP, 1,
- [Have drm_i915_flip_t and related definitions])],
- [], [
-#include <inttypes.h>
-#include <i915_drm.h>
-])
- CFLAGS="$save_CFLAGS"
fi
AM_CONDITIONAL(VIDEO_DEBUG, test x$VIDEO_DEBUG = xyes)
@@ -262,6 +263,7 @@ XORG_CHECK_LINUXDOC
AC_OUTPUT([
Makefile
+ uxa/Makefile
src/Makefile
src/xvmc/Makefile
src/bios_reader/Makefile
diff --git a/src/Makefile.am b/src/Makefile.am
index 594416d..97feea4 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -30,13 +30,14 @@ SUBDIRS = xvmc bios_reader ch7017 ch7xxx ivch sil164 tfp410 $(REGDUMPER)
# _ladir passes a dummy rpath to libtool so the thing will actually link
# TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc.
-AM_CFLAGS = @WARN_CFLAGS@ @XORG_CFLAGS@ @DRI_CFLAGS@ @PCIACCESS_CFLAGS@ \
- @XMODES_CFLAGS@ -DI830_XV -DI830_USE_XAA -DI830_USE_EXA
+AM_CFLAGS = @WARN_CFLAGS@ @XORG_CFLAGS@ @DRM_CFLAGS@ @DRI_CFLAGS@ \
+ @PCIACCESS_CFLAGS@ @UXA_CFLAGS@ \
+ @XMODES_CFLAGS@ -DI830_XV -DI830_USE_XAA -DI830_USE_EXA -DI830_USE_UXA
intel_drv_la_LTLIBRARIES = intel_drv.la
intel_drv_la_LDFLAGS = -module -avoid-version
intel_drv_ladir = @moduledir@/drivers
-intel_drv_la_LIBADD =
+intel_drv_la_LIBADD = -lm ../uxa/libuxa.la
if XSERVER_LIBPCIACCESS
intel_drv_la_LIBADD += @PCIACCESS_LIBS@
endif
@@ -93,6 +94,8 @@ intel_drv_la_SOURCES = \
i830_accel.c \
i830_bios.c \
i830_bios.h \
+ i830_batchbuffer.c \
+ i830_batchbuffer.h \
i830_common.h \
i830_crt.c \
i830_cursor.c \
@@ -127,7 +130,9 @@ intel_drv_la_SOURCES = \
i830_xaa.c \
i830_render.c \
i915_render.c \
- i965_render.c
+ i965_render.c \
+ drmmode_display.c \
+ drmmode_display.h
INTEL_G4A = \
packed_yuv_sf.g4a \
@@ -154,7 +159,6 @@ INTEL_G4I = \
exa_wm.g4i \
exa_wm_affine.g4i \
exa_wm_projective.g4i
-
INTEL_G4B = \
packed_yuv_sf.g4b \
@@ -176,7 +180,7 @@ INTEL_G4B = \
exa_wm_write.g4b \
exa_wm_yuv_rgb.g4b \
exa_wm_xy.g4b
-
+
EXTRA_DIST = \
$(XMODE_SRCS) \
$(INTEL_G4A) \
diff --git a/src/bios_reader/Makefile.am b/src/bios_reader/Makefile.am
index c4da957..c85081e 100644
--- a/src/bios_reader/Makefile.am
+++ b/src/bios_reader/Makefile.am
@@ -1,6 +1,6 @@
AM_CFLAGS = @WARN_CFLAGS@ @XORG_CFLAGS@ @XMODES_CFLAGS@ @PCIACCESS_CFLAGS@
-noinst_PROGRAMS = bios_reader $(BIOS_DUMPER)
+noinst_PROGRAMS = bios_reader $(BIOS_DUMPER) $(SWF_DUMPER)
if LIBPCIACCESS
BIOS_DUMPER = bios_dumper
@@ -9,4 +9,10 @@ bios_dumper_SOURCES = bios_dumper.c
bios_dumper_LDADD = $(PCIACCESS_LIBS)
+SWF_DUMPER = swf_dumper
+
+swf_dumper_SOURCES = swf_dumper.c
+
+swf_dumper_LDADD = $(PCIACCESS_LIBS)
+
endif
diff --git a/src/bios_reader/bios_reader.c b/src/bios_reader/bios_reader.c
index dbcd150..9e05317 100644
--- a/src/bios_reader/bios_reader.c
+++ b/src/bios_reader/bios_reader.c
[...11102 lines suppressed...]
+ * call, to the rectangle from (dstX, dstY) to (dstX + width, dstY + height)
+ * in the destination Pixmap. Note that if a transformation was set on
+ * the source or mask Pictures, the source rectangles may not be the same
+ * size as the destination rectangles and filtering. Getting the coordinate
+ * transformation right at the subpixel level can be tricky, and rendercheck
+ * can test this for you.
+ *
+ * This call is required if prepare_composite() ever succeeds.
+ */
+ void (*composite) (PixmapPtr pDst,
+ int srcX,
+ int srcY,
+ int maskX,
+ int maskY,
+ int dstX,
+ int dstY,
+ int width,
+ int height);
+
+ /**
+ * done_composite() finishes a set of composite operations.
+ *
+ * @param pPixmap destination pixmap.
+ *
+ * The done_composite() call is called at the end of a series of consecutive
+ * composite() calls following a successful prepare_composite(). This allows
+ * drivers to finish up emitting drawing commands that were buffered, or
+ * clean up state from prepare_composite().
+ *
+ * This call is required if prepare_composite() ever succeeds.
+ */
+ void (*done_composite) (PixmapPtr pDst);
+ /** @} */
+
+ /**
+ * put_image() loads a rectangle of data from src into pDst.
+ *
+ * @param pDst destination pixmap
+ * @param x destination X coordinate.
+ * @param y destination Y coordinate
+ * @param width width of the rectangle to be copied
+ * @param height height of the rectangle to be copied
+ * @param src pointer to the beginning of the source data
+ * @param src_pitch pitch (in bytes) of the lines of source data.
+ *
+ * put_image() copies data in system memory beginning at src (with
+ * pitch src_pitch) into the destination pixmap from (x, y) to
+ * (x + width, y + height). This is typically done with hostdata uploads,
+ * where the CPU sets up a blit command on the hardware with instructions
+ * that the blit data will be fed through some sort of aperture on the card.
+ *
+ * put_image() is most important for the performance of uxa_glyphs()
+ * (antialiased font drawing) by allowing pipelining of data uploads,
+ * avoiding a sync of the card after each glyph.
+ *
+ * @return TRUE if the driver successfully uploaded the data. FALSE
+ * indicates that UXA should fall back to doing the upload in software.
+ *
+ * put_image() is not required, but is recommended if composite
+ * acceleration is supported.
+ */
+ Bool (*put_image) (PixmapPtr pDst,
+ int x,
+ int y,
+ int w,
+ int h,
+ char *src,
+ int src_pitch);
+
+ /**
+ * get_image() loads a rectangle of data from pSrc into dst
+ *
+ * @param pSrc source pixmap
+ * @param x source X coordinate.
+ * @param y source Y coordinate
+ * @param width width of the rectangle to be copied
+ * @param height height of the rectangle to be copied
+ * @param dst pointer to the beginning of the destination data
+ * @param dst_pitch pitch (in bytes) of the lines of destination data.
+ *
+ * get_image() copies data from offscreen memory in pSrc from
+ * (x, y) to (x + width, y + height), to system memory starting at
+ * dst (with pitch dst_pitch). This would usually be done
+ * using scatter-gather DMA, supported by a DRM call, or by blitting to AGP
+ * and then synchronously reading from AGP. Because the implementation
+ * might be synchronous, UXA leaves it up to the driver to call
+ * uxa_mark_sync() if get_image() was asynchronous. This is in
+ * contrast to most other acceleration calls in UXA.
+ *
+ * @return TRUE if the driver successfully downloaded the data. FALSE
+ * indicates that UXA should fall back to doing the download in software.
+ *
+ * get_image() is not required, but is highly recommended.
+ */
+ Bool (*get_image)(PixmapPtr pSrc,
+ int x, int y,
+ int w, int h,
+ char *dst, int dst_pitch);
+
+ /** @{ */
+ /**
+ * prepare_access() is called before CPU access to an offscreen pixmap.
+ *
+ * @param pPix the pixmap being accessed
+ * @param index the index of the pixmap being accessed.
+ *
+ * prepare_access() will be called before CPU access to an offscreen pixmap.
+ * This can be used to set up hardware surfaces for byteswapping or
+ * untiling, or to adjust the pixmap's devPrivate.ptr for the purpose of
+ * making CPU access use a different aperture.
+ *
+ * The index is one of #UXA_PREPARE_DEST, #UXA_PREPARE_SRC, or
+ * #UXA_PREPARE_MASK, indicating which pixmap is in question. Since only up
+ * to three pixmaps will have prepare_access() called on them per operation,
+ * drivers can have a small, statically-allocated space to maintain state
+ * for prepare_access() and finish_access() in. Note that the same pixmap may
+ * have prepare_access() called on it more than once, for uxample when doing
+ * a copy within the same pixmap (so it gets prepare_access as()
+ * #UXA_PREPARE_DEST and then as #UXA_PREPARE_SRC).
+ *
+ * prepare_access() may fail. An uxample might be the case of hardware that
+ * can set up 1 or 2 surfaces for CPU access, but not 3. If prepare_access()
+ * fails, UXA will migrate the pixmap to system memory.
+ * get_image() must be implemented and must not fail if a driver
+ * wishes to fail in prepare_access(). prepare_access() must not fail when
+ * pPix is the visible screen, because the visible screen can not be
+ * migrated.
+ *
+ * @return TRUE if prepare_access() successfully prepared the pixmap for CPU
+ * drawing.
+ * @return FALSE if prepare_access() is unsuccessful and UXA should use
+ * get_image() to migate the pixmap out.
+ */
+ Bool (*prepare_access)(PixmapPtr pPix, uxa_access_t access);
+
+ /**
+ * finish_access() is called after CPU access to an offscreen pixmap.
+ *
+ * @param pPix the pixmap being accessed
+ * @param index the index of the pixmap being accessed.
+ *
+ * finish_access() will be called after finishing CPU access of an offscreen
+ * pixmap set up by prepare_access(). Note that the finish_access() will not be
+ * called if prepare_access() failed.
+ */
+ void (*finish_access)(PixmapPtr pPix);
+
+ /**
+ * PixmapIsOffscreen() is an optional driver replacement to
+ * uxa_pixmap_is_offscreen(). Set to NULL if you want the standard behaviour
+ * of uxa_pixmap_is_offscreen().
+ *
+ * @param pPix the pixmap
+ * @return TRUE if the given drawable is in framebuffer memory.
+ *
+ * uxa_pixmap_is_offscreen() is used to determine if a pixmap is in offscreen
+ * memory, meaning that acceleration could probably be done to it, and that it
+ * will need to be wrapped by prepare_access()/finish_access() when accessing it
+ * with the CPU.
+ *
+ *
+ */
+ Bool (*pixmap_is_offscreen)(PixmapPtr pPix);
+
+ /** @} */
+} uxa_driver_t;
+
+/** @name UXA driver flags
+ * @{
+ */
+/**
+ * UXA_TWO_BITBLT_DIRECTIONS indicates to UXA that the driver can only
+ * support copies that are (left-to-right, top-to-bottom) or
+ * (right-to-left, bottom-to-top).
+ */
+#define UXA_TWO_BITBLT_DIRECTIONS (1 << 2)
+
+/** @} */
+
+uxa_driver_t *
+uxa_driver_alloc(void);
+
+Bool
+uxa_driver_init(ScreenPtr screen, uxa_driver_t *uxa_driver);
+
+void
+uxa_driver_fini(ScreenPtr pScreen);
+
+CARD32
+uxa_get_pixmap_first_pixel (PixmapPtr pPixmap);
+
+/**
+ * Returns TRUE if the given planemask covers all the significant bits in the
+ * pixel values for pDrawable.
+ */
+#define UXA_PM_IS_SOLID(_pDrawable, _pm) \
+ (((_pm) & FbFullMask((_pDrawable)->depth)) == \
+ FbFullMask((_pDrawable)->depth))
+
+#endif /* UXA_H */
Index: xorg-x11-drv-i810.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-i810/devel/xorg-x11-drv-i810.spec,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -r1.100 -r1.101
--- xorg-x11-drv-i810.spec 26 Aug 2008 16:49:27 -0000 1.100
+++ xorg-x11-drv-i810.spec 28 Aug 2008 12:11:28 -0000 1.101
@@ -6,7 +6,7 @@
Summary: Xorg X11 Intel video driver(s)
Name: xorg-x11-drv-i810
Version: 2.4.2
-Release: 1%{?dist}
+Release: 2%{?dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X Hardware Support
@@ -20,15 +20,8 @@
Source2: i810.xinf
Source3: intel-stub.c
+Patch1: intel-2.4.2-git-diffs.patch
Patch3: intel-2.1.1-fix-xv-reset.patch
-Patch8: intel-2.1.1-disable-ttm.patch
-
-# EXA on 965 without DRI is broken - fix for now so installer can run
-# Actually no, let's shake this out again.
-Patch9: intel-2.2.0-xaadefault.patch
-
-Patch100: intel-master.patch
-Patch101: intel-2.4.0-no-mm.patch
ExclusiveArch: %{ix86} x86_64 ia64
@@ -58,11 +51,8 @@
%prep
%setup -q -n xf86-video-intel-%{version}
+%patch1 -p1 -b .gitupdate
%patch3 -p1 -b .xvfix
-%patch8 -p1 -b .disablettm
-#patch9 -p1 -b .xaadefault
-#patch100 -p1 -b .intel-master
-%patch101 -p1 -b .no-mm
%build
@@ -105,6 +95,9 @@
%{_libdir}/libIntelXvMC.so
%changelog
+* Thu Aug 28 2008 Dave Airlie <airlied at redhat.com> 2.4.2-2
+- upgrade to git head - brings in modesetting + GEM bits
+
* Tue Aug 26 2008 Adam Jackson <ajax at redhat.com> 2.4.2-1
- intel 2.4.2.
--- intel-2.1.1-disable-ttm.patch DELETED ---
--- intel-2.2.0-xaadefault.patch DELETED ---
--- intel-2.4.0-no-mm.patch DELETED ---
--- intel-master.patch DELETED ---
- Previous message (by thread): rpms/dtc/F-9 .cvsignore,1.6,1.7 dtc.spec,1.8,1.9 sources,1.6,1.7
- Next message (by thread): rpms/perl-Geo-IP/F-8 .cvsignore, 1.3, 1.4 perl-Geo-IP.spec, 1.2, 1.3 sources, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list