Update xf86-video-apm to 1.2.4
This commit is contained in:
parent
87d3c25241
commit
210cce104a
@ -1,3 +1,27 @@
|
||||
Copyright (C) 1994-2003 The XFree86 Project, Inc. All Rights Reserved.
|
||||
|
||||
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, sublicense, 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 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 NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
XFREE86 PROJECT 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.
|
||||
|
||||
Except as contained in this notice, the name of the XFree86 Project shall
|
||||
not be used in advertising or otherwise to promote the sale, use or other
|
||||
dealings in this Software without prior written authorization from the
|
||||
XFree86 Project.
|
||||
|
||||
Copyright 2007 George Sapountzis
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
|
@ -1,3 +1,103 @@
|
||||
commit d63d7c600cb3927a5a2a5e223252cfd9a44112d4
|
||||
Author: Julien Cristau <jcristau@debian.org>
|
||||
Date: Sat May 12 12:46:11 2012 +0200
|
||||
|
||||
xf86-video-apm 1.2.4
|
||||
|
||||
Signed-off-by: Julien Cristau <jcristau@debian.org>
|
||||
|
||||
commit 384531dbd4ea359511c274d3cbd2b34449321ad0
|
||||
Author: Luc Verhaegen <luc.verhaegen@basyskom.de>
|
||||
Date: Wed Nov 24 18:21:23 2010 +0100
|
||||
|
||||
xv: disable reputimage hook on newer api
|
||||
|
||||
This change makes Xv support slightly less nice, but should, in itself,
|
||||
not deteriorate things too much, as most drivers function acceptably
|
||||
without reputimage.
|
||||
|
||||
Signed-off-by: Luc Verhaegen <luc.verhaegen@basyskom.de>
|
||||
Signed-off-by: Julien Cristau <jcristau@debian.org>
|
||||
|
||||
commit e92c8ed0b03b5a33f4b0c3966e540a31af760402
|
||||
Author: Julien Cristau <jcristau@debian.org>
|
||||
Date: Tue May 1 15:27:40 2012 +0200
|
||||
|
||||
Disable PC98 code on newer servers
|
||||
|
||||
It was removed in xserver commit
|
||||
6ad7bb69eebd5e5b4068bd9aa0b9a7168f075006, and keeping API compatibility
|
||||
would have been too hard. Or something.
|
||||
|
||||
commit 37630bd20e59e49db3ee0bfa77f82a7c2595a0ac
|
||||
Author: Julien Cristau <jcristau@debian.org>
|
||||
Date: Tue May 1 15:25:30 2012 +0200
|
||||
|
||||
Stop including xf86PciInfo.h
|
||||
|
||||
Deprecated in xserver commit 1f5baa924a5907978f564372265d9830ac72a077
|
||||
|
||||
commit 784c3a1fa53771662b4656e193fb392cbb8c8452
|
||||
Author: Julien Cristau <jcristau@debian.org>
|
||||
Date: Tue May 1 15:10:39 2012 +0200
|
||||
|
||||
Replace x{{,re,c}alloc,free} with malloc/realloc/calloc/free
|
||||
|
||||
commit 21f5f7acf9235428ef2bcd5e34d0a44f9e4d838b
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Mon Dec 19 17:44:20 2011 -0500
|
||||
|
||||
Fix for new vgaHW ABI
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit f66da557eb7773856081bda2465973dfabf3eaa0
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Mon Dec 19 16:09:34 2011 -0500
|
||||
|
||||
Fall back to shadowfb if XAA fails to load
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit ca19356b3b979b92535f6f22f79c8bab852093a4
|
||||
Merge: 413eee0 967f6f2
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Mon Dec 19 16:06:05 2011 -0500
|
||||
|
||||
Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/driver/xf86-video-apm
|
||||
|
||||
commit 967f6f20670baa33506c3c1b107260a4f909f3d6
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Thu Nov 17 15:50:02 2011 -0500
|
||||
|
||||
Check ABI major not encoded ABI
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit 6b195cc0273650d01fc20c26433b929e9683aa5f
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Wed Nov 16 13:02:14 2011 -0500
|
||||
|
||||
Adapt to vgahw changes in videoabi 12
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit 9ce6499f013a5b6fdc9440fd3213dbb28b3bf1be
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Wed Nov 16 12:59:00 2011 -0500
|
||||
|
||||
s/IOADDRESS/unsigned long/
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit 6f8a776f792c02779a34c911f803fde8c09b93f6
|
||||
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||
Date: Wed Jul 28 07:42:30 2010 -0700
|
||||
|
||||
Add XFree86 Copyright/License to COPYING for all code that came from XF86 4.4
|
||||
|
||||
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||
|
||||
commit 876d8aea6c4c442756c03dd6cd64e14e42658d0b
|
||||
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
|
||||
Date: Fri Jul 23 15:13:02 2010 -0700
|
||||
@ -122,6 +222,16 @@ Date: Sat Jun 12 10:25:31 2010 -0400
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 413eee03287b6e161ce0337df712099b585aa722
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Fri Jun 4 17:10:07 2010 -0400
|
||||
|
||||
Remove non-linear framebuffer mapping
|
||||
|
||||
It hasn't worked since the pciaccess conversion anyway.
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit aa26b72a5f76012e8246de1e885f707f29e5fc4c
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Tue May 18 12:59:36 2010 -0400
|
||||
|
@ -42,9 +42,9 @@ pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = .
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
install_sh_DATA = ${SHELL} $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = ${SHELL} $(install_sh) -c
|
||||
install_sh_SCRIPT = ${SHELL} $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
@ -105,6 +105,7 @@ AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BASE_CFLAGS = @BASE_CFLAGS@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
@ -112,25 +113,21 @@ CHANGELOG_CMD = @CHANGELOG_CMD@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CWARNFLAGS = @CWARNFLAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
|
||||
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
|
||||
DRIVER_NAME = @DRIVER_NAME@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
FGREP = @FGREP@
|
||||
FILE_MAN_DIR = @FILE_MAN_DIR@
|
||||
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
|
||||
GREP = @GREP@
|
||||
@ -141,23 +138,30 @@ INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_MAN_DIR = @LIB_MAN_DIR@
|
||||
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MAN_SUBSTS = @MAN_SUBSTS@
|
||||
MISC_MAN_DIR = @MISC_MAN_DIR@
|
||||
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
@ -172,6 +176,7 @@ RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRICT_CFLAGS = @STRICT_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
XEXT_CFLAGS = @XEXT_CFLAGS@
|
||||
@ -179,13 +184,13 @@ XEXT_LIBS = @XEXT_LIBS@
|
||||
XORG_CFLAGS = @XORG_CFLAGS@
|
||||
XORG_LIBS = @XORG_LIBS@
|
||||
XORG_MAN_PAGE = @XORG_MAN_PAGE@
|
||||
XV_NEW_REPUT_FALSE = @XV_NEW_REPUT_FALSE@
|
||||
XV_NEW_REPUT_TRUE = @XV_NEW_REPUT_TRUE@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
|
10655
driver/xf86-video-apm/aclocal.m4
vendored
10655
driver/xf86-video-apm/aclocal.m4
vendored
File diff suppressed because it is too large
Load Diff
@ -35,6 +35,10 @@
|
||||
/* xextproto 7.1 available */
|
||||
#undef HAVE_XEXTPROTO_71
|
||||
|
||||
/* Define to the sub-directory in which libtool stores uninstalled libraries.
|
||||
*/
|
||||
#undef LT_OBJDIR
|
||||
|
||||
/* Name of package */
|
||||
#undef PACKAGE
|
||||
|
||||
@ -67,3 +71,6 @@
|
||||
|
||||
/* Version number of package */
|
||||
#undef VERSION
|
||||
|
||||
/* XvReputImage takes more all coordinates */
|
||||
#undef XV_NEW_REPUT
|
||||
|
27220
driver/xf86-video-apm/configure
vendored
27220
driver/xf86-video-apm/configure
vendored
File diff suppressed because it is too large
Load Diff
@ -23,7 +23,7 @@
|
||||
# Initialize Autoconf
|
||||
AC_PREREQ([2.60])
|
||||
AC_INIT([xf86-video-apm],
|
||||
[1.2.3],
|
||||
[1.2.4],
|
||||
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
|
||||
[xf86-video-apm])
|
||||
AC_CONFIG_SRCDIR([Makefile.am])
|
||||
@ -72,6 +72,24 @@ PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0])
|
||||
DRIVER_NAME=apm
|
||||
AC_SUBST([DRIVER_NAME])
|
||||
|
||||
# since we cannot use the result from XORG_DRIVER_CHECK_EXT directly.
|
||||
AC_CHECK_DECL([XV], [have_xv=yes], [have_xv=false], [#include "xorg/xorg-server.h"])
|
||||
if test "x$have_xv" = xyes; then
|
||||
SAVED_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $XORG_CFLAGS"
|
||||
|
||||
AC_CHECK_MEMBER([ScrnInfoRec.ModeSet],
|
||||
[SCRNINFO_HAS_MODESET=yes], [SCRNINFO_HAS_MODESET=no],
|
||||
[#include "xf86str.h"])
|
||||
if test "x$SCRNINFO_HAS_MODESET" = xyes; then
|
||||
AC_DEFINE(XV_NEW_REPUT, 1,
|
||||
[XvReputImage takes more all coordinates])
|
||||
fi
|
||||
|
||||
CFLAGS="$SAVED_CFLAGS"
|
||||
fi
|
||||
AM_CONDITIONAL(XV_NEW_REPUT, test x$XV_NEW_REPUT = xyes)
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -46,9 +46,9 @@ pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
install_sh_DATA = ${SHELL} $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = ${SHELL} $(install_sh) -c
|
||||
install_sh_SCRIPT = ${SHELL} $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
@ -94,6 +94,7 @@ AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BASE_CFLAGS = @BASE_CFLAGS@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
@ -101,25 +102,21 @@ CHANGELOG_CMD = @CHANGELOG_CMD@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CWARNFLAGS = @CWARNFLAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
|
||||
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
|
||||
DRIVER_NAME = @DRIVER_NAME@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
FGREP = @FGREP@
|
||||
FILE_MAN_DIR = @FILE_MAN_DIR@
|
||||
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
|
||||
GREP = @GREP@
|
||||
@ -130,23 +127,30 @@ INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_MAN_DIR = @LIB_MAN_DIR@
|
||||
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MAN_SUBSTS = @MAN_SUBSTS@
|
||||
MISC_MAN_DIR = @MISC_MAN_DIR@
|
||||
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
@ -161,6 +165,7 @@ RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRICT_CFLAGS = @STRICT_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
XEXT_CFLAGS = @XEXT_CFLAGS@
|
||||
@ -168,13 +173,13 @@ XEXT_LIBS = @XEXT_LIBS@
|
||||
XORG_CFLAGS = @XORG_CFLAGS@
|
||||
XORG_LIBS = @XORG_LIBS@
|
||||
XORG_MAN_PAGE = @XORG_MAN_PAGE@
|
||||
XV_NEW_REPUT_FALSE = @XV_NEW_REPUT_FALSE@
|
||||
XV_NEW_REPUT_TRUE = @XV_NEW_REPUT_TRUE@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
|
@ -67,10 +67,6 @@ Enable or disable the hardware cursor. Default: on.
|
||||
.BI "Option \*qNoAccel\*q \*q" boolean \*q
|
||||
Disable or enable acceleration. Default: acceleration is enabled.
|
||||
.TP
|
||||
.BI "Option \*qNoLinear\*q \*q" boolean \*q
|
||||
Disable or enable use of linear frame buffer. Default: on.
|
||||
Note: it may or may not work. Tell me if you need it.
|
||||
.TP
|
||||
.BI "Option \*qPciRetry\*q \*q" boolean \*q
|
||||
Enable or disable PCI retries. Default: off.
|
||||
.TP
|
||||
|
@ -49,9 +49,9 @@ pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
install_sh_DATA = ${SHELL} $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = ${SHELL} $(install_sh) -c
|
||||
install_sh_SCRIPT = ${SHELL} $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
@ -114,6 +114,7 @@ AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BASE_CFLAGS = @BASE_CFLAGS@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
@ -121,25 +122,21 @@ CHANGELOG_CMD = @CHANGELOG_CMD@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CWARNFLAGS = @CWARNFLAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
|
||||
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
|
||||
DRIVER_NAME = @DRIVER_NAME@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
FGREP = @FGREP@
|
||||
FILE_MAN_DIR = @FILE_MAN_DIR@
|
||||
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
|
||||
GREP = @GREP@
|
||||
@ -150,23 +147,30 @@ INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_MAN_DIR = @LIB_MAN_DIR@
|
||||
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MAN_SUBSTS = @MAN_SUBSTS@
|
||||
MISC_MAN_DIR = @MISC_MAN_DIR@
|
||||
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
@ -181,6 +185,7 @@ RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRICT_CFLAGS = @STRICT_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
XEXT_CFLAGS = @XEXT_CFLAGS@
|
||||
@ -188,13 +193,13 @@ XEXT_LIBS = @XEXT_LIBS@
|
||||
XORG_CFLAGS = @XORG_CFLAGS@
|
||||
XORG_LIBS = @XORG_LIBS@
|
||||
XORG_MAN_PAGE = @XORG_MAN_PAGE@
|
||||
XV_NEW_REPUT_FALSE = @XV_NEW_REPUT_FALSE@
|
||||
XV_NEW_REPUT_TRUE = @XV_NEW_REPUT_TRUE@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
|
@ -11,9 +11,6 @@
|
||||
/* Everything using inb/outb, etc needs "compiler.h" */
|
||||
#include "compiler.h"
|
||||
|
||||
/* Drivers for PCI hardware need this */
|
||||
#include "xf86PciInfo.h"
|
||||
|
||||
/* Drivers that need to access the PCI config space directly need this */
|
||||
#include "xf86Pci.h"
|
||||
|
||||
@ -109,14 +106,13 @@ typedef struct {
|
||||
char *MemMap;
|
||||
pointer BltMap;
|
||||
Bool UnlockCalled;
|
||||
IOADDRESS iobase, xport, xbase;
|
||||
unsigned long iobase, xport, xbase;
|
||||
unsigned char savedSR10;
|
||||
CARD8 MiscOut;
|
||||
CARD8 c9, d9, db, Rush;
|
||||
unsigned int saveCmd;
|
||||
pointer FontInfo;
|
||||
Bool hwCursor;
|
||||
Bool noLinear;
|
||||
ApmRegStr ModeReg, SavedReg;
|
||||
CloseScreenProcPtr CloseScreen;
|
||||
Bool UsePCIRetry; /* Do we use PCI-retry or busy-waiting */
|
||||
|
@ -32,16 +32,9 @@ static unsigned char apmROP[] = {
|
||||
|
||||
#include "apm_funcs.c"
|
||||
|
||||
#define IOP_ACCESS
|
||||
#include "apm_funcs.c"
|
||||
|
||||
#define PSZ 24
|
||||
#include "apm_funcs.c"
|
||||
|
||||
#define PSZ 24
|
||||
#define IOP_ACCESS
|
||||
#include "apm_funcs.c"
|
||||
|
||||
static void
|
||||
ApmRemoveStipple(FBAreaPtr area)
|
||||
{
|
||||
@ -279,21 +272,11 @@ ApmAccelInit(ScreenPtr pScreen)
|
||||
i = 4;
|
||||
else
|
||||
i = 8;
|
||||
if (pApm->noLinear) {
|
||||
stat = RDXL_IOP(0x1FC);
|
||||
while ((stat & (STATUS_HOSTBLTBUSY | STATUS_ENGINEBUSY)) ||
|
||||
((stat & STATUS_FIFO) < i)) {
|
||||
WRXB_IOP(0x1FC, 0);
|
||||
stat = RDXL_IOP(0x1FC);
|
||||
}
|
||||
}
|
||||
else {
|
||||
stat = RDXL_M(0x1FC);
|
||||
while ((stat & (STATUS_HOSTBLTBUSY | STATUS_ENGINEBUSY)) ||
|
||||
((stat & STATUS_FIFO) < i)) {
|
||||
WRXB_M(0x1FC, 0);
|
||||
stat = RDXL_M(0x1FC);
|
||||
while ((stat & (STATUS_HOSTBLTBUSY | STATUS_ENGINEBUSY)) ||
|
||||
((stat & STATUS_FIFO) < i)) {
|
||||
WRXB_M(0x1FC, 0);
|
||||
stat = RDXL_M(0x1FC);
|
||||
}
|
||||
}
|
||||
|
||||
/* Setup current register values */
|
||||
@ -316,26 +299,14 @@ ApmAccelInit(ScreenPtr pScreen)
|
||||
|
||||
ApmSetupXAAInfo(pApm, pXAAinfo);
|
||||
|
||||
if (!pApm->noLinear) {
|
||||
pApm->SetupForSolidFill = ApmSetupForSolidFill;
|
||||
pApm->SubsequentSolidFillRect = ApmSubsequentSolidFillRect;
|
||||
pApm->SetupForSolidFill24 = ApmSetupForSolidFill24;
|
||||
pApm->SubsequentSolidFillRect24 = ApmSubsequentSolidFillRect24;
|
||||
pApm->SetupForScreenToScreenCopy = ApmSetupForScreenToScreenCopy;
|
||||
pApm->SubsequentScreenToScreenCopy = ApmSubsequentScreenToScreenCopy;
|
||||
pApm->SetupForScreenToScreenCopy24 = ApmSetupForScreenToScreenCopy24;
|
||||
pApm->SubsequentScreenToScreenCopy24 = ApmSubsequentScreenToScreenCopy24;
|
||||
}
|
||||
else {
|
||||
pApm->SetupForSolidFill = ApmSetupForSolidFill_IOP;
|
||||
pApm->SubsequentSolidFillRect = ApmSubsequentSolidFillRect_IOP;
|
||||
pApm->SetupForSolidFill24 = ApmSetupForSolidFill24_IOP;
|
||||
pApm->SubsequentSolidFillRect24 = ApmSubsequentSolidFillRect24_IOP;
|
||||
pApm->SetupForScreenToScreenCopy = ApmSetupForScreenToScreenCopy_IOP;
|
||||
pApm->SubsequentScreenToScreenCopy = ApmSubsequentScreenToScreenCopy_IOP;
|
||||
pApm->SetupForScreenToScreenCopy24 = ApmSetupForScreenToScreenCopy24_IOP;
|
||||
pApm->SubsequentScreenToScreenCopy24 = ApmSubsequentScreenToScreenCopy24_IOP;
|
||||
}
|
||||
pApm->SetupForSolidFill = ApmSetupForSolidFill;
|
||||
pApm->SubsequentSolidFillRect = ApmSubsequentSolidFillRect;
|
||||
pApm->SetupForSolidFill24 = ApmSetupForSolidFill24;
|
||||
pApm->SubsequentSolidFillRect24 = ApmSubsequentSolidFillRect24;
|
||||
pApm->SetupForScreenToScreenCopy = ApmSetupForScreenToScreenCopy;
|
||||
pApm->SubsequentScreenToScreenCopy = ApmSubsequentScreenToScreenCopy;
|
||||
pApm->SetupForScreenToScreenCopy24 = ApmSetupForScreenToScreenCopy24;
|
||||
pApm->SubsequentScreenToScreenCopy24= ApmSubsequentScreenToScreenCopy24;
|
||||
|
||||
/*
|
||||
* Init Rush extension.
|
||||
@ -427,334 +398,168 @@ void ApmSetupXAAInfo(ApmPtr pApm, XAAInfoRecPtr pXAAinfo)
|
||||
pXAAinfo->CacheMonoStipple = ApmCacheMonoStipple;
|
||||
|
||||
if (pApm->CurrentLayout.bitsPerPixel != 24) {
|
||||
if (!pApm->noLinear) {
|
||||
#define XAA(s) pXAAinfo->s = Apm##s
|
||||
if (pApm->Chipset < AT24)
|
||||
pXAAinfo->Sync = ApmSync6422;
|
||||
else
|
||||
XAA(Sync);
|
||||
if (pApm->Chipset < AT24)
|
||||
pXAAinfo->Sync = ApmSync6422;
|
||||
else
|
||||
XAA(Sync);
|
||||
|
||||
/* Accelerated filled rectangles */
|
||||
pXAAinfo->SolidFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForSolidFill);
|
||||
XAA(SubsequentSolidFillRect);
|
||||
/* Accelerated filled rectangles */
|
||||
pXAAinfo->SolidFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForSolidFill);
|
||||
XAA(SubsequentSolidFillRect);
|
||||
|
||||
/* Accelerated screen to screen color expansion */
|
||||
pXAAinfo->ScreenToScreenColorExpandFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenColorExpandFill);
|
||||
XAA(SubsequentScreenToScreenColorExpandFill);
|
||||
/* Accelerated screen to screen color expansion */
|
||||
pXAAinfo->ScreenToScreenColorExpandFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenColorExpandFill);
|
||||
XAA(SubsequentScreenToScreenColorExpandFill);
|
||||
|
||||
#if 0
|
||||
The constraints of the transfer range are incompatible with the
|
||||
XAA architecture. I rewrote the XAA functions using ImageWrite
|
||||
/* Accelerated CPU to screen color expansion */
|
||||
if ((pApm->Chipset == AT24 && pApm->ChipRev >= 4) ||
|
||||
pApm->Chipset == AT3D) {
|
||||
pXAAinfo->CPUToScreenColorExpandFillFlags =
|
||||
NO_PLANEMASK | SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD
|
||||
| BIT_ORDER_IN_BYTE_MSBFIRST | LEFT_EDGE_CLIPPING |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X | SYNC_AFTER_COLOR_EXPAND;
|
||||
XAA(SetupForCPUToScreenColorExpandFill);
|
||||
XAA(SubsequentCPUToScreenColorExpandFill);
|
||||
pXAAinfo->ColorExpandBase = pApm->BltMap;
|
||||
pXAAinfo->ColorExpandRange = (pApm->Chipset >= AT3D) ? 32*1024 : 30*1024;
|
||||
}
|
||||
|
||||
/* Accelerated image transfers */
|
||||
pXAAinfo->ImageWriteFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
SYNC_AFTER_IMAGE_WRITE;
|
||||
pXAAinfo->ImageWriteBase = pApm->BltMap;
|
||||
pXAAinfo->ImageWriteRange = (pApm->Chipset >= AT3D) ? 32*1024 : 30*1024;
|
||||
XAA(SetupForImageWrite);
|
||||
XAA(SubsequentImageWriteRect);
|
||||
#endif
|
||||
pXAAinfo->WritePixmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(WritePixmap);
|
||||
pXAAinfo->FillImageWriteRectsFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(FillImageWriteRects);
|
||||
pXAAinfo->WriteBitmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
BIT_ORDER_IN_BYTE_LSBFIRST;
|
||||
XAA(WriteBitmap);
|
||||
pXAAinfo->TEGlyphRendererFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(TEGlyphRenderer);
|
||||
|
||||
/* Accelerated screen-screen bitblts */
|
||||
pXAAinfo->ScreenToScreenCopyFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenCopy);
|
||||
XAA(SubsequentScreenToScreenCopy);
|
||||
|
||||
/* Accelerated Line drawing */
|
||||
pXAAinfo->SolidLineFlags = NO_PLANEMASK | HARDWARE_CLIP_LINE;
|
||||
XAA(SetClippingRectangle);
|
||||
pXAAinfo->SolidBresenhamLineErrorTermBits = 15;
|
||||
|
||||
if (pApm->Chipset >= AT24) {
|
||||
XAA(SubsequentSolidBresenhamLine);
|
||||
|
||||
/* Pattern fill */
|
||||
pXAAinfo->Mono8x8PatternFillFlags = NO_PLANEMASK |
|
||||
HARDWARE_PATTERN_PROGRAMMED_BITS |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForMono8x8PatternFill);
|
||||
XAA(SubsequentMono8x8PatternFillRect);
|
||||
if (pApm->CurrentLayout.bitsPerPixel == 8) {
|
||||
pXAAinfo->Color8x8PatternFillFlags = NO_PLANEMASK |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForColor8x8PatternFill);
|
||||
XAA(SubsequentColor8x8PatternFillRect);
|
||||
}
|
||||
}
|
||||
else
|
||||
pXAAinfo->SubsequentSolidBresenhamLine =
|
||||
ApmSubsequentSolidBresenhamLine6422;
|
||||
#undef XAA
|
||||
The constraints of the transfer range are incompatible with the
|
||||
XAA architecture. I rewrote the XAA functions using ImageWrite
|
||||
/* Accelerated CPU to screen color expansion */
|
||||
if ((pApm->Chipset == AT24 && pApm->ChipRev >= 4) ||
|
||||
pApm->Chipset == AT3D) {
|
||||
pXAAinfo->CPUToScreenColorExpandFillFlags =
|
||||
NO_PLANEMASK | SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD
|
||||
| BIT_ORDER_IN_BYTE_MSBFIRST | LEFT_EDGE_CLIPPING |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X | SYNC_AFTER_COLOR_EXPAND;
|
||||
XAA(SetupForCPUToScreenColorExpandFill);
|
||||
XAA(SubsequentCPUToScreenColorExpandFill);
|
||||
pXAAinfo->ColorExpandBase = pApm->BltMap;
|
||||
pXAAinfo->ColorExpandRange = (pApm->Chipset >= AT3D) ? 32*1024 : 30*1024;
|
||||
}
|
||||
else {
|
||||
#define XAA(s) pXAAinfo->s = Apm##s##_IOP
|
||||
if (pApm->Chipset < AT24)
|
||||
pXAAinfo->Sync = ApmSync6422_IOP;
|
||||
else
|
||||
XAA(Sync);
|
||||
|
||||
/* Accelerated filled rectangles */
|
||||
pXAAinfo->SolidFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForSolidFill);
|
||||
XAA(SubsequentSolidFillRect);
|
||||
|
||||
/* Accelerated screen to screen color expansion */
|
||||
pXAAinfo->ScreenToScreenColorExpandFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenColorExpandFill);
|
||||
XAA(SubsequentScreenToScreenColorExpandFill);
|
||||
|
||||
#if 0
|
||||
The constraints of the transfer range are incompatible with the
|
||||
XAA architecture. I rewrote the XAA functions using ImageWrite
|
||||
/* Accelerated CPU to screen color expansion */
|
||||
if ((pApm->Chipset == AT24 && pApm->ChipRev >= 4) ||
|
||||
pApm->Chipset == AT3D) {
|
||||
pXAAinfo->CPUToScreenColorExpandFillFlags =
|
||||
NO_PLANEMASK | SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD
|
||||
| BIT_ORDER_IN_BYTE_MSBFIRST | LEFT_EDGE_CLIPPING |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X | SYNC_AFTER_COLOR_EXPAND;
|
||||
XAA(SetupForCPUToScreenColorExpandFill);
|
||||
XAA(SubsequentCPUToScreenColorExpandFill);
|
||||
pXAAinfo->ColorExpandBase = pApm->BltMap;
|
||||
pXAAinfo->ColorExpandRange = (pApm->Chipset >= AT3D) ? 32*1024 : 30*1024;
|
||||
}
|
||||
|
||||
/* Accelerated image transfers */
|
||||
pXAAinfo->ImageWriteFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD;
|
||||
pXAAinfo->ImageWriteBase = pApm->BltMap;
|
||||
pXAAinfo->ImageWriteRange = (pApm->Chipset >= AT3D) ? 32*1024 : 30*1024;
|
||||
XAA(SetupForImageWrite);
|
||||
XAA(SubsequentImageWriteRect);
|
||||
/* Accelerated image transfers */
|
||||
pXAAinfo->ImageWriteFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
SYNC_AFTER_IMAGE_WRITE;
|
||||
pXAAinfo->ImageWriteBase = pApm->BltMap;
|
||||
pXAAinfo->ImageWriteRange = (pApm->Chipset >= AT3D) ? 32*1024 : 30*1024;
|
||||
XAA(SetupForImageWrite);
|
||||
XAA(SubsequentImageWriteRect);
|
||||
#endif
|
||||
pXAAinfo->WritePixmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(WritePixmap);
|
||||
pXAAinfo->FillImageWriteRectsFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(FillImageWriteRects);
|
||||
pXAAinfo->WriteBitmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
BIT_ORDER_IN_BYTE_LSBFIRST;
|
||||
XAA(WriteBitmap);
|
||||
pXAAinfo->TEGlyphRendererFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(TEGlyphRenderer);
|
||||
pXAAinfo->WritePixmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(WritePixmap);
|
||||
pXAAinfo->FillImageWriteRectsFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(FillImageWriteRects);
|
||||
pXAAinfo->WriteBitmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
BIT_ORDER_IN_BYTE_LSBFIRST;
|
||||
XAA(WriteBitmap);
|
||||
pXAAinfo->TEGlyphRendererFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(TEGlyphRenderer);
|
||||
|
||||
/* Accelerated screen-screen bitblts */
|
||||
pXAAinfo->ScreenToScreenCopyFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenCopy);
|
||||
XAA(SubsequentScreenToScreenCopy);
|
||||
/* Accelerated screen-screen bitblts */
|
||||
pXAAinfo->ScreenToScreenCopyFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenCopy);
|
||||
XAA(SubsequentScreenToScreenCopy);
|
||||
|
||||
/* Accelerated Line drawing */
|
||||
pXAAinfo->SolidLineFlags = NO_PLANEMASK | HARDWARE_CLIP_LINE;
|
||||
XAA(SetClippingRectangle);
|
||||
pXAAinfo->SolidBresenhamLineErrorTermBits = 15;
|
||||
/* Accelerated Line drawing */
|
||||
pXAAinfo->SolidLineFlags = NO_PLANEMASK | HARDWARE_CLIP_LINE;
|
||||
XAA(SetClippingRectangle);
|
||||
pXAAinfo->SolidBresenhamLineErrorTermBits = 15;
|
||||
|
||||
if (pApm->Chipset >= AT24) {
|
||||
XAA(SubsequentSolidBresenhamLine);
|
||||
if (pApm->Chipset >= AT24) {
|
||||
XAA(SubsequentSolidBresenhamLine);
|
||||
|
||||
/* Pattern fill */
|
||||
pXAAinfo->Mono8x8PatternFillFlags = NO_PLANEMASK |
|
||||
HARDWARE_PATTERN_PROGRAMMED_BITS |
|
||||
/* Pattern fill */
|
||||
pXAAinfo->Mono8x8PatternFillFlags = NO_PLANEMASK |
|
||||
HARDWARE_PATTERN_PROGRAMMED_BITS |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForMono8x8PatternFill);
|
||||
XAA(SubsequentMono8x8PatternFillRect);
|
||||
if (pApm->CurrentLayout.bitsPerPixel == 8) {
|
||||
pXAAinfo->Color8x8PatternFillFlags = NO_PLANEMASK |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForMono8x8PatternFill);
|
||||
XAA(SubsequentMono8x8PatternFillRect);
|
||||
if (pApm->CurrentLayout.bitsPerPixel == 8) {
|
||||
pXAAinfo->Color8x8PatternFillFlags = NO_PLANEMASK |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForColor8x8PatternFill);
|
||||
XAA(SubsequentColor8x8PatternFillRect);
|
||||
}
|
||||
XAA(SetupForColor8x8PatternFill);
|
||||
XAA(SubsequentColor8x8PatternFillRect);
|
||||
}
|
||||
else
|
||||
pXAAinfo->SubsequentSolidBresenhamLine =
|
||||
ApmSubsequentSolidBresenhamLine6422_IOP;
|
||||
#undef XAA
|
||||
}
|
||||
else
|
||||
pXAAinfo->SubsequentSolidBresenhamLine =
|
||||
ApmSubsequentSolidBresenhamLine6422;
|
||||
#undef XAA
|
||||
}
|
||||
else {
|
||||
if (!pApm->noLinear) {
|
||||
#define XAA(s) pXAAinfo->s = Apm##s##24
|
||||
XAA(Sync);
|
||||
XAA(Sync);
|
||||
|
||||
/* Accelerated filled rectangles */
|
||||
pXAAinfo->SolidFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForSolidFill);
|
||||
XAA(SubsequentSolidFillRect);
|
||||
/* Accelerated filled rectangles */
|
||||
pXAAinfo->SolidFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForSolidFill);
|
||||
XAA(SubsequentSolidFillRect);
|
||||
|
||||
#if 0
|
||||
/* Accelerated screen to screen color expansion */
|
||||
pXAAinfo->ScreenToScreenColorExpandFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenColorExpandFill);
|
||||
XAA(SubsequentScreenToScreenColorExpandFill);
|
||||
/* Accelerated screen to screen color expansion */
|
||||
pXAAinfo->ScreenToScreenColorExpandFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenColorExpandFill);
|
||||
XAA(SubsequentScreenToScreenColorExpandFill);
|
||||
|
||||
#if 0
|
||||
The constraints of the transfer range are incompatible with the
|
||||
XAA architecture. I rewrote the XAA functions using ImageWrite
|
||||
/* Accelerated CPU to screen color expansion */
|
||||
if (pApm->Chipset == AT3D && pApm->ChipRev >= 4) {
|
||||
pXAAinfo->CPUToScreenColorExpandFillFlags =
|
||||
NO_PLANEMASK | SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD
|
||||
| BIT_ORDER_IN_BYTE_MSBFIRST | LEFT_EDGE_CLIPPING |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X | SYNC_AFTER_COLOR_EXPAND;
|
||||
XAA(SetupForCPUToScreenColorExpandFill);
|
||||
XAA(SubsequentCPUToScreenColorExpandFill);
|
||||
pXAAinfo->ColorExpandBase = pApm->BltMap;
|
||||
pXAAinfo->ColorExpandRange = 32*1024;
|
||||
}
|
||||
|
||||
/* Accelerated image transfers */
|
||||
pXAAinfo->ImageWriteFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD |
|
||||
SYNC_AFTER_IMAGE_WRITE;
|
||||
pXAAinfo->ImageWriteBase = pApm->BltMap;
|
||||
pXAAinfo->ImageWriteRange = 32*1024;
|
||||
XAA(SetupForImageWrite);
|
||||
XAA(SubsequentImageWriteRect);
|
||||
#endif
|
||||
pXAAinfo->WritePixmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(WritePixmap);
|
||||
pXAAinfo->FillImageWriteRectsFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(FillImageWriteRects);
|
||||
pXAAinfo->WriteBitmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
BIT_ORDER_IN_BYTE_LSBFIRST;
|
||||
XAA(WriteBitmap);
|
||||
pXAAinfo->TEGlyphRendererFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(TEGlyphRenderer);
|
||||
|
||||
/* Accelerated Line drawing */
|
||||
pXAAinfo->SolidLineFlags = NO_PLANEMASK | HARDWARE_CLIP_LINE;
|
||||
XAA(SubsequentSolidBresenhamLine);
|
||||
XAA(SetClippingRectangle);
|
||||
pXAAinfo->SolidBresenhamLineErrorTermBits = 15;
|
||||
|
||||
/* Pattern fill */
|
||||
pXAAinfo->Mono8x8PatternFillFlags = NO_PLANEMASK | NO_TRANSPARENCY |
|
||||
HARDWARE_PATTERN_PROGRAMMED_BITS |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForMono8x8PatternFill);
|
||||
XAA(SubsequentMono8x8PatternFillRect);
|
||||
#endif
|
||||
|
||||
/* Accelerated screen-screen bitblts */
|
||||
pXAAinfo->ScreenToScreenCopyFlags = NO_PLANEMASK | NO_TRANSPARENCY;
|
||||
XAA(SetupForScreenToScreenCopy);
|
||||
XAA(SubsequentScreenToScreenCopy);
|
||||
#undef XAA
|
||||
The constraints of the transfer range are incompatible with the
|
||||
XAA architecture. I rewrote the XAA functions using ImageWrite
|
||||
/* Accelerated CPU to screen color expansion */
|
||||
if (pApm->Chipset == AT3D && pApm->ChipRev >= 4) {
|
||||
pXAAinfo->CPUToScreenColorExpandFillFlags =
|
||||
NO_PLANEMASK | SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD
|
||||
| BIT_ORDER_IN_BYTE_MSBFIRST | LEFT_EDGE_CLIPPING |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X | SYNC_AFTER_COLOR_EXPAND;
|
||||
XAA(SetupForCPUToScreenColorExpandFill);
|
||||
XAA(SubsequentCPUToScreenColorExpandFill);
|
||||
pXAAinfo->ColorExpandBase = pApm->BltMap;
|
||||
pXAAinfo->ColorExpandRange = 32*1024;
|
||||
}
|
||||
else {
|
||||
#define XAA(s) pXAAinfo->s = Apm##s##24##_IOP
|
||||
XAA(Sync);
|
||||
|
||||
/* Accelerated filled rectangles */
|
||||
pXAAinfo->SolidFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForSolidFill);
|
||||
XAA(SubsequentSolidFillRect);
|
||||
|
||||
#if 0
|
||||
/* Accelerated screen to screen color expansion */
|
||||
pXAAinfo->ScreenToScreenColorExpandFillFlags = NO_PLANEMASK;
|
||||
XAA(SetupForScreenToScreenColorExpandFill);
|
||||
XAA(SubsequentScreenToScreenColorExpandFill);
|
||||
|
||||
#if 0
|
||||
The constraints of the transfer range are incompatible with the
|
||||
XAA architecture. I rewrote the XAA functions using ImageWrite
|
||||
/* Accelerated CPU to screen color expansion */
|
||||
if (pApm->Chipset == AT3D && pApm->ChipRev >= 4) {
|
||||
pXAAinfo->CPUToScreenColorExpandFillFlags =
|
||||
NO_PLANEMASK | SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD
|
||||
| BIT_ORDER_IN_BYTE_MSBFIRST | LEFT_EDGE_CLIPPING |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X | SYNC_AFTER_COLOR_EXPAND;
|
||||
XAA(SetupForCPUToScreenColorExpandFill);
|
||||
XAA(SubsequentCPUToScreenColorExpandFill);
|
||||
pXAAinfo->ColorExpandBase = pApm->BltMap;
|
||||
pXAAinfo->ColorExpandRange = 32*1024;
|
||||
}
|
||||
|
||||
/* Accelerated image transfers */
|
||||
pXAAinfo->ImageWriteFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD;
|
||||
pXAAinfo->ImageWriteBase = pApm->BltMap;
|
||||
pXAAinfo->ImageWriteRange = 32*1024;
|
||||
XAA(SetupForImageWrite);
|
||||
XAA(SubsequentImageWriteRect);
|
||||
/* Accelerated image transfers */
|
||||
pXAAinfo->ImageWriteFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
SCANLINE_PAD_DWORD | CPU_TRANSFER_PAD_QWORD |
|
||||
SYNC_AFTER_IMAGE_WRITE;
|
||||
pXAAinfo->ImageWriteBase = pApm->BltMap;
|
||||
pXAAinfo->ImageWriteRange = 32*1024;
|
||||
XAA(SetupForImageWrite);
|
||||
XAA(SubsequentImageWriteRect);
|
||||
#endif
|
||||
pXAAinfo->WritePixmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(WritePixmap);
|
||||
pXAAinfo->FillImageWriteRectsFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(FillImageWriteRects);
|
||||
pXAAinfo->WriteBitmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
BIT_ORDER_IN_BYTE_LSBFIRST;
|
||||
XAA(WriteBitmap);
|
||||
pXAAinfo->TEGlyphRendererFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(TEGlyphRenderer);
|
||||
pXAAinfo->WritePixmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(WritePixmap);
|
||||
pXAAinfo->FillImageWriteRectsFlags =
|
||||
LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(FillImageWriteRects);
|
||||
pXAAinfo->WriteBitmapFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X |
|
||||
BIT_ORDER_IN_BYTE_LSBFIRST;
|
||||
XAA(WriteBitmap);
|
||||
pXAAinfo->TEGlyphRendererFlags = LEFT_EDGE_CLIPPING | NO_PLANEMASK |
|
||||
LEFT_EDGE_CLIPPING_NEGATIVE_X;
|
||||
XAA(TEGlyphRenderer);
|
||||
|
||||
/* Accelerated Line drawing */
|
||||
pXAAinfo->SolidLineFlags = NO_PLANEMASK | HARDWARE_CLIP_LINE;
|
||||
XAA(SubsequentSolidBresenhamLine);
|
||||
XAA(SetClippingRectangle);
|
||||
pXAAinfo->SolidBresenhamLineErrorTermBits = 15;
|
||||
/* Accelerated Line drawing */
|
||||
pXAAinfo->SolidLineFlags = NO_PLANEMASK | HARDWARE_CLIP_LINE;
|
||||
XAA(SubsequentSolidBresenhamLine);
|
||||
XAA(SetClippingRectangle);
|
||||
pXAAinfo->SolidBresenhamLineErrorTermBits = 15;
|
||||
|
||||
/* Pattern fill */
|
||||
pXAAinfo->Mono8x8PatternFillFlags = NO_PLANEMASK | NO_TRANSPARENCY |
|
||||
HARDWARE_PATTERN_PROGRAMMED_BITS |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForMono8x8PatternFill);
|
||||
XAA(SubsequentMono8x8PatternFillRect);
|
||||
/* Pattern fill */
|
||||
pXAAinfo->Mono8x8PatternFillFlags = NO_PLANEMASK | NO_TRANSPARENCY |
|
||||
HARDWARE_PATTERN_PROGRAMMED_BITS |
|
||||
HARDWARE_PATTERN_SCREEN_ORIGIN;
|
||||
XAA(SetupForMono8x8PatternFill);
|
||||
XAA(SubsequentMono8x8PatternFillRect);
|
||||
#endif
|
||||
|
||||
/* Accelerated screen-screen bitblts */
|
||||
pXAAinfo->ScreenToScreenCopyFlags = NO_PLANEMASK | NO_TRANSPARENCY;
|
||||
XAA(SetupForScreenToScreenCopy);
|
||||
XAA(SubsequentScreenToScreenCopy);
|
||||
/* Accelerated screen-screen bitblts */
|
||||
pXAAinfo->ScreenToScreenCopyFlags = NO_PLANEMASK | NO_TRANSPARENCY;
|
||||
XAA(SetupForScreenToScreenCopy);
|
||||
XAA(SubsequentScreenToScreenCopy);
|
||||
#undef XAA
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -11,7 +11,6 @@
|
||||
#include "xf86.h"
|
||||
#include "xf86_OSproc.h"
|
||||
#include "xf86Pci.h"
|
||||
#include "xf86PciInfo.h"
|
||||
#include "xaa.h"
|
||||
#include "xaalocal.h"
|
||||
#include "apm.h"
|
||||
@ -103,7 +102,7 @@ SECOND_PASS:
|
||||
if(secondPitch)
|
||||
pitch = secondPitch;
|
||||
|
||||
if(!(newmodes = xrealloc(modes, (*num + 1) * sizeof(DGAModeRec))))
|
||||
if(!(newmodes = realloc(modes, (*num + 1) * sizeof(DGAModeRec))))
|
||||
break;
|
||||
|
||||
modes = newmodes;
|
||||
@ -316,18 +315,10 @@ ApmSetViewport(
|
||||
* This is just an attempt, because Daryll is tampering with MY
|
||||
* registers.
|
||||
*/
|
||||
if (!pApm->noLinear) {
|
||||
tmp = (RDXB(0xDB) & 0xF4) | 0x0A;
|
||||
WRXB(0xDB, tmp);
|
||||
ApmWriteSeq(0x1B, 0x20);
|
||||
ApmWriteSeq(0x1C, 0x2F);
|
||||
}
|
||||
else {
|
||||
tmp = (RDXB_IOP(0xDB) & 0xF4) | 0x0A;
|
||||
WRXB_IOP(0xDB, tmp);
|
||||
wrinx(pApm->xport, 0x1B, 0x20);
|
||||
wrinx(pApm->xport, 0x1C, 0x2F);
|
||||
}
|
||||
tmp = (RDXB(0xDB) & 0xF4) | 0x0A;
|
||||
WRXB(0xDB, tmp);
|
||||
ApmWriteSeq(0x1B, 0x20);
|
||||
ApmWriteSeq(0x1C, 0x2F);
|
||||
pApm->apmLock = FALSE;
|
||||
}
|
||||
pScrn->AdjustFrame(pScrn->pScreen->myNum, x, y, flags);
|
||||
|
@ -28,9 +28,11 @@
|
||||
#define APM_MAJOR_VERSION PACKAGE_VERSION_MAJOR
|
||||
#define APM_MINOR_VERSION PACKAGE_VERSION_MINOR
|
||||
#define APM_PATCHLEVEL PACKAGE_VERSION_PATCHLEVEL
|
||||
#ifndef PCI_CHIP_AT3D
|
||||
#define PCI_CHIP_AT3D 0x643D
|
||||
#endif
|
||||
|
||||
#define PCI_VENDOR_ALLIANCE 0x1142
|
||||
#define PCI_CHIP_AP6422 0x6422
|
||||
#define PCI_CHIP_AT24 0x6424
|
||||
#define PCI_CHIP_AT3D 0x643D
|
||||
|
||||
/* bytes to save for text/font data */
|
||||
#define TEXT_AMOUNT 32768
|
||||
@ -189,10 +191,8 @@ ApmGetRec(ScrnInfoPtr pScrn)
|
||||
static void
|
||||
ApmFreeRec(ScrnInfoPtr pScrn)
|
||||
{
|
||||
if (pScrn->driverPrivate) {
|
||||
xfree(pScrn->driverPrivate);
|
||||
pScrn->driverPrivate = NULL;
|
||||
}
|
||||
free(pScrn->driverPrivate);
|
||||
pScrn->driverPrivate = NULL;
|
||||
}
|
||||
|
||||
|
||||
@ -200,7 +200,7 @@ ApmFreeRec(ScrnInfoPtr pScrn)
|
||||
static void
|
||||
ApmUnlock(ApmPtr pApm)
|
||||
{
|
||||
if (pApm->Chipset >= AT3D && !pApm->noLinear)
|
||||
if (pApm->Chipset >= AT3D)
|
||||
ApmWriteSeq(0x10, 0x12);
|
||||
else
|
||||
wrinx(pApm->xport, 0x10, 0x12);
|
||||
@ -210,7 +210,7 @@ ApmUnlock(ApmPtr pApm)
|
||||
static void
|
||||
ApmLock(ApmPtr pApm)
|
||||
{
|
||||
if (pApm->Chipset >= AT3D && !pApm->noLinear)
|
||||
if (pApm->Chipset >= AT3D)
|
||||
ApmWriteSeq(0x10, pApm->savedSR10 ? 0 : 0x12);
|
||||
else
|
||||
wrinx(pApm->xport, 0x10, pApm->savedSR10 ? 0 : 0x12);
|
||||
@ -300,7 +300,7 @@ ApmProbe(DriverPtr drv, int flags)
|
||||
}
|
||||
|
||||
|
||||
xfree(DevSections);
|
||||
free(DevSections);
|
||||
return foundScreen;
|
||||
}
|
||||
|
||||
@ -417,9 +417,16 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
return FALSE;
|
||||
|
||||
hwp = VGAHWPTR(pScrn);
|
||||
vgaHWSetStdFuncs(hwp);
|
||||
vgaHWGetIOBase(hwp);
|
||||
pApm->iobase = hwp->PIOOffset;
|
||||
pApm->xport = hwp->PIOOffset + 0x3C4;
|
||||
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
|
||||
#define PIOOFFSET hwp->PIOOffset
|
||||
#else
|
||||
/* FIXME reintroduce domain support */
|
||||
#define PIOOFFSET 0
|
||||
#endif
|
||||
pApm->iobase = PIOOFFSET;
|
||||
pApm->xport = PIOOFFSET + 0x3C4;
|
||||
|
||||
/* Set pScrn->monitor */
|
||||
pScrn->monitor = pScrn->confScreen->monitor;
|
||||
@ -483,7 +490,7 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
xf86CollectOptions(pScrn, NULL);
|
||||
|
||||
/* Process the options */
|
||||
if (!(pApm->Options = xalloc(sizeof(ApmOptions))))
|
||||
if (!(pApm->Options = malloc(sizeof(ApmOptions))))
|
||||
return FALSE;
|
||||
memcpy(pApm->Options, ApmOptions, sizeof(ApmOptions));
|
||||
xf86ProcessOptions(pScrn->scrnIndex, pScrn->options, pApm->Options);
|
||||
@ -494,21 +501,11 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
/* Default to 8 */
|
||||
pScrn->rgbBits = 8;
|
||||
}
|
||||
#ifndef XSERVER_LIBPCIACCESS
|
||||
/* you're getting a linear framebuffer with pciaccess */
|
||||
if (xf86ReturnOptValBool(pApm->Options, OPTION_NOLINEAR, FALSE)) {
|
||||
pApm->noLinear = TRUE;
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "No linear framebuffer\n");
|
||||
}
|
||||
#else
|
||||
pApm->noLinear = FALSE;
|
||||
#endif
|
||||
from = X_DEFAULT;
|
||||
pApm->hwCursor = FALSE;
|
||||
if (xf86GetOptValBool(pApm->Options, OPTION_HW_CURSOR, &pApm->hwCursor))
|
||||
from = X_CONFIG;
|
||||
if (pApm->noLinear ||
|
||||
xf86ReturnOptValBool(pApm->Options, OPTION_SW_CURSOR, FALSE)) {
|
||||
if (xf86ReturnOptValBool(pApm->Options, OPTION_SW_CURSOR, FALSE)) {
|
||||
from = X_CONFIG;
|
||||
pApm->hwCursor = FALSE;
|
||||
}
|
||||
@ -683,23 +680,11 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
}
|
||||
}
|
||||
|
||||
if (pApm->noLinear) {
|
||||
/*
|
||||
* TODO not AT3D.
|
||||
* XXX ICI XXX
|
||||
*/
|
||||
pApm->LinMapSize = 4 * 1024 * 1024 /* 0x10000 */;
|
||||
pApm->FbMapSize = 4 * 1024 * 1024 /* 0x10000 */;
|
||||
if (pApm->Chipset >= AT3D)
|
||||
pApm->LinAddress += 8 * 1024 * 1024 /* 0xA0000 */;
|
||||
}
|
||||
else {
|
||||
if (pApm->Chipset >= AT3D)
|
||||
pApm->LinMapSize = 16 * 1024 * 1024;
|
||||
else
|
||||
pApm->LinMapSize = 6 * 1024 * 1024;
|
||||
pApm->FbMapSize = 4 * 1024 * 1024;
|
||||
}
|
||||
if (pApm->Chipset >= AT3D)
|
||||
pApm->LinMapSize = 16 * 1024 * 1024;
|
||||
else
|
||||
pApm->LinMapSize = 6 * 1024 * 1024;
|
||||
pApm->FbMapSize = 4 * 1024 * 1024;
|
||||
|
||||
if (xf86LoadSubModule(pScrn, "int10")) {
|
||||
void *ptr;
|
||||
@ -722,7 +707,7 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
if (pEnt->device->videoRam != 0) {
|
||||
pScrn->videoRam = pEnt->device->videoRam;
|
||||
from = X_CONFIG;
|
||||
} else if (!pApm->noLinear && pApm->Chipset >= AT3D) {
|
||||
} else if (pApm->Chipset >= AT3D) {
|
||||
unsigned char d9, db, uc;
|
||||
/*unsigned long save;*/
|
||||
volatile unsigned char *LinMap;
|
||||
@ -791,7 +776,10 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
xf86DrvMsg(pScrn->scrnIndex, from, "VideoRAM: %d kByte\n",
|
||||
pScrn->videoRam);
|
||||
|
||||
if (!xf86IsPc98()) {
|
||||
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
|
||||
if (!xf86IsPc98())
|
||||
#endif
|
||||
{
|
||||
hwp->MapSize = 0x10000;
|
||||
vgaHWMapMem(pScrn);
|
||||
if (pApm->I2C) {
|
||||
@ -1008,8 +996,9 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
|
||||
/* Load XAA if needed */
|
||||
if (!pApm->NoAccel) {
|
||||
if (!xf86LoadSubModule(pScrn, "xaa")) {
|
||||
ApmFreeRec(pScrn);
|
||||
return FALSE;
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Falling back to shadowfb\n");
|
||||
pApm->NoAccel = TRUE;
|
||||
pApm->ShadowFB = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1077,55 +1066,42 @@ ApmMapMem(ScrnInfoPtr pScrn)
|
||||
if (pApm->LinMap == NULL)
|
||||
return FALSE;
|
||||
|
||||
if (!pApm->noLinear) {
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
pApm->FbBase = (void *)(((char *)pApm->LinMap) + 0x800000);
|
||||
pApm->VGAMap = ((char *)pApm->LinMap) + 0xFFF000;
|
||||
pApm->MemMap = ((char *)pApm->LinMap) + 0xFFEC00;
|
||||
pApm->BltMap = (void *)(((char *)pApm->LinMap) + 0x3F8000);
|
||||
}
|
||||
else {
|
||||
pApm->FbBase = (void *)pApm->LinMap;
|
||||
pApm->VGAMap = NULL;
|
||||
if (pScrn->videoRam == 6 * 1024 - 32) {
|
||||
pApm->MemMap = ((char *)pApm->LinMap) + 0x5FF800;
|
||||
pApm->BltMap = (void *)(((char *)pApm->LinMap) + 0x5F8000);
|
||||
}
|
||||
else {
|
||||
pApm->MemMap = ((char *)pApm->LinMap) + 0x3FF800;
|
||||
pApm->BltMap = (void *)(((char *)pApm->LinMap) + 0x3F8000);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize chipset
|
||||
*/
|
||||
pApm->c9 = RDXB(0xC9);
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
pApm->d9 = RDXB(0xD9);
|
||||
pApm->db = RDXB(0xDB);
|
||||
|
||||
/* If you change these two, change them also in apm_funcs.c */
|
||||
WRXB(0xDB, (pApm->db & 0xF4) | 0x0A);
|
||||
WRXB(0xD9, (pApm->d9 & 0xCF) | 0x20);
|
||||
|
||||
vgaHWSetMmioFuncs(hwp, (CARD8 *)pApm->LinMap, 0xFFF000);
|
||||
}
|
||||
if (pApm->Chipset >= AP6422)
|
||||
WRXB(0xC9, pApm->c9 | 0x10);
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
pApm->FbBase = (void *)(((char *)pApm->LinMap) + 0x800000);
|
||||
pApm->VGAMap = ((char *)pApm->LinMap) + 0xFFF000;
|
||||
pApm->MemMap = ((char *)pApm->LinMap) + 0xFFEC00;
|
||||
pApm->BltMap = (void *)(((char *)pApm->LinMap) + 0x3F8000);
|
||||
}
|
||||
else {
|
||||
pApm->FbBase = pApm->LinMap;
|
||||
|
||||
/*
|
||||
* Initialize chipset
|
||||
*/
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
pApm->d9 = RDXB_IOP(0xD9);
|
||||
pApm->db = RDXB_IOP(0xDB);
|
||||
WRXB_IOP(0xDB, pApm->db & 0xF4);
|
||||
pApm->FbBase = (void *)pApm->LinMap;
|
||||
pApm->VGAMap = NULL;
|
||||
if (pScrn->videoRam == 6 * 1024 - 32) {
|
||||
pApm->MemMap = ((char *)pApm->LinMap) + 0x5FF800;
|
||||
pApm->BltMap = (void *)(((char *)pApm->LinMap) + 0x5F8000);
|
||||
}
|
||||
else {
|
||||
pApm->MemMap = ((char *)pApm->LinMap) + 0x3FF800;
|
||||
pApm->BltMap = (void *)(((char *)pApm->LinMap) + 0x3F8000);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Initialize chipset
|
||||
*/
|
||||
pApm->c9 = RDXB(0xC9);
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
pApm->d9 = RDXB(0xD9);
|
||||
pApm->db = RDXB(0xDB);
|
||||
|
||||
/* If you change these two, change them also in apm_funcs.c */
|
||||
WRXB(0xDB, (pApm->db & 0xF4) | 0x0A);
|
||||
WRXB(0xD9, (pApm->d9 & 0xCF) | 0x20);
|
||||
|
||||
vgaHWSetMmioFuncs(hwp, (CARD8 *)pApm->LinMap, 0xFFF000);
|
||||
}
|
||||
if (pApm->Chipset >= AP6422)
|
||||
WRXB(0xC9, pApm->c9 | 0x10);
|
||||
|
||||
/*
|
||||
* Save color mode
|
||||
*/
|
||||
@ -1150,14 +1126,8 @@ ApmUnmapMem(ScrnInfoPtr pScrn)
|
||||
hwp->writeMiscOut(hwp, pApm->MiscOut);
|
||||
if (pApm->LinMap) {
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
if (!pApm->noLinear) {
|
||||
WRXB(0xD9, pApm->d9);
|
||||
WRXB(0xDB, pApm->db);
|
||||
}
|
||||
else {
|
||||
WRXB_IOP(0xD9, pApm->d9);
|
||||
WRXB_IOP(0xDB, pApm->db);
|
||||
}
|
||||
WRXB(0xD9, pApm->d9);
|
||||
WRXB(0xDB, pApm->db);
|
||||
}
|
||||
WRXB(0xC9, pApm->c9);
|
||||
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pApm->LinMap, pApm->LinMapSize);
|
||||
@ -1187,7 +1157,7 @@ ApmSave(ScrnInfoPtr pScrn)
|
||||
* Save fonts
|
||||
*/
|
||||
if (!(hwp->SavedReg.Attribute[0x10] & 1)) {
|
||||
if (pApm->FontInfo || (pApm->FontInfo = (pointer)xalloc(TEXT_AMOUNT))) {
|
||||
if (pApm->FontInfo || (pApm->FontInfo = malloc(TEXT_AMOUNT))) {
|
||||
int locked;
|
||||
|
||||
locked = ApmReadSeq(0x10);
|
||||
@ -1239,18 +1209,10 @@ ApmSave(ScrnInfoPtr pScrn)
|
||||
ApmReg->SEQ[0x1C] = rdinx(pApm->xport, 0x1C);
|
||||
|
||||
/* Hardware cursor registers. */
|
||||
if (pApm->noLinear) {
|
||||
ApmReg->EX[XR140] = RDXL_IOP(0x140);
|
||||
ApmReg->EX[XR144] = RDXW_IOP(0x144);
|
||||
ApmReg->EX[XR148] = RDXL_IOP(0x148);
|
||||
ApmReg->EX[XR14C] = RDXW_IOP(0x14C);
|
||||
}
|
||||
else {
|
||||
ApmReg->EX[XR140] = RDXL(0x140);
|
||||
ApmReg->EX[XR144] = RDXW(0x144);
|
||||
ApmReg->EX[XR148] = RDXL(0x148);
|
||||
ApmReg->EX[XR14C] = RDXW(0x14C);
|
||||
}
|
||||
ApmReg->EX[XR140] = RDXL(0x140);
|
||||
ApmReg->EX[XR144] = RDXW(0x144);
|
||||
ApmReg->EX[XR148] = RDXL(0x148);
|
||||
ApmReg->EX[XR14C] = RDXW(0x14C);
|
||||
|
||||
ApmReg->CRT[0x19] = rdinx(pApm->iobase + 0x3D4, 0x19);
|
||||
ApmReg->CRT[0x1A] = rdinx(pApm->iobase + 0x3D4, 0x1A);
|
||||
@ -1259,26 +1221,14 @@ ApmSave(ScrnInfoPtr pScrn)
|
||||
ApmReg->CRT[0x1D] = rdinx(pApm->iobase + 0x3D4, 0x1D);
|
||||
ApmReg->CRT[0x1E] = rdinx(pApm->iobase + 0x3D4, 0x1E);
|
||||
|
||||
if (pApm->noLinear) {
|
||||
/* RAMDAC registers. */
|
||||
ApmReg->EX[XRE8] = RDXL_IOP(0xE8);
|
||||
ApmReg->EX[XREC] = RDXL_IOP(0xEC);
|
||||
/* RAMDAC registers. */
|
||||
ApmReg->EX[XRE8] = RDXL(0xE8);
|
||||
ApmReg->EX[XREC] = RDXL(0xEC);
|
||||
|
||||
/* Color correction */
|
||||
ApmReg->EX[XRE0] = RDXL_IOP(0xE0);
|
||||
/* Color correction */
|
||||
ApmReg->EX[XRE0] = RDXL(0xE0);
|
||||
|
||||
ApmReg->EX[XR80] = RDXB_IOP(0x80);
|
||||
}
|
||||
else {
|
||||
/* RAMDAC registers. */
|
||||
ApmReg->EX[XRE8] = RDXL(0xE8);
|
||||
ApmReg->EX[XREC] = RDXL(0xEC);
|
||||
|
||||
/* Color correction */
|
||||
ApmReg->EX[XRE0] = RDXL(0xE0);
|
||||
|
||||
ApmReg->EX[XR80] = RDXB(0x80);
|
||||
}
|
||||
ApmReg->EX[XR80] = RDXB(0x80);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1431,8 +1381,10 @@ ApmModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode)
|
||||
|
||||
hwp->writeMiscOut(hwp, pApm->MiscOut | 0x0F);
|
||||
|
||||
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
|
||||
if (xf86IsPc98())
|
||||
outb(0xFAC, 0xFF);
|
||||
#endif
|
||||
|
||||
memcpy(ApmReg, &pApm->SavedReg, sizeof pApm->SavedReg);
|
||||
|
||||
@ -1539,10 +1491,8 @@ ApmModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode)
|
||||
ApmReg->EX[XRE8] = 0x071F01E8; /* Enable 58MHz MCLK (actually 57.3 MHz)
|
||||
This is what is used in the Windows
|
||||
drivers. The BIOS sets it to 50MHz. */
|
||||
else if (!pApm->noLinear)
|
||||
ApmReg->EX[XRE8] = RDXL(0xE8); /* No change */
|
||||
else
|
||||
ApmReg->EX[XRE8] = RDXL_IOP(0xE8); /* No change */
|
||||
ApmReg->EX[XRE8] = RDXL(0xE8); /* No change */
|
||||
|
||||
ApmReg->EX[XRE0] = 0x10;
|
||||
|
||||
@ -1626,10 +1576,7 @@ ApmRestore(ScrnInfoPtr pScrn, vgaRegPtr vgaReg, ApmRegPtr ApmReg)
|
||||
}
|
||||
else {
|
||||
/* Set aperture index to 0. */
|
||||
if (pApm->noLinear)
|
||||
WRXW_IOP(0xC0, 0);
|
||||
else
|
||||
WRXW(0xC0, 0);
|
||||
WRXW(0xC0, 0);
|
||||
|
||||
/*
|
||||
* Write the extended registers first
|
||||
@ -1638,18 +1585,10 @@ ApmRestore(ScrnInfoPtr pScrn, vgaRegPtr vgaReg, ApmRegPtr ApmReg)
|
||||
wrinx(pApm->xport, 0x1C, ApmReg->SEQ[0x1C]);
|
||||
|
||||
/* Hardware cursor registers. */
|
||||
if (pApm->noLinear) {
|
||||
WRXL_IOP(0x140, ApmReg->EX[XR140]);
|
||||
WRXW_IOP(0x144, ApmReg->EX[XR144]);
|
||||
WRXL_IOP(0x148, ApmReg->EX[XR148]);
|
||||
WRXW_IOP(0x14C, ApmReg->EX[XR14C]);
|
||||
}
|
||||
else {
|
||||
WRXL(0x140, ApmReg->EX[XR140]);
|
||||
WRXW(0x144, ApmReg->EX[XR144]);
|
||||
WRXL(0x148, ApmReg->EX[XR148]);
|
||||
WRXW(0x14C, ApmReg->EX[XR14C]);
|
||||
}
|
||||
WRXL(0x140, ApmReg->EX[XR140]);
|
||||
WRXW(0x144, ApmReg->EX[XR144]);
|
||||
WRXL(0x148, ApmReg->EX[XR148]);
|
||||
WRXW(0x14C, ApmReg->EX[XR14C]);
|
||||
|
||||
wrinx(pApm->iobase + 0x3D4, 0x19, ApmReg->CRT[0x19]);
|
||||
wrinx(pApm->iobase + 0x3D4, 0x1A, ApmReg->CRT[0x1A]);
|
||||
@ -1659,27 +1598,14 @@ ApmRestore(ScrnInfoPtr pScrn, vgaRegPtr vgaReg, ApmRegPtr ApmReg)
|
||||
wrinx(pApm->iobase + 0x3D4, 0x1E, ApmReg->CRT[0x1E]);
|
||||
|
||||
/* RAMDAC registers. */
|
||||
if (pApm->noLinear) {
|
||||
WRXL_IOP(0xE8, ApmReg->EX[XRE8]);
|
||||
WRXL_IOP(0xEC, ApmReg->EX[XREC] & ~(1 << 7));
|
||||
WRXL_IOP(0xEC, ApmReg->EX[XREC] | (1 << 7)); /* Do a PLL resync */
|
||||
}
|
||||
else {
|
||||
WRXL(0xE8, ApmReg->EX[XRE8]);
|
||||
WRXL(0xEC, ApmReg->EX[XREC] & ~(1 << 7));
|
||||
WRXL(0xEC, ApmReg->EX[XREC] | (1 << 7)); /* Do a PLL resync */
|
||||
}
|
||||
WRXL(0xE8, ApmReg->EX[XRE8]);
|
||||
WRXL(0xEC, ApmReg->EX[XREC] & ~(1 << 7));
|
||||
WRXL(0xEC, ApmReg->EX[XREC] | (1 << 7)); /* Do a PLL resync */
|
||||
|
||||
/* Color correction */
|
||||
if (pApm->noLinear)
|
||||
WRXL_IOP(0xE0, ApmReg->EX[XRE0]);
|
||||
else
|
||||
WRXL(0xE0, ApmReg->EX[XRE0]);
|
||||
WRXL(0xE0, ApmReg->EX[XRE0]);
|
||||
|
||||
if (pApm->noLinear)
|
||||
WRXB_IOP(0x80, ApmReg->EX[XR80]);
|
||||
else
|
||||
WRXB(0x80, ApmReg->EX[XR80]);
|
||||
WRXB(0x80, ApmReg->EX[XR80]);
|
||||
|
||||
/*
|
||||
* This function handles restoring the generic VGA registers.
|
||||
@ -1735,17 +1661,8 @@ ApmScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
|
||||
pApm->pScreen = pScreen;
|
||||
|
||||
/* Map the chip memory and MMIO areas */
|
||||
if (pApm->noLinear) {
|
||||
PCI_READ_LONG(pApm->PciInfo, &pApm->saveCmd, PCI_CMD_STAT_REG);
|
||||
PCI_WRITE_LONG(pApm->PciInfo, pApm->saveCmd | (PCI_CMD_IO_ENABLE | PCI_CMD_MEM_ENABLE), PCI_CMD_STAT_REG);
|
||||
#ifndef XSERVER_LIBPCIACCESS
|
||||
pApm->FbBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_FRAMEBUFFER,
|
||||
pApm->PciTag, 0xA0000, 0x10000);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
if (!ApmMapMem(pScrn))
|
||||
return FALSE;
|
||||
if (!ApmMapMem(pScrn))
|
||||
return FALSE;
|
||||
|
||||
/* No memory reserved yet */
|
||||
pApm->OffscreenReserved = 0;
|
||||
@ -1793,7 +1710,7 @@ ApmScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
|
||||
if(pApm->ShadowFB) {
|
||||
pApm->ShadowPitch =
|
||||
((pScrn->virtualX * pScrn->bitsPerPixel >> 3) + 3) & ~3L;
|
||||
pApm->ShadowPtr = xalloc(pApm->ShadowPitch * pScrn->virtualY);
|
||||
pApm->ShadowPtr = malloc(pApm->ShadowPitch * pScrn->virtualY);
|
||||
FbBase = pApm->ShadowPtr;
|
||||
} else {
|
||||
pApm->ShadowPtr = NULL;
|
||||
@ -1895,10 +1812,7 @@ ApmScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
|
||||
|
||||
xf86DPMSInit(pScreen, ApmDisplayPowerManagementSet, 0);
|
||||
|
||||
if (pApm->noLinear)
|
||||
ApmInitVideo_IOP(pScreen);
|
||||
else
|
||||
ApmInitVideo(pScreen);
|
||||
ApmInitVideo(pScreen);
|
||||
|
||||
pScreen->SaveScreen = ApmSaveScreen;
|
||||
|
||||
@ -2023,14 +1937,9 @@ ApmEnterVT(int scrnIndex, int flags)
|
||||
vgaHWPtr hwp = VGAHWPTR(pScrn);
|
||||
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
if (!pApm->noLinear) {
|
||||
/* If you change it, change it also in apm_funcs.c */
|
||||
WRXB(0xDB, (pApm->db & 0xF4) | 0x0A | pApm->Rush);
|
||||
WRXB(0xD9, (pApm->d9 & 0xCF) | 0x20);
|
||||
}
|
||||
else {
|
||||
WRXB_IOP(0xDB, pApm->db & 0xF4);
|
||||
}
|
||||
/* If you change it, change it also in apm_funcs.c */
|
||||
WRXB(0xDB, (pApm->db & 0xF4) | 0x0A | pApm->Rush);
|
||||
WRXB(0xD9, (pApm->d9 & 0xCF) | 0x20);
|
||||
}
|
||||
if (pApm->Chipset >= AP6422)
|
||||
WRXB(0xC9, pApm->c9 | 0x10);
|
||||
@ -2064,19 +1973,15 @@ ApmLeaveVT(int scrnIndex, int flags)
|
||||
vgaHWLock(hwp);
|
||||
ApmLock(pApm);
|
||||
if (pApm->Chipset >= AT3D) {
|
||||
if (!pApm->noLinear) {
|
||||
WRXB(0xD9, pApm->d9);
|
||||
WRXB(0xDB, pApm->db);
|
||||
}
|
||||
else {
|
||||
WRXB_IOP(0xD9, pApm->d9);
|
||||
WRXB_IOP(0xDB, pApm->db);
|
||||
}
|
||||
WRXB(0xD9, pApm->d9);
|
||||
WRXB(0xDB, pApm->db);
|
||||
}
|
||||
WRXB(0xC9, pApm->c9);
|
||||
|
||||
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
|
||||
if (xf86IsPc98())
|
||||
outb(0xFAC, 0xFE);
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2105,15 +2010,15 @@ ApmCloseScreen(int scrnIndex, ScreenPtr pScreen)
|
||||
if(pApm->CursorInfoRec)
|
||||
xf86DestroyCursorInfoRec(pApm->CursorInfoRec);
|
||||
pApm->CursorInfoRec = NULL;
|
||||
if (pApm->DGAModes)
|
||||
xfree(pApm->DGAModes);
|
||||
if (pApm->adaptor)
|
||||
xfree(pApm->adaptor);
|
||||
free(pApm->DGAModes);
|
||||
free(pApm->adaptor);
|
||||
|
||||
pScrn->vtSema = FALSE;
|
||||
|
||||
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
|
||||
if (xf86IsPc98())
|
||||
outb(0xFAC, 0xFE);
|
||||
#endif
|
||||
|
||||
pScreen->CloseScreen = pApm->CloseScreen;
|
||||
return (*pScreen->CloseScreen)(scrnIndex, pScreen);
|
||||
@ -2178,13 +2083,8 @@ ApmDisplayPowerManagementSet(ScrnInfoPtr pScrn, int PowerManagementMode,
|
||||
default:
|
||||
dpmsreg = 0;
|
||||
}
|
||||
if (pApm->noLinear) {
|
||||
tmp = RDXB_IOP(0xD0);
|
||||
WRXB_IOP(0xD0, (tmp & 0xFC) | dpmsreg);
|
||||
} else {
|
||||
tmp = RDXB(0xD0);
|
||||
WRXB(0xD0, (tmp & 0xFC) | dpmsreg);
|
||||
}
|
||||
tmp = RDXB(0xD0);
|
||||
WRXB(0xD0, (tmp & 0xFC) | dpmsreg);
|
||||
}
|
||||
|
||||
static Bool
|
||||
|
@ -7,41 +7,15 @@
|
||||
#ifndef PSZ
|
||||
#define PSZ 8
|
||||
#endif
|
||||
#ifdef IOP_ACCESS
|
||||
# define APM_SUFF_IOP "_IOP"
|
||||
# undef RDXB
|
||||
# undef RDXW
|
||||
# undef RDXL
|
||||
# undef WRXB
|
||||
# undef WRXW
|
||||
# undef WRXL
|
||||
# undef ApmWriteSeq
|
||||
# define RDXB RDXB_IOP
|
||||
# define RDXW RDXW_IOP
|
||||
# define RDXL RDXL_IOP
|
||||
# define WRXB WRXB_IOP
|
||||
# define WRXW WRXW_IOP
|
||||
# define WRXL WRXL_IOP
|
||||
# define ApmWriteSeq(i, v) wrinx(pApm->xport, i, v)
|
||||
#else
|
||||
# define APM_SUFF_IOP ""
|
||||
#endif
|
||||
|
||||
#if PSZ == 24
|
||||
# define APM_SUFF_24 "24"
|
||||
# ifdef IOP_ACCESS
|
||||
# define A(s) Apm##s##24##_IOP
|
||||
# else
|
||||
# define A(s) Apm##s##24
|
||||
# endif
|
||||
# define A(s) Apm##s##24
|
||||
#else
|
||||
# define APM_SUFF_24 ""
|
||||
# ifdef IOP_ACCESS
|
||||
# define A(s) Apm##s##_IOP
|
||||
# else
|
||||
# define A(s) Apm##s
|
||||
# endif
|
||||
# define A(s) Apm##s
|
||||
#endif
|
||||
#define DPRINTNAME(s) do { xf86DrvMsgVerb(pScrn->pScreen->myNum, X_NOTICE, 6, "Apm" #s APM_SUFF_24 APM_SUFF_IOP "\n"); } while (0)
|
||||
#define DPRINTNAME(s) do { xf86DrvMsgVerb(pScrn->pScreen->myNum, X_NOTICE, 6, "Apm" #s APM_SUFF_24 "\n"); } while (0)
|
||||
|
||||
#if PSZ == 24
|
||||
#undef SETSOURCEXY
|
||||
@ -728,7 +702,7 @@ A(TEGlyphRenderer)(ScrnInfoPtr pScrn, int x, int y, int w, int h,
|
||||
dwords = (w2 + 31) >> 5;
|
||||
dwords <<= 2;
|
||||
|
||||
base0 = base = (CARD32*)xalloc(dwords * h);
|
||||
base0 = base = malloc(dwords * h);
|
||||
if (!base)
|
||||
return; /* Should not happen : it's rather small... */
|
||||
|
||||
@ -739,7 +713,7 @@ A(TEGlyphRenderer)(ScrnInfoPtr pScrn, int x, int y, int w, int h,
|
||||
A(WriteBitmap)(pScrn, x, y, w, h2, (unsigned char *)base0, dwords,
|
||||
skipleft, fg, bg, rop, planemask);
|
||||
|
||||
xfree(base0);
|
||||
free(base0);
|
||||
}
|
||||
|
||||
static void A(SetupForMono8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty,
|
||||
@ -1495,7 +1469,7 @@ A(Sync)(ScrnInfoPtr pScrn)
|
||||
|
||||
WRXB(0x1FF, 0);
|
||||
if (!xf86ServerIsExiting())
|
||||
FatalError("Hung in ApmSync" APM_SUFF_24 APM_SUFF_IOP "(%d) (Status = 0x%08X)\n", pScrn->pScreen->myNum, status);
|
||||
FatalError("Hung in ApmSync" APM_SUFF_24 "(%d) (Status = 0x%08X)\n", pScrn->pScreen->myNum, status);
|
||||
}
|
||||
if (pApm->apmClip) {
|
||||
SETCLIP_CTRL(0);
|
||||
@ -1559,6 +1533,4 @@ A(Sync6422)(ScrnInfoPtr pScrn)
|
||||
#undef A
|
||||
#undef DEPTH
|
||||
#undef PSZ
|
||||
#undef IOP_ACCESS
|
||||
#undef APM_SUFF_24
|
||||
#undef APM_SUFF_IOP
|
||||
|
@ -19,7 +19,6 @@ static XF86VideoAdaptorPtr A(SetupImageVideo)(ScreenPtr);
|
||||
|
||||
static void A(StopVideo)(ScrnInfoPtr, pointer, Bool);
|
||||
static int A(SetPortAttribute)(ScrnInfoPtr, Atom, INT32, pointer);
|
||||
#ifndef IOP_ACCESS
|
||||
static int ApmGetPortAttribute(ScrnInfoPtr, Atom ,INT32 *, pointer);
|
||||
static void ApmQueryBestSize(ScrnInfoPtr, Bool, short, short, short,
|
||||
short, unsigned int *, unsigned int *,
|
||||
@ -27,9 +26,10 @@ static void ApmQueryBestSize(ScrnInfoPtr, Bool, short, short, short,
|
||||
static int ApmQueryImageAttributes(ScrnInfoPtr, int,
|
||||
unsigned short *, unsigned short *,
|
||||
int *, int *);
|
||||
#endif
|
||||
#ifndef XV_NEW_REPUT
|
||||
static int A(ReputImage)(ScrnInfoPtr, short, short, RegionPtr, pointer,
|
||||
DrawablePtr);
|
||||
#endif
|
||||
static int A(PutImage)(ScrnInfoPtr, short, short, short, short, short,
|
||||
short, short, short, int, unsigned char*,
|
||||
short, short, Bool, RegionPtr, pointer,
|
||||
@ -55,7 +55,7 @@ void A(InitVideo)(ScreenPtr pScreen)
|
||||
if (pApm->Chipset >= AT24) {
|
||||
if ((newAdaptor = A(SetupImageVideo)(pScreen))) {
|
||||
|
||||
newAdaptors = xalloc((num_adaptors + 1) *
|
||||
newAdaptors = malloc((num_adaptors + 1) *
|
||||
sizeof(XF86VideoAdaptorPtr*));
|
||||
if(newAdaptors) {
|
||||
if(num_adaptors)
|
||||
@ -72,8 +72,7 @@ void A(InitVideo)(ScreenPtr pScreen)
|
||||
if(num_adaptors)
|
||||
xf86XVScreenInit(pScreen, adaptors, num_adaptors);
|
||||
|
||||
if(freeAdaptors)
|
||||
xfree(adaptors);
|
||||
free(adaptors);
|
||||
}
|
||||
|
||||
#ifndef APM_VIDEO_DEFINES
|
||||
@ -302,9 +301,9 @@ A(SetupImageVideo)(ScreenPtr pScreen)
|
||||
XF86VideoAdaptorPtr adapt;
|
||||
ApmPortPrivPtr pPriv;
|
||||
|
||||
if(!(adapt = xcalloc(1, sizeof(XF86VideoAdaptorRec) +
|
||||
2 * sizeof(ApmPortPrivRec) +
|
||||
2 * sizeof(DevUnion))))
|
||||
if(!(adapt = calloc(1, sizeof(XF86VideoAdaptorRec) +
|
||||
2 * sizeof(ApmPortPrivRec) +
|
||||
2 * sizeof(DevUnion))))
|
||||
return NULL;
|
||||
|
||||
adapt->type = XvWindowMask | XvInputMask | XvImageMask;
|
||||
@ -336,7 +335,9 @@ A(SetupImageVideo)(ScreenPtr pScreen)
|
||||
adapt->GetPortAttribute = ApmGetPortAttribute;
|
||||
adapt->QueryBestSize = ApmQueryBestSize;
|
||||
adapt->PutImage = A(PutImage);
|
||||
#ifndef XV_NEW_REPUT
|
||||
adapt->ReputImage = A(ReputImage);
|
||||
#endif
|
||||
adapt->QueryImageAttributes = ApmQueryImageAttributes;
|
||||
|
||||
pPriv->brightness = 0;
|
||||
@ -358,7 +359,6 @@ A(SetupImageVideo)(ScreenPtr pScreen)
|
||||
return adapt;
|
||||
}
|
||||
|
||||
#ifndef IOP_ACCESS
|
||||
/* ApmClipVideo -
|
||||
|
||||
Takes the dst box in standard X BoxRec form (top and left
|
||||
@ -420,7 +420,6 @@ ApmClipVideo(BoxPtr dst, INT32 *x1, INT32 *x2, INT32 *y1, INT32 *y2,
|
||||
else
|
||||
*scaley = ((*y2 - *y1) / (dst->y2 - dst->y1)) >> 4;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
A(StopVideo)(ScrnInfoPtr pScrn, pointer data, Bool shutdown)
|
||||
@ -457,7 +456,6 @@ A(SetPortAttribute)(ScrnInfoPtr pScrn, Atom attribute, INT32 value,
|
||||
return Success;
|
||||
}
|
||||
|
||||
#ifndef IOP_ACCESS
|
||||
static int
|
||||
ApmGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute, INT32 *value,
|
||||
pointer data)
|
||||
@ -485,7 +483,6 @@ ApmQueryBestSize(ScrnInfoPtr pScrn, Bool motion, short vid_w, short vid_h,
|
||||
*p_w = drw_w & round;
|
||||
*p_h = drw_h & round;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void A(XvMoveCB)(FBAreaPtr area1, FBAreaPtr area2)
|
||||
{
|
||||
@ -903,7 +900,6 @@ A(PutImage)(ScrnInfoPtr pScrn, short src_x, short src_y,
|
||||
return Success;
|
||||
}
|
||||
|
||||
#ifndef IOP_ACCESS
|
||||
static int
|
||||
ApmQueryImageAttributes(ScrnInfoPtr pScrn, int id,
|
||||
unsigned short *w, unsigned short *h,
|
||||
@ -949,5 +945,5 @@ common:
|
||||
|
||||
return size;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user