You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
(9) |
Apr
(31) |
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
(2) |
Oct
|
Nov
(15) |
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(13) |
Feb
(7) |
Mar
|
Apr
(8) |
May
(11) |
Jun
|
Jul
(5) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
|
Dec
(11) |
2005 |
Jan
(11) |
Feb
(3) |
Mar
|
Apr
(9) |
May
|
Jun
(11) |
Jul
|
Aug
|
Sep
(4) |
Oct
(12) |
Nov
(1) |
Dec
|
2006 |
Jan
(4) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(7) |
Sep
|
Oct
(2) |
Nov
(1) |
Dec
(5) |
2007 |
Jan
(1) |
Feb
(128) |
Mar
|
Apr
(5) |
May
(2) |
Jun
|
Jul
(1) |
Aug
|
Sep
(8) |
Oct
(3) |
Nov
|
Dec
(29) |
2008 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(1) |
Jul
(5) |
Aug
|
Sep
|
Oct
(5) |
Nov
(2) |
Dec
(2) |
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
(3) |
Dec
(3) |
2010 |
Jan
(3) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
(2) |
From: <nic...@us...> - 2012-12-10 13:49:40
|
Revision: 354 http://vidix.svn.sourceforge.net/vidix/?rev=354&view=rev Author: nickols_k Date: 2012-12-10 13:49:32 +0000 (Mon, 10 Dec 2012) Log Message: ----------- supress warning Modified Paths: -------------- trunk/vidix/vidix/vidixlibxx.cpp trunk/vidix/vidix/vidixlibxx.h Modified: trunk/vidix/vidix/vidixlibxx.cpp =================================================================== --- trunk/vidix/vidix/vidixlibxx.cpp 2012-12-10 13:28:54 UTC (rev 353) +++ trunk/vidix/vidix/vidixlibxx.cpp 2012-12-10 13:49:32 UTC (rev 354) @@ -2,8 +2,43 @@ using namespace vidix; -Vidix::Vidix(const std::string& path,const std::string& name,unsigned cap,int verbose) - : handle(vdlOpen(path.c_str(),name.c_str(),cap,verbose)), +Vidix& Vidix::operator =(const Vidix& _this) { + vdlFreeCapabilityS(&cap); + vdlFreeFourccS(&fourcc); + vdlFreePlaybackS(&playback); + vdlFreeYUVS(&yuv); + vdlFreeRectS(&rect); + vdlFreeGrKeyS(&grkey); + vdlFreeVideoEqS(&video_eq); + vdlFreeDeinterlaceS(&deint); + vdlFreeDmaS(&dma); + vdlFreeOemFxS(&oemfx); + vdlClose(handle); + + handle=vdlOpen(_this.path.c_str(),_this.name.c_str(),_this.__cap,_this.__verbose); + path=_this.path; + name=_this.name; + __cap=_this.__cap; + __verbose=_this.__verbose; + cap=*vdlAllocCapabilityS(); + fourcc=*vdlAllocFourccS(); + playback=*vdlAllocPlaybackS(); + yuv=*vdlAllocYUVS(); + rect=*vdlAllocRectS(); + grkey=*vdlAllocGrKeyS(); + video_eq=*vdlAllocVideoEqS(); + deint=*vdlAllocDeinterlaceS(); + dma=*vdlAllocDmaS(); + oemfx=*vdlAllocOemFxS(); + return *this; +} + +Vidix::Vidix(const Vidix& _this) + : handle(vdlOpen(_this.path.c_str(),_this.name.c_str(),_this.__cap,_this.__verbose)), + path(_this.path), + name(_this.name), + __cap(_this.__cap), + __verbose(_this.__verbose), cap(*vdlAllocCapabilityS()), fourcc(*vdlAllocFourccS()), playback(*vdlAllocPlaybackS()), @@ -17,8 +52,12 @@ { } -Vidix::Vidix(const std::string& name,unsigned cap,int verbose) - : handle(vdlOpen(VIDIX_PATH,name.c_str(),cap,verbose)), +Vidix::Vidix(const std::string& _path,const std::string& _name,unsigned _cap,int _verbose) + : handle(vdlOpen(_path.c_str(),_name.c_str(),_cap,_verbose)), + path(_path), + name(_name), + __cap(_cap), + __verbose(_verbose), cap(*vdlAllocCapabilityS()), fourcc(*vdlAllocFourccS()), playback(*vdlAllocPlaybackS()), @@ -32,6 +71,25 @@ { } +Vidix::Vidix(const std::string& _name,unsigned _cap,int _verbose) + : handle(vdlOpen(VIDIX_PATH,_name.c_str(),_cap,_verbose)), + path(VIDIX_PATH), + name(_name), + __cap(_cap), + __verbose(_verbose), + cap(*vdlAllocCapabilityS()), + fourcc(*vdlAllocFourccS()), + playback(*vdlAllocPlaybackS()), + yuv(*vdlAllocYUVS()), + rect(*vdlAllocRectS()), + grkey(*vdlAllocGrKeyS()), + video_eq(*vdlAllocVideoEqS()), + deint(*vdlAllocDeinterlaceS()), + dma(*vdlAllocDmaS()), + oemfx(*vdlAllocOemFxS()) +{ +} + Vidix::~Vidix() { vdlFreeCapabilityS(&cap); vdlFreeFourccS(&fourcc); Modified: trunk/vidix/vidix/vidixlibxx.h =================================================================== --- trunk/vidix/vidix/vidixlibxx.h 2012-12-10 13:28:54 UTC (rev 353) +++ trunk/vidix/vidix/vidixlibxx.h 2012-12-10 13:49:32 UTC (rev 354) @@ -10,11 +10,13 @@ class Vidix { public: + Vidix(const Vidix& _this); Vidix(const std::string& path,const std::string& name,unsigned cap,int verbose); Vidix(const std::string& name="",unsigned cap=TYPE_OUTPUT,int verbose=0); virtual ~Vidix(); int is_error() const { return handle==NULL; } + Vidix& operator =(const Vidix& _this); unsigned version() const; int get_capabilities(); @@ -46,7 +48,11 @@ vidix_dma_t& dma; vidix_oem_fx_t& oemfx; private: - VDL_HANDLE handle; + VDL_HANDLE handle; + std::string path; + std::string name; + unsigned __cap; + int __verbose; }; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2012-12-10 13:29:00
|
Revision: 353 http://vidix.svn.sourceforge.net/vidix/?rev=353&view=rev Author: nickols_k Date: 2012-12-10 13:28:54 +0000 (Mon, 10 Dec 2012) Log Message: ----------- use const std::string& instead of const char* in constructor Modified Paths: -------------- trunk/vidix/vidix/vidixlibxx.cpp trunk/vidix/vidix/vidixlibxx.h Modified: trunk/vidix/vidix/vidixlibxx.cpp =================================================================== --- trunk/vidix/vidix/vidixlibxx.cpp 2012-11-22 10:16:34 UTC (rev 352) +++ trunk/vidix/vidix/vidixlibxx.cpp 2012-12-10 13:28:54 UTC (rev 353) @@ -2,8 +2,8 @@ using namespace vidix; -Vidix::Vidix(const char *path,const char *name,unsigned cap,int verbose) - : handle(vdlOpen(path,name,cap,verbose)), +Vidix::Vidix(const std::string& path,const std::string& name,unsigned cap,int verbose) + : handle(vdlOpen(path.c_str(),name.c_str(),cap,verbose)), cap(*vdlAllocCapabilityS()), fourcc(*vdlAllocFourccS()), playback(*vdlAllocPlaybackS()), @@ -17,8 +17,8 @@ { } -Vidix::Vidix(const char *name,unsigned cap,int verbose) - : handle(vdlOpen(VIDIX_PATH,name,cap,verbose)), +Vidix::Vidix(const std::string& name,unsigned cap,int verbose) + : handle(vdlOpen(VIDIX_PATH,name.c_str(),cap,verbose)), cap(*vdlAllocCapabilityS()), fourcc(*vdlAllocFourccS()), playback(*vdlAllocPlaybackS()), Modified: trunk/vidix/vidix/vidixlibxx.h =================================================================== --- trunk/vidix/vidix/vidixlibxx.h 2012-11-22 10:16:34 UTC (rev 352) +++ trunk/vidix/vidix/vidixlibxx.h 2012-12-10 13:28:54 UTC (rev 353) @@ -2,6 +2,7 @@ #define __VIDIXLIBXX_H_INCLUDED 1 #include <stdlib.h> +#include <string> #include "vidix.h" @@ -9,8 +10,8 @@ class Vidix { public: - Vidix(const char *path,const char *name,unsigned cap,int verbose); - Vidix(const char *name=NULL,unsigned cap=TYPE_OUTPUT,int verbose=0); + Vidix(const std::string& path,const std::string& name,unsigned cap,int verbose); + Vidix(const std::string& name="",unsigned cap=TYPE_OUTPUT,int verbose=0); virtual ~Vidix(); int is_error() const { return handle==NULL; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2012-11-22 10:16:47
|
Revision: 352 http://vidix.svn.sourceforge.net/vidix/?rev=352&view=rev Author: nickols_k Date: 2012-11-22 10:16:34 +0000 (Thu, 22 Nov 2012) Log Message: ----------- NEW: version 1.5: C++: added class Vidix Modified Paths: -------------- trunk/vidix/NEWS trunk/vidix/configure trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/cyberblade_vid.c trunk/vidix/vidix/drivers/genfb_vid.c trunk/vidix/vidix/drivers/ivtv_vid.c trunk/vidix/vidix/drivers/mach64_vid.c trunk/vidix/vidix/drivers/mga_vid.c trunk/vidix/vidix/drivers/nvidia_vid.c trunk/vidix/vidix/drivers/pm2_vid.c trunk/vidix/vidix/drivers/pm3_vid.c trunk/vidix/vidix/drivers/radeon_vid.c trunk/vidix/vidix/drivers/radeonhd_vid.c trunk/vidix/vidix/drivers/s3_vid.c trunk/vidix/vidix/drivers/savage_vid.c trunk/vidix/vidix/drivers/sis_vid.c trunk/vidix/vidix/drivers/unichrome_vid.c trunk/vidix/vidix/vidix.h trunk/vidix/vidix/vidixlib.c trunk/vidix/vidix/vidixlib.h Added Paths: ----------- trunk/vidix/vidix/vidix_driver.h trunk/vidix/vidix/vidix_enums.h trunk/vidix/vidix/vidix_types.h trunk/vidix/vidix/vidixlibxx.cpp trunk/vidix/vidix/vidixlibxx.h Modified: trunk/vidix/NEWS =================================================================== --- trunk/vidix/NEWS 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/NEWS 2012-11-22 10:16:34 UTC (rev 352) @@ -1,5 +1,9 @@ VIDIX NEWS -- history of user-visible changes. +Version 1.5.0 + +* Support for C++ was added + Version 1.0.0 * multiple backports from MPlayerHQ by "Benjamin Zores" <be...@ge...> Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/configure 2012-11-22 10:16:34 UTC (rev 352) @@ -5,7 +5,7 @@ # DHA/vidix version number VERSION_MAJOR=1 -VERSION_MINOR=0 +VERSION_MINOR=5 VERSION_MICRO=0 ENABLED_LIST=( @@ -36,8 +36,10 @@ "build|configure for building on BUILD [guessed]", "host|cross-compile to build program to run on HOST [BUILD]", "cc|use this C compiler to build PROGRAM|gcc", + "cxx|use this C++ compiler to build PROGRAM|g++", "as|use this ASSEMBLER to build PROGRAM|as", "ld|use this LINKER to build PROGRAM|gcc", + "ldxx|use this LINKER to build PROGRAM with C++ sources|g++", "ldconfig|use this LDCONFIG to install PROGRAM|ldconfig", "install|use this INSTALL to install PROGRAM|install", "pkg_config|use this PKG-CONFIG to configure PROGRAM|pkg-config", @@ -54,7 +56,9 @@ EXTRA_LIST=( "asflags|add these FLAGS to [\$ASFLAGS=$ASFLAGS]", "cflags|add these FLAGS to [\$CFLAGS=$CFLAGS]", + "cxxflags|add these FLAGS to [\$CXXFLAGS=$CXXFLAGS]", "ldflags|add these FLAGS to [\$LDFLAGS=$LDFLAGS]", + "ldxxflags|add these FLAGS to [\$LDXXFLAGS=$LDXXFLAGS]", "extralibs|add these LIBS to [\$LIBS=$LIBS]" ) @@ -66,9 +70,12 @@ "MAKE|Make command (example: 'make -j')|make", "AS|Assembler command|as", "CC|C compiler command (example: 'gcc -m64')|cc", + "CXX|C++ compiler command (example: 'g++ -m64')|cxx", "AWK|AWK programming language (after names of its inventors: Aho Weinberger Kernighan)", "CFLAGS|C compiler flags (example: '-funit-at-a-time')", + "CXXFLAGS|C++ compiler flags (example: '-Weffc++')", "LDFLAGS|linker flags (example: '-L/opt/lib64')", + "LDXXFLAGS|C++ linker flags (example: '-L/opt/lib64')", "LIBS|additional libraries (example: 'LIBS=-lacml_mv')", "DESTDIR|specifies base of installation" ) @@ -211,6 +218,9 @@ fi test "$debug" != "0" && def_debug='#define VIDIX_DEBUG 1' || def_debug='#undef VIDIX_DEBUG' + +CXXFLAGS="$CFLAGS -Weffc++" +LDXXFLAGS="$LDFLAGS" ############################################################################# echo "Creating config.mak" cat >> config.mak << EOF @@ -221,11 +231,14 @@ LIBDIR = $libdir DESTDIR = $DESTDIR OPTFLAGS = $CFLAGS +OPTXXFLAGS = $CXXFLAGS LDFLAGS = $LDFLAGS +LDXXFLAGS = $LDXXFLAGS AR = ar CC = $cc +CXX = $cxx AWK = $awk -LDCONFIG=$ld_config +LDCONFIG=$ldconfig INSTALL=$install VIDIX_VERSION_MAJOR = $VERSION_MAJOR Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/Makefile 2012-11-22 10:16:34 UTC (rev 352) @@ -5,18 +5,27 @@ LIBNAME_SHARED = $(NAME).so LIBNAME_SHARED_MAJOR = $(NAME).so.$(VIDIX_VERSION_MAJOR) LIBNAME_SHARED_VERSION = $(NAME).so.$(VIDIX_VERSION) +LIBNAME_SHAREDXX = $(NAME)xx.so +LIBNAME_SHAREDXX_MAJOR = $(NAME)xx.so.$(VIDIX_VERSION_MAJOR) +LIBNAME_SHAREDXX_VERSION = $(NAME)xx.so.$(VIDIX_VERSION) LIBNAME_WIN32 = $(NAME).dll LIBNAME = $(NAME).a INCDIR = $(prefix)/include/vidix SRCS = vidixlib.c +CXXSRCS = vidixlibxx.cpp +HEADERS = fourcc.h vidix.h vidix_driver.h vidix_enums.h vidix_types.h vidixlib.h vidixlibxx.h OBJS=$(SRCS:.c=.o) +CXXOBJS=$(CXXSRCS:.cpp=.o) SHOBJS=$(SRCS:.c=.po) +CXXSHOBJS=$(CXXSRCS:.cpp=.po) -CFLAGS = $(OPTFLAGS) -I.. -DVIDIX_COMPILE_STATIC +CFLAGS = $(OPTFLAGS) -I.. -DVIDIX_COMPILE_STATIC +CXXFLAGS = $(OPTXXFLAGS) -I.. -DVIDIX_COMPILE_STATIC SHCFLAGS= $(OPTFLAGS) -I.. -fPIC +CXXSHCFLAGS= $(OPTXXFLAGS) -I.. -fPIC -DVIDIX_PATH='"$(LIBDIR)/vidix/"' SUBDIRS = drivers DO_MAKE = @ for i in $(SUBDIRS); do $(MAKE) -C $$i $@ || exit; done @@ -26,7 +35,7 @@ LDCONFIG_FLAGS += -R endif -.SUFFIXES: .c .o .po +.SUFFIXES: .cpp .c .o .po ifeq ($(VIDIX_STATIC),yes) .PHONY: $(SUBDIRS) @@ -34,7 +43,7 @@ LIB_TARGETS= ifeq ($(VIDIX_SHARED),yes) -LIB_TARGETS += $(LIBNAME_SHARED_VERSION) +LIB_TARGETS += $(LIBNAME_SHARED_VERSION) $(LIBNAME_SHAREDXX_VERSION) endif ifeq ($(VIDIX_STATIC),yes) LIB_TARGETS += $(LIBNAME) @@ -57,12 +66,20 @@ .c.o: $(CC) -c $(CFLAGS) -o $@ $< +.cpp.o: + $(CXX) -c $(CXXFLAGS) -o $@ $< .c.po: $(CC) -c $(SHCFLAGS) -o $@ $< +.cpp.po: + $(CXX) -c $(CXXSHCFLAGS) -o $@ $< ifeq ($(VIDIX_SHARED),yes) $(LIBNAME_SHARED_VERSION): $(SHOBJS) - $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(SHOBJS) -lc $(LIBDL) + $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(SHOBJS) -ldl -lc $(LIBDL) + ln -sf $@ $(LIBNAME_SHARED_MAJOR) + ln -sf $(LIBNAME_SHARED_MAJOR) $(LIBNAME_SHARED) +$(LIBNAME_SHAREDXX_VERSION): $(CXXSHOBJS) + $(CXX) $(LDXXFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(CXXSHOBJS) -L./ -lvidix $(LIBNAME_WIN32): $(OBJS) $(CC) -shared -o $(LIBNAME_WIN32) $(SHOBJS) $(LIBS) ifneq ($(TARGET_OS),CYGWIN) @@ -72,8 +89,8 @@ endif ifeq ($(VIDIX_STATIC),yes) -$(LIBNAME): $(SUBDIRS) $(OBJS) - $(AR) r $@ $(OBJS) \ +$(LIBNAME): $(SUBDIRS) $(OBJS) $(CXXOBJS) + $(AR) r $@ $(OBJS) $(CXXOBJS) \ $(wildcard drivers/*.o) endif @@ -89,32 +106,35 @@ $(MAKE) -C drivers distclean dep depend: - $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend + $(CC) -MM $(CFLAGS) $(SRCS) $(CXXSRCS) 1>.depend $(MAKE) -C drivers depend install: mkdir -p $(DESTDIR)$(LIBDIR) ifeq ($(VIDIX_SHARED),yes) install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR) - ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) + install -m 755 -s -p $(LIBNAME_SHAREDXX_VERSION) $(DESTDIR)$(LIBDIR) ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) - -$(LDCONFIG) $(LDCONFIG_FLAGS) + ln -sf $(LIBNAME_SHARED_MAJOR) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHAREDXX_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHAREDXX_MAJOR) + ln -sf $(LIBNAME_SHAREDXX_MAJOR) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHAREDXX) + $(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_STATIC),yes) cp -f $(LIBNAME) $(DESTDIR)$(LIBDIR) endif mkdir -p $(DESTDIR)$(INCDIR) - install -m 644 fourcc.h $(DESTDIR)$(INCDIR) - install -m 644 vidix.h $(DESTDIR)$(INCDIR) - install -m 644 vidixlib.h $(DESTDIR)$(INCDIR) - + for h in $(HEADERS); do \ + install -m 644 $$h $(DESTDIR)$(INCDIR); \ + done; $(MAKE) -C drivers install uninstall: ifeq ($(VIDIX_SHARED),yes) rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* - -$(LDCONFIG) $(LDCONFIG_FLAGS) + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHAREDXX)* + $(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_STATIC),yes) rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME) Modified: trunk/vidix/vidix/drivers/cyberblade_vid.c =================================================================== --- trunk/vidix/vidix/drivers/cyberblade_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/cyberblade_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -44,6 +44,7 @@ #include <unistd.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/genfb_vid.c =================================================================== --- trunk/vidix/vidix/drivers/genfb_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/genfb_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -7,6 +7,7 @@ #include <fcntl.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/ivtv_vid.c =================================================================== --- trunk/vidix/vidix/drivers/ivtv_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/ivtv_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -47,11 +47,12 @@ #include <linux/ivtv.h> #include <linux/fb.h> -#include "../vidix.h" -#include "../fourcc.h" -#include "../../libdha/libdha.h" -#include "../../libdha/pci_ids.h" -#include "../../libdha/pci_names.h" +#include "vidix.h" +#include "vidix_driver.h" +#include "fourcc.h" +#include "libdha/libdha.h" +#include "libdha/pci_ids.h" +#include "libdha/pci_names.h" #define VIDIX_STATIC ivtv_ Modified: trunk/vidix/vidix/drivers/mach64_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mach64_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/mach64_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -26,6 +26,7 @@ #include "config.h" #include "bswap.h" #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/mga_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mga_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/mga_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -65,6 +65,7 @@ #include <inttypes.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/nvidia_vid.c =================================================================== --- trunk/vidix/vidix/drivers/nvidia_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/nvidia_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -4,7 +4,7 @@ RIVATV (rivatv.sf.net) Licence: GPL WARNING: THIS DRIVER IS IN BETA STAGE - + multi buffer support and TNT2 fixes by Dmitry Baryshkov */ @@ -19,6 +19,7 @@ #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/pm2_vid.c =================================================================== --- trunk/vidix/vidix/drivers/pm2_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/pm2_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -27,6 +27,7 @@ #include <unistd.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/pm3_vid.c =================================================================== --- trunk/vidix/vidix/drivers/pm3_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/pm3_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -27,6 +27,7 @@ #include <sys/mman.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/radeon_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeon_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/radeon_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -17,6 +17,7 @@ #include "libdha/pci_ids.h" #include "libdha/pci_names.h" #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "radeon.h" Modified: trunk/vidix/vidix/drivers/radeonhd_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeonhd_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/radeonhd_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -16,6 +16,7 @@ #include "libdha/pci_ids.h" #include "libdha/pci_names.h" #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "radeonhd.h" Modified: trunk/vidix/vidix/drivers/s3_vid.c =================================================================== --- trunk/vidix/vidix/drivers/s3_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/s3_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -42,6 +42,7 @@ #include <math.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/savage_vid.c =================================================================== --- trunk/vidix/vidix/drivers/savage_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/savage_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -26,7 +26,7 @@ Initial version To Do: - + */ @@ -39,6 +39,7 @@ #include <math.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/sis_vid.c =================================================================== --- trunk/vidix/vidix/drivers/sis_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/sis_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -31,6 +31,7 @@ #include <unistd.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/drivers/unichrome_vid.c =================================================================== --- trunk/vidix/vidix/drivers/unichrome_vid.c 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/drivers/unichrome_vid.c 2012-11-22 10:16:34 UTC (rev 352) @@ -37,6 +37,7 @@ #include <unistd.h> #include "vidix.h" +#include "vidix_driver.h" #include "fourcc.h" #include "libdha/libdha.h" #include "libdha/pci_ids.h" Modified: trunk/vidix/vidix/vidix.h =================================================================== --- trunk/vidix/vidix/vidix.h 2012-11-21 13:17:41 UTC (rev 351) +++ trunk/vidix/vidix/vidix.h 2012-11-22 10:16:34 UTC (rev 352) @@ -13,510 +13,13 @@ * NOTE: This interface is introduces as driver interface. * Don't use it for APP. */ -#ifndef VIDIX_H -#define VIDIX_H +#ifndef __VIDIX_H_INCLUDED +#define __VIDIX_H_INCLUDED 1 -#ifdef __cplusplus -extern "C" { -#endif +#define VIDIX_VERSION 150 -#define VIDIX_VERSION 100 +#include "vidix_enums.h" +#include "vidix_types.h" +#include "vidixlib.h" -/* returns driver version */ -extern unsigned vixGetVersion (void); - -#define PROBE_NORMAL 0 /* normal probing */ -#define PROBE_FORCE 1 /* ignore device_id but recognize device if it's known */ - -/* Probes video hw. - verbose - specifies verbose level. - force - specifies force mode - driver should ignore - device_id (danger but useful for new devices) - Returns 0 if ok else errno */ -extern int vixProbe (int verbose, int force); - -/* Initializes driver. - args - specifies driver specific parameters - Returns 0 if ok else errno */ -extern int vixInit (const char *args); - -/* Destroys driver */ -extern void vixDestroy (void); - -typedef enum vidix_dev_type { - TYPE_OUTPUT = 0x00000000, /* Is a video playback device */ - TYPE_CAPTURE = 0x00000001, /* Is a capture device */ - TYPE_CODEC = 0x00000002, /* Device supports hw (de)coding */ - TYPE_FX = 0x00000004, /* Is a video effects device */ -} vidix_dev_type_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_dev_type_t operator~(vidix_dev_type_t a) { return static_cast<vidix_dev_type_t>(~static_cast<unsigned>(a)); } -inline vidix_dev_type_t operator|(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_dev_type_t operator&(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_dev_type_t operator^(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_dev_type_t operator|=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_dev_type_t operator&=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_dev_type_t operator^=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} #endif - -typedef enum vidix_dev_flag { - FLAG_NONE = 0x00000000, /* No flags defined */ - FLAG_DMA = 0x00000001, /* Card can use DMA */ - /* Card can use DMA only if src pitch == dest pitch */ - FLAG_EQ_DMA = 0x00000002, - /* Possible to wait for DMA to finish. See BM_DMA_SYNC and BM_DMA_BLOCK */ - FLAG_SYNC_DMA = 0x00000004, - FLAG_UPSCALER = 0x00000010, /* Card supports hw upscaling */ - FLAG_DOWNSCALER = 0x00000020, /* Card supports hw downscaling */ - FLAG_SUBPIC = 0x00001000, /* Card supports DVD subpictures */ - FLAG_EQUALIZER = 0x00002000, /* Card supports equalizer */ -} vidix_dev_flag_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_dev_flag_t operator~(vidix_dev_flag_t a) { return static_cast<vidix_dev_flag_t>(~static_cast<unsigned>(a)); } -inline vidix_dev_flag_t operator|(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_dev_flag_t operator&(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_dev_flag_t operator^(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_dev_flag_t operator|=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_dev_flag_t operator&=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_dev_flag_t operator^=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -typedef struct vidix_capability_s -{ - char name[64]; /* Driver name */ - char author[64]; /* Author name */ - vidix_dev_type_t type; - unsigned reserved0[4]; - int maxwidth; - int maxheight; - int minwidth; - int minheight; - int maxframerate; /* -1 if unlimited */ - vidix_dev_flag_t flags; - unsigned short vendor_id; - unsigned short device_id; - unsigned reserved1[4]; -} vidix_capability_t; - -/* Should fill at least type before init. - Returns 0 if ok else errno */ -extern int vixGetCapability (vidix_capability_t *); - -typedef enum vidix_depth { - VID_DEPTH_NONE = 0x0000, - VID_DEPTH_1BPP = 0x0001, - VID_DEPTH_2BPP = 0x0002, - VID_DEPTH_4BPP = 0x0004, - VID_DEPTH_8BPP = 0x0008, - VID_DEPTH_12BPP = 0x0010, - VID_DEPTH_15BPP = 0x0020, - VID_DEPTH_16BPP = 0x0040, - VID_DEPTH_24BPP = 0x0080, - VID_DEPTH_32BPP = 0x0100, - VID_DEPTH_ALL = VID_DEPTH_1BPP | VID_DEPTH_2BPP | \ - VID_DEPTH_4BPP | VID_DEPTH_8BPP | \ - VID_DEPTH_12BPP | VID_DEPTH_15BPP | \ - VID_DEPTH_16BPP | VID_DEPTH_24BPP | \ - VID_DEPTH_32BPP, -} vidix_depth_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_depth_t operator~(vidix_depth_t a) { return static_cast<vidix_depth_t>(~static_cast<unsigned>(a)); } -inline vidix_depth_t operator|(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_depth_t operator&(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_depth_t operator^(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_depth_t operator|=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_depth_t operator&=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_depth_t operator^=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -typedef enum vidix_cap { - VID_CAP_NONE = 0x0000, - /* if overlay can be bigger than source */ - VID_CAP_EXPAND = 0x0001, - /* if overlay can be smaller than source */ - VID_CAP_SHRINK = 0x0002, - /* if overlay can be blended with framebuffer */ - VID_CAP_BLEND = 0x0004, - /* if overlay can be restricted to a colorkey */ - VID_CAP_COLORKEY = 0x0008, - /* if overlay can be restricted to an alpha channel */ - VID_CAP_ALPHAKEY = 0x0010, - /* if the colorkey can be a range */ - VID_CAP_COLORKEY_ISRANGE = 0x0020, - /* if the alphakey can be a range */ - VID_CAP_ALPHAKEY_ISRANGE = 0x0040, - /* colorkey is checked against framebuffer */ - VID_CAP_COLORKEY_ISMAIN = 0x0080, - /* colorkey is checked against overlay */ - VID_CAP_COLORKEY_ISOVERLAY = 0x0100, - /* alphakey is checked against framebuffer */ - VID_CAP_ALPHAKEY_ISMAIN = 0x0200, - /* alphakey is checked against overlay */ - VID_CAP_ALPHAKEY_ISOVERLAY = 0x0400, -} vidix_cap_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_cap_t operator~(vidix_cap_t a) { return static_cast<vidix_cap_t>(~static_cast<unsigned>(a)); } -inline vidix_cap_t operator|(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_cap_t operator&(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_cap_t operator^(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_cap_t operator|=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_cap_t operator&=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_cap_t operator^=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -typedef struct vidix_fourcc_s -{ - unsigned fourcc; /* input: requested fourcc */ - unsigned srcw; /* input: hint: width of source */ - unsigned srch; /* input: hint: height of source */ - vidix_depth_t depth; /* output: screen depth for given fourcc */ - vidix_cap_t flags; /* output: capability */ -} vidix_fourcc_t; - -/* Returns 0 if ok else errno */ -extern int vixQueryFourcc (vidix_fourcc_t *); - -typedef struct vidix_yuv_s -{ - unsigned y,u,v,a; -} vidix_yuv_t; - -typedef struct vidix_rect_s -{ - unsigned x,y,w,h; /* in pixels */ - vidix_yuv_t pitch; /* line-align in bytes */ -} vidix_rect_t; - -typedef enum vidix_color_key_op { - CKEY_FALSE = 0, - CKEY_TRUE = 1, - CKEY_EQ = 2, - CKEY_NEQ = 3, - CKEY_ALPHA = 4, -} vidix_color_key_op_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_color_key_op_t operator~(vidix_color_key_op_t a) { return static_cast<vidix_color_key_op_t>(~static_cast<unsigned>(a)); } -inline vidix_color_key_op_t operator|(vidix_color_key_op_t a, vidix_color_key_op_t b) { return static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_color_key_op_t operator&(vidix_color_key_op_t a, vidix_color_key_op_t b) { return static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_color_key_op_t operator^(vidix_color_key_op_t a, vidix_color_key_op_t b) { return static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_color_key_op_t operator|=(vidix_color_key_op_t a, vidix_color_key_op_t b) { return (a=static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_color_key_op_t operator&=(vidix_color_key_op_t a, vidix_color_key_op_t b) { return (a=static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_color_key_op_t operator^=(vidix_color_key_op_t a, vidix_color_key_op_t b) { return (a=static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -typedef struct vidix_color_key_s -{ - vidix_color_key_op_t op; /* defines logical operation */ - unsigned char red; - unsigned char green; - unsigned char blue; - unsigned char reserved; -}vidix_ckey_t; - -typedef enum vidix_video_key_op { - VKEY_FALSE = 0, - VKEY_TRUE = 1, - VKEY_EQ = 2, - VKEY_NEQ = 3, -} vidix_video_key_op_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_video_key_op_t operator~(vidix_video_key_op_t a) { return static_cast<vidix_video_key_op_t>(~static_cast<unsigned>(a)); } -inline vidix_video_key_op_t operator|(vidix_video_key_op_t a, vidix_video_key_op_t b) { return static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_video_key_op_t operator&(vidix_video_key_op_t a, vidix_video_key_op_t b) { return static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_video_key_op_t operator^(vidix_video_key_op_t a, vidix_video_key_op_t b) { return static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_video_key_op_t operator|=(vidix_video_key_op_t a, vidix_video_key_op_t b) { return (a=static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_video_key_op_t operator&=(vidix_video_key_op_t a, vidix_video_key_op_t b) { return (a=static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_video_key_op_t operator^=(vidix_video_key_op_t a, vidix_video_key_op_t b) { return (a=static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -typedef struct vidix_video_key_s { - vidix_video_key_op_t op; /* defines logical operation */ - unsigned char key[8]; -} vidix_vkey_t; - -typedef enum vidix_interleave { - VID_PLAY_INTERLEAVED_UV = 0x00000001, - /* UVUVUVUVUV used by Matrox G200 */ - INTERLEAVING_UV = 0x00001000, - /* VUVUVUVUVU */ - INTERLEAVING_VU = 0x00001001, -} vidix_interleave_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_interleave_t operator~(vidix_interleave_t a) { return static_cast<vidix_interleave_t>(~static_cast<unsigned>(a)); } -inline vidix_interleave_t operator|(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_interleave_t operator&(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_interleave_t operator^(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_interleave_t operator|=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_interleave_t operator&=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_interleave_t operator^=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -#define VID_PLAY_MAXFRAMES 1024 /* unreal limitation */ - -typedef struct vidix_playback_s -{ - unsigned fourcc; /* app -> driver: movies's fourcc */ - unsigned capability; /* app -> driver: what capability to use */ - unsigned blend_factor; /* app -> driver: blending factor */ - vidix_rect_t src; /* app -> driver: original movie size */ - vidix_rect_t dest; /* app -> driver: destinition movie size. - driver->app dest_pitch */ - vidix_interleave_t flags; /* driver -> app: interleaved UV planes */ - /* memory model */ - unsigned frame_size; /* driver -> app: destinition frame size */ - unsigned num_frames; /* app -> driver: after call: driver -> app */ - unsigned offsets[VID_PLAY_MAXFRAMES]; /* driver -> app */ - vidix_yuv_t offset; /* driver -> app: relative offsets - within frame for yuv planes */ - void *dga_addr; /* driver -> app: linear address */ -} vidix_playback_t; - -/* Returns 0 if ok else errno */ -extern int vixConfigPlayback (vidix_playback_t *); - -/* Returns 0 if ok else errno */ -extern int vixPlaybackOn (void); - -/* Returns 0 if ok else errno */ -extern int vixPlaybackOff (void); - -/* Returns 0 if ok else errno */ -extern int vixPlaybackFrameSelect (unsigned frame_idx); - -typedef enum vidix_key_op { - KEYS_PUT = 0, - KEYS_AND = 1, - KEYS_OR = 2, - KEYS_XOR = 3, -} vidix_key_op_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_key_op_t operator~(vidix_key_op_t a) { return static_cast<vidix_key_op_t>(~static_cast<unsigned>(a)); } -inline vidix_key_op_t operator|(vidix_key_op_t a, vidix_key_op_t b) { return static_cast<vidix_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_key_op_t operator&(vidix_key_op_t a, vidix_key_op_t b) { return static_cast<vidix_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_key_op_t operator^(vidix_key_op_t a, vidix_key_op_t b) { return static_cast<vidix_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_key_op_t operator|=(vidix_key_op_t a, vidix_key_op_t b) { return (a=static_cast<vidix_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_key_op_t operator&=(vidix_key_op_t a, vidix_key_op_t b) { return (a=static_cast<vidix_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_key_op_t operator^=(vidix_key_op_t a, vidix_key_op_t b) { return (a=static_cast<vidix_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif -typedef struct vidix_grkey_s -{ - vidix_ckey_t ckey; /* app -> driver: color key */ - vidix_vkey_t vkey; /* app -> driver: video key */ - vidix_key_op_t key_op; /* app -> driver: keys operations */ -} vidix_grkey_t; - -/* Returns 0 if ok else errno */ -extern int vixGetGrKeys (vidix_grkey_t *); - -/* Returns 0 if ok else errno */ -extern int vixSetGrKeys (const vidix_grkey_t *); - -typedef enum vidix_veq_cap { - VEQ_CAP_NONE = 0x00000000UL, - VEQ_CAP_BRIGHTNESS = 0x00000001UL, - VEQ_CAP_CONTRAST = 0x00000002UL, - VEQ_CAP_SATURATION = 0x00000004UL, - VEQ_CAP_HUE = 0x00000008UL, - VEQ_CAP_RGB_INTENSITY = 0x00000010UL, -} vidix_veq_cap_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_veq_cap_t operator~(vidix_veq_cap_t a) { return static_cast<vidix_veq_cap_t>(~static_cast<unsigned>(a)); } -inline vidix_veq_cap_t operator|(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_veq_cap_t operator&(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_veq_cap_t operator^(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_veq_cap_t operator|=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_veq_cap_t operator&=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_veq_cap_t operator^=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif -typedef enum vidix_veq_flag { - VEQ_FLG_ITU_R_BT_601 = 0x00000000, /* ITU-R BT.601 colour space (default) */ - VEQ_FLG_ITU_R_BT_709 = 0x00000001, /* ITU-R BT.709 colour space */ - VEQ_FLG_ITU_MASK = 0x0000000f, -} vidix_veq_flag_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_veq_flag_t operator~(vidix_veq_flag_t a) { return static_cast<vidix_veq_flag_t>(~static_cast<unsigned>(a)); } -inline vidix_veq_flag_t operator|(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_veq_flag_t operator&(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_veq_flag_t operator^(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_veq_flag_t operator|=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_veq_flag_t operator&=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_veq_flag_t operator^=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif -typedef struct vidix_video_eq_s { - vidix_veq_cap_t cap; /* on get_eq should contain capability of - equalizer on set_eq should contain using fields */ - /* end-user app can have presets like: cold-normal-hot picture and so on */ - int brightness; /* -1000 : +1000 */ - int contrast; /* -1000 : +1000 */ - int saturation; /* -1000 : +1000 */ - int hue; /* -1000 : +1000 */ - int red_intensity; /* -1000 : +1000 */ - int green_intensity; /* -1000 : +1000 */ - int blue_intensity; /* -1000 : +1000 */ - vidix_veq_flag_t flags; /* currently specifies ITU YCrCb color - space to use */ -} vidix_video_eq_t; - -/* Returns 0 if ok else errno */ -extern int vixPlaybackGetEq (vidix_video_eq_t *); - -/* Returns 0 if ok else errno */ -extern int vixPlaybackSetEq (const vidix_video_eq_t *); - -typedef enum vidix_interlace_flag { - /* stream is not interlaced */ - CFG_NON_INTERLACED = 0x00000000, - /* stream is interlaced */ - CFG_INTERLACED = 0x00000001, - /* first frame contains even fields but second - odd */ - CFG_EVEN_ODD_INTERLACING = 0x00000002, - /* first frame contains odd fields but second - even */ - CFG_ODD_EVEN_INTERLACING = 0x00000004, - /* field deinterlace_pattern is valid */ - CFG_UNIQUE_INTERLACING = 0x00000008, - /* unknown deinterlacing - use adaptive if it's possible */ - CFG_UNKNOWN_INTERLACING = 0x0000000f, -} vidix_interlace_flag_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_interlace_flag_t operator~(vidix_interlace_flag_t a) { return static_cast<vidix_interlace_flag_t>(~static_cast<unsigned>(a)); } -inline vidix_interlace_flag_t operator|(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_interlace_flag_t operator&(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_interlace_flag_t operator^(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_interlace_flag_t operator|=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_interlace_flag_t operator&=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_interlace_flag_t operator^=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif -typedef struct vidix_deinterlace_s { - vidix_interlace_flag_t flags; - unsigned deinterlace_pattern; /* app -> driver: deinterlace pattern if - flag CFG_UNIQUE_INTERLACING is set */ -} vidix_deinterlace_t; - -/* Returns 0 if ok else errno */ -extern int vixPlaybackGetDeint (vidix_deinterlace_t *); - -/* Returns 0 if ok else errno */ -extern int vixPlaybackSetDeint (const vidix_deinterlace_t *); - -typedef struct vidix_slice_s { - void *address; /* app -> driver */ - unsigned size; /* app -> driver */ - vidix_rect_t slice; /* app -> driver */ -} vidix_slice_t; - -typedef enum vidix_bm_flag { - BM_DMA_ASYNC = 0, - /* await previous dma transfer completion */ - BM_DMA_SYNC = 1, - /* app -> driver: app uses buffers which are fixed in memory */ - BM_DMA_FIXED_BUFFS = 2, - /* block until the transfer is complete */ - BM_DMA_BLOCK = 4, -} vidix_bm_flag_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_bm_flag_t operator~(vidix_bm_flag_t a) { return static_cast<vidix_bm_flag_t>(~static_cast<unsigned>(a)); } -inline vidix_bm_flag_t operator|(vidix_bm_flag_t a, vidix_bm_flag_t b) { return static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_bm_flag_t operator&(vidix_bm_flag_t a, vidix_bm_flag_t b) { return static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_bm_flag_t operator^(vidix_bm_flag_t a, vidix_bm_flag_t b) { return static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_bm_flag_t operator|=(vidix_bm_flag_t a, vidix_bm_flag_t b) { return (a=static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_bm_flag_t operator&=(vidix_bm_flag_t a, vidix_bm_flag_t b) { return (a=static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_bm_flag_t operator^=(vidix_bm_flag_t a, vidix_bm_flag_t b) { return (a=static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif - -typedef struct vidix_dma_s -{ - void *src; /* app -> driver. Virtual address of source */ - unsigned dest_offset; /* app -> driver. - Destination offset within of video memory */ - unsigned size; /* app -> driver. Size of transaction */ - vidix_bm_flag_t flags; /* app -> driver */ - unsigned idx; /* app -> driver: idx of src buffer */ - void *internal[VID_PLAY_MAXFRAMES]; /* for internal use by driver */ -} vidix_dma_t; - -/* Returns 0 if ok else errno */ -extern int vixPlaybackCopyFrame (vidix_dma_t *); - -/* Returns 0 if DMA is available else errno (EBUSY) */ -extern int vixQueryDMAStatus (void); - -typedef enum vidix_fx_type { - FX_TYPE_BOOLEAN = 0x00000000, - FX_TYPE_INTEGER = 0x00000001, -} vidix_fx_type_t; -#ifdef __cplusplus -extern "C++" { -inline vidix_fx_type_t operator~(vidix_fx_type_t a) { return static_cast<vidix_fx_type_t>(~static_cast<unsigned>(a)); } -inline vidix_fx_type_t operator|(vidix_fx_type_t a, vidix_fx_type_t b) { return static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } -inline vidix_fx_type_t operator&(vidix_fx_type_t a, vidix_fx_type_t b) { return static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } -inline vidix_fx_type_t operator^(vidix_fx_type_t a, vidix_fx_type_t b) { return static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } -inline vidix_fx_type_t operator|=(vidix_fx_type_t a, vidix_fx_type_t b) { return (a=static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } -inline vidix_fx_type_t operator&=(vidix_fx_type_t a, vidix_fx_type_t b) { return (a=static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } -inline vidix_fx_type_t operator^=(vidix_fx_type_t a, vidix_fx_type_t b) { return (a=static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } -} -#endif -/* - This structure is introdused to support OEM effects like: - - sharpness - - exposure - - (auto)gain - - H(V)flip - - black level - - white balance - and many other -*/ -typedef struct vidix_oem_fx_s -{ - vidix_fx_type_t type; /* type of effects */ - int num; /* app -> driver: effect number. - From 0 to max number of effects */ - int minvalue; /* min value of effect. 0 - for boolean */ - int maxvalue; /* max value of effect. 1 - for boolean */ - int value; /* current value of effect on get; required on set */ - char *name[80]; /* effect name to display */ -} vidix_oem_fx_t; - -/* Returns 0 if ok else errno */ -extern int vixQueryNumOemEffects (unsigned * number); - -/* Returns 0 if ok else errno */ -extern int vixGetOemEffect (vidix_oem_fx_t *); - -/* Returns 0 if ok else errno */ -extern int vixSetOemEffect (const vidix_oem_fx_t *); - -#ifdef VIDIX_BUILD_STATIC -#define VIDIX_NAME(name) VIDIX_STATIC##name -#else -#define VIDIX_NAME(name) name -#endif - -#ifdef __cplusplus -} -#endif - -#endif Added: trunk/vidix/vidix/vidix_driver.h =================================================================== --- trunk/vidix/vidix/vidix_driver.h (rev 0) +++ trunk/vidix/vidix/vidix_driver.h 2012-11-22 10:16:34 UTC (rev 352) @@ -0,0 +1,91 @@ +#ifndef __VIDIX_DRIVER_H_INCLUDED +#define __VIDIX_DRIVER_H_INCLUDED 1 + +#ifdef __cplusplus +extern "C" { +#endif + +/* returns driver version */ +extern unsigned vixGetVersion (void); + +#define PROBE_NORMAL 0 /* normal probing */ +#define PROBE_FORCE 1 /* ignore device_id but recognize device if it's known */ + +/* Probes video hw. + verbose - specifies verbose level. + force - specifies force mode - driver should ignore + device_id (danger but useful for new devices) + Returns 0 if ok else errno */ +extern int vixProbe (int verbose, int force); + +/* Initializes driver. + args - specifies driver specific parameters + Returns 0 if ok else errno */ +extern int vixInit (const char *args); + +/* Destroys driver */ +extern void vixDestroy (void); + +/* Should fill at least type before init. + Returns 0 if ok else errno */ +extern int vixGetCapability (vidix_capability_t *); + +/* Returns 0 if ok else errno */ +extern int vixQueryFourcc (vidix_fourcc_t *); + +/* Returns 0 if ok else errno */ +extern int vixConfigPlayback (vidix_playback_t *); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackOn (void); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackOff (void); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackFrameSelect (unsigned frame_idx); + +/* Returns 0 if ok else errno */ +extern int vixGetGrKeys (vidix_grkey_t *); + +/* Returns 0 if ok else errno */ +extern int vixSetGrKeys (const vidix_grkey_t *); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackGetEq (vidix_video_eq_t *); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackSetEq (const vidix_video_eq_t *); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackGetDeint (vidix_deinterlace_t *); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackSetDeint (const vidix_deinterlace_t *); + +/* Returns 0 if ok else errno */ +extern int vixPlaybackCopyFrame (vidix_dma_t *); + +/* Returns 0 if DMA is available else errno (EBUSY) */ +extern int vixQueryDMAStatus (void); + +/* Returns 0 if ok else errno */ +extern int vixQueryNumOemEffects (unsigned * number); + +/* Returns 0 if ok else errno */ +extern int vixGetOemEffect (vidix_oem_fx_t *); + +/* Returns 0 if ok else errno */ +extern int vixSetOemEffect (const vidix_oem_fx_t *); + +#ifdef VIDIX_BUILD_STATIC +#define VIDIX_NAME(name) VIDIX_STATIC##name +#else +#define VIDIX_NAME(name) name +#endif + +#ifdef __cplusplus +} +#endif + +#endif Property changes on: trunk/vidix/vidix/vidix_driver.h ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/vidix/vidix/vidix_enums.h =================================================================== --- trunk/vidix/vidix/vidix_enums.h (rev 0) +++ trunk/vidix/vidix/vidix_enums.h 2012-11-22 10:16:34 UTC (rev 352) @@ -0,0 +1,254 @@ +#ifndef __VIDIX_ENUMS_H_INCLUDED +#define __VIDIX_ENUMS_H_INCLUDED 1 + +typedef enum vidix_dev_type { + TYPE_OUTPUT = 0x00000000, /* Is a video playback device */ + TYPE_CAPTURE = 0x00000001, /* Is a capture device */ + TYPE_CODEC = 0x00000002, /* Device supports hw (de)coding */ + TYPE_FX = 0x00000004, /* Is a video effects device */ +} vidix_dev_type_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_dev_type_t operator~(vidix_dev_type_t a) { return static_cast<vidix_dev_type_t>(~static_cast<unsigned>(a)); } +inline vidix_dev_type_t operator|(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_dev_type_t operator&(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_dev_type_t operator^(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_dev_type_t operator|=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_dev_type_t operator&=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_dev_type_t operator^=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_dev_flag { + FLAG_NONE = 0x00000000, /* No flags defined */ + FLAG_DMA = 0x00000001, /* Card can use DMA */ + /* Card can use DMA only if src pitch == dest pitch */ + FLAG_EQ_DMA = 0x00000002, + /* Possible to wait for DMA to finish. See BM_DMA_SYNC and BM_DMA_BLOCK */ + FLAG_SYNC_DMA = 0x00000004, + FLAG_UPSCALER = 0x00000010, /* Card supports hw upscaling */ + FLAG_DOWNSCALER = 0x00000020, /* Card supports hw downscaling */ + FLAG_SUBPIC = 0x00001000, /* Card supports DVD subpictures */ + FLAG_EQUALIZER = 0x00002000, /* Card supports equalizer */ +} vidix_dev_flag_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_dev_flag_t operator~(vidix_dev_flag_t a) { return static_cast<vidix_dev_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_dev_flag_t operator|(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_dev_flag_t operator&(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_dev_flag_t operator^(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_dev_flag_t operator|=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_dev_flag_t operator&=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_dev_flag_t operator^=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_depth { + VID_DEPTH_NONE = 0x0000, + VID_DEPTH_1BPP = 0x0001, + VID_DEPTH_2BPP = 0x0002, + VID_DEPTH_4BPP = 0x0004, + VID_DEPTH_8BPP = 0x0008, + VID_DEPTH_12BPP = 0x0010, + VID_DEPTH_15BPP = 0x0020, + VID_DEPTH_16BPP = 0x0040, + VID_DEPTH_24BPP = 0x0080, + VID_DEPTH_32BPP = 0x0100, + VID_DEPTH_ALL = VID_DEPTH_1BPP | VID_DEPTH_2BPP | \ + VID_DEPTH_4BPP | VID_DEPTH_8BPP | \ + VID_DEPTH_12BPP | VID_DEPTH_15BPP | \ + VID_DEPTH_16BPP | VID_DEPTH_24BPP | \ + VID_DEPTH_32BPP, +} vidix_depth_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_depth_t operator~(vidix_depth_t a) { return static_cast<vidix_depth_t>(~static_cast<unsigned>(a)); } +inline vidix_depth_t operator|(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_depth_t operator&(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_depth_t operator^(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_depth_t operator|=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_depth_t operator&=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_depth_t operator^=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_cap { + VID_CAP_NONE = 0x0000, + /* if overlay can be bigger than source */ + VID_CAP_EXPAND = 0x0001, + /* if overlay can be smaller than source */ + VID_CAP_SHRINK = 0x0002, + /* if overlay can be blended with framebuffer */ + VID_CAP_BLEND = 0x0004, + /* if overlay can be restricted to a colorkey */ + VID_CAP_COLORKEY = 0x0008, + /* if overlay can be restricted to an alpha channel */ + VID_CAP_ALPHAKEY = 0x0010, + /* if the colorkey can be a range */ + VID_CAP_COLORKEY_ISRANGE = 0x0020, + /* if the alphakey can be a range */ + VID_CAP_ALPHAKEY_ISRANGE = 0x0040, + /* colorkey is checked against framebuffer */ + VID_CAP_COLORKEY_ISMAIN = 0x0080, + /* colorkey is checked against overlay */ + VID_CAP_COLORKEY_ISOVERLAY = 0x0100, + /* alphakey is checked against framebuffer */ + VID_CAP_ALPHAKEY_ISMAIN = 0x0200, + /* alphakey is checked against overlay */ + VID_CAP_ALPHAKEY_ISOVERLAY = 0x0400, +} vidix_cap_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_cap_t operator~(vidix_cap_t a) { return static_cast<vidix_cap_t>(~static_cast<unsigned>(a)); } +inline vidix_cap_t operator|(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_cap_t operator&(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_cap_t operator^(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_cap_t operator|=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_cap_t operator&=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_cap_t operator^=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_color_key_op { + CKEY_FALSE = 0, + CKEY_TRUE = 1, + CKEY_EQ = 2, + CKEY_NEQ = 3, + CKEY_ALPHA = 4, +} vidix_color_key_op_t; + +typedef enum vidix_video_key_op { + VKEY_FALSE = 0, + VKEY_TRUE = 1, + VKEY_EQ = 2, + VKEY_NEQ = 3, +} vidix_video_key_op_t; + +typedef enum vidix_interleave { + VID_PLAY_INTERLEAVED_UV = 0x00000001, + /* UVUVUVUVUV used by Matrox G200 */ + INTERLEAVING_UV = 0x00001000, + /* VUVUVUVUVU */ + INTERLEAVING_VU = 0x00001001, +} vidix_interleave_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_interleave_t operator~(vidix_interleave_t a) { return static_cast<vidix_interleave_t>(~static_cast<unsigned>(a)); } +inline vidix_interleave_t operator|(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_interleave_t operator&(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_interleave_t operator^(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_interleave_t operator|=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_interleave_t operator&=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_interleave_t operator^=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_key_op { + KEYS_PUT = 0, + KEYS_AND = 1, + KEYS_OR = 2, + KEYS_XOR = 3, +} vidix_key_op_t; + +typedef enum vidix_veq_cap { + VEQ_CAP_NONE = 0x00000000UL, + VEQ_CAP_BRIGHTNESS = 0x00000001UL, + VEQ_CAP_CONTRAST = 0x00000002UL, + VEQ_CAP_SATURATION = 0x00000004UL, + VEQ_CAP_HUE = 0x00000008UL, + VEQ_CAP_RGB_INTENSITY = 0x00000010UL, +} vidix_veq_cap_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_veq_cap_t operator~(vidix_veq_cap_t a) { return static_cast<vidix_veq_cap_t>(~static_cast<unsigned>(a)); } +inline vidix_veq_cap_t operator|(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_veq_cap_t operator&(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_veq_cap_t operator^(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_veq_cap_t operator|=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_veq_cap_t operator&=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_veq_cap_t operator^=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_veq_flag { + VEQ_FLG_ITU_R_BT_601 = 0x00000000, /* ITU-R BT.601 colour space (default) */ + VEQ_FLG_ITU_R_BT_709 = 0x00000001, /* ITU-R BT.709 colour space */ + VEQ_FLG_ITU_MASK = 0x0000000f, +} vidix_veq_flag_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_veq_flag_t operator~(vidix_veq_flag_t a) { return static_cast<vidix_veq_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_veq_flag_t operator|(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_veq_flag_t operator&(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_veq_flag_t operator^(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_veq_flag_t operator|=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_veq_flag_t operator&=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_veq_flag_t operator^=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_interlace_flag { + /* stream is not interlaced */ + CFG_NON_INTERLACED = 0x00000000, + /* stream is interlaced */ + CFG_INTERLACED = 0x00000001, + /* first frame contains even fields but second - odd */ + CFG_EVEN_ODD_INTERLACING = 0x00000002, + /* first frame contains odd fields but second - even */ + CFG_ODD_EVEN_INTERLACING = 0x00000004, + /* field deinterlace_pattern is valid */ + CFG_UNIQUE_INTERLACING = 0x00000008, + /* unknown deinterlacing - use adaptive if it's possible */ + CFG_UNKNOWN_INTERLACING = 0x0000000f, +} vidix_interlace_flag_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_interlace_flag_t operator~(vidix_interlace_flag_t a) { return static_cast<vidix_interlace_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_interlace_flag_t operator|(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_interlace_flag_t operator&(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_interlace_flag_t operator^(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_interlace_flag_t operator|=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_interlace_flag_t operator&=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_interlace_flag_t operator^=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + +typedef enum vidix_bm_flag { + BM_DMA_ASYNC = 0, + /* await previous dma transfer completion */ + BM_DMA_SYNC = 1, + /* app -> driver: app uses buffers which are fixed in memory */ + BM_DMA_FIXED_BUFFS = 2, + /* block until the transfer is complete *... [truncated message content] |
From: <nic...@us...> - 2012-11-21 13:17:53
|
Revision: 351 http://vidix.svn.sourceforge.net/vidix/?rev=351&view=rev Author: nickols_k Date: 2012-11-21 13:17:41 +0000 (Wed, 21 Nov 2012) Log Message: ----------- C++ compatibilities Modified Paths: -------------- trunk/vidix/vidix/vidix.h Modified: trunk/vidix/vidix/vidix.h =================================================================== --- trunk/vidix/vidix/vidix.h 2010-08-18 14:03:03 UTC (rev 350) +++ trunk/vidix/vidix/vidix.h 2012-11-21 13:17:41 UTC (rev 351) @@ -49,6 +49,17 @@ TYPE_CODEC = 0x00000002, /* Device supports hw (de)coding */ TYPE_FX = 0x00000004, /* Is a video effects device */ } vidix_dev_type_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_dev_type_t operator~(vidix_dev_type_t a) { return static_cast<vidix_dev_type_t>(~static_cast<unsigned>(a)); } +inline vidix_dev_type_t operator|(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_dev_type_t operator&(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_dev_type_t operator^(vidix_dev_type_t a, vidix_dev_type_t b) { return static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_dev_type_t operator|=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_dev_type_t operator&=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_dev_type_t operator^=(vidix_dev_type_t a, vidix_dev_type_t b) { return (a=static_cast<vidix_dev_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef enum vidix_dev_flag { FLAG_NONE = 0x00000000, /* No flags defined */ @@ -62,7 +73,18 @@ FLAG_SUBPIC = 0x00001000, /* Card supports DVD subpictures */ FLAG_EQUALIZER = 0x00002000, /* Card supports equalizer */ } vidix_dev_flag_t; - +#ifdef __cplusplus +extern "C++" { +inline vidix_dev_flag_t operator~(vidix_dev_flag_t a) { return static_cast<vidix_dev_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_dev_flag_t operator|(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_dev_flag_t operator&(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_dev_flag_t operator^(vidix_dev_flag_t a, vidix_dev_flag_t b) { return static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_dev_flag_t operator|=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_dev_flag_t operator&=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_dev_flag_t operator^=(vidix_dev_flag_t a, vidix_dev_flag_t b) { return (a=static_cast<vidix_dev_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif + typedef struct vidix_capability_s { char name[64]; /* Driver name */ @@ -101,6 +123,17 @@ VID_DEPTH_16BPP | VID_DEPTH_24BPP | \ VID_DEPTH_32BPP, } vidix_depth_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_depth_t operator~(vidix_depth_t a) { return static_cast<vidix_depth_t>(~static_cast<unsigned>(a)); } +inline vidix_depth_t operator|(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_depth_t operator&(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_depth_t operator^(vidix_depth_t a, vidix_depth_t b) { return static_cast<vidix_depth_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_depth_t operator|=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_depth_t operator&=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_depth_t operator^=(vidix_depth_t a, vidix_depth_t b) { return (a=static_cast<vidix_depth_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef enum vidix_cap { VID_CAP_NONE = 0x0000, @@ -127,6 +160,17 @@ /* alphakey is checked against overlay */ VID_CAP_ALPHAKEY_ISOVERLAY = 0x0400, } vidix_cap_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_cap_t operator~(vidix_cap_t a) { return static_cast<vidix_cap_t>(~static_cast<unsigned>(a)); } +inline vidix_cap_t operator|(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_cap_t operator&(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_cap_t operator^(vidix_cap_t a, vidix_cap_t b) { return static_cast<vidix_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_cap_t operator|=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_cap_t operator&=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_cap_t operator^=(vidix_cap_t a, vidix_cap_t b) { return (a=static_cast<vidix_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_fourcc_s { @@ -158,6 +202,17 @@ CKEY_NEQ = 3, CKEY_ALPHA = 4, } vidix_color_key_op_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_color_key_op_t operator~(vidix_color_key_op_t a) { return static_cast<vidix_color_key_op_t>(~static_cast<unsigned>(a)); } +inline vidix_color_key_op_t operator|(vidix_color_key_op_t a, vidix_color_key_op_t b) { return static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_color_key_op_t operator&(vidix_color_key_op_t a, vidix_color_key_op_t b) { return static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_color_key_op_t operator^(vidix_color_key_op_t a, vidix_color_key_op_t b) { return static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_color_key_op_t operator|=(vidix_color_key_op_t a, vidix_color_key_op_t b) { return (a=static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_color_key_op_t operator&=(vidix_color_key_op_t a, vidix_color_key_op_t b) { return (a=static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_color_key_op_t operator^=(vidix_color_key_op_t a, vidix_color_key_op_t b) { return (a=static_cast<vidix_color_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_color_key_s { @@ -174,6 +229,17 @@ VKEY_EQ = 2, VKEY_NEQ = 3, } vidix_video_key_op_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_video_key_op_t operator~(vidix_video_key_op_t a) { return static_cast<vidix_video_key_op_t>(~static_cast<unsigned>(a)); } +inline vidix_video_key_op_t operator|(vidix_video_key_op_t a, vidix_video_key_op_t b) { return static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_video_key_op_t operator&(vidix_video_key_op_t a, vidix_video_key_op_t b) { return static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_video_key_op_t operator^(vidix_video_key_op_t a, vidix_video_key_op_t b) { return static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_video_key_op_t operator|=(vidix_video_key_op_t a, vidix_video_key_op_t b) { return (a=static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_video_key_op_t operator&=(vidix_video_key_op_t a, vidix_video_key_op_t b) { return (a=static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_video_key_op_t operator^=(vidix_video_key_op_t a, vidix_video_key_op_t b) { return (a=static_cast<vidix_video_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_video_key_s { vidix_video_key_op_t op; /* defines logical operation */ @@ -187,6 +253,17 @@ /* VUVUVUVUVU */ INTERLEAVING_VU = 0x00001001, } vidix_interleave_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_interleave_t operator~(vidix_interleave_t a) { return static_cast<vidix_interleave_t>(~static_cast<unsigned>(a)); } +inline vidix_interleave_t operator|(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_interleave_t operator&(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_interleave_t operator^(vidix_interleave_t a, vidix_interleave_t b) { return static_cast<vidix_interleave_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_interleave_t operator|=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_interleave_t operator&=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_interleave_t operator^=(vidix_interleave_t a, vidix_interleave_t b) { return (a=static_cast<vidix_interleave_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif #define VID_PLAY_MAXFRAMES 1024 /* unreal limitation */ @@ -226,7 +303,17 @@ KEYS_OR = 2, KEYS_XOR = 3, } vidix_key_op_t; - +#ifdef __cplusplus +extern "C++" { +inline vidix_key_op_t operator~(vidix_key_op_t a) { return static_cast<vidix_key_op_t>(~static_cast<unsigned>(a)); } +inline vidix_key_op_t operator|(vidix_key_op_t a, vidix_key_op_t b) { return static_cast<vidix_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_key_op_t operator&(vidix_key_op_t a, vidix_key_op_t b) { return static_cast<vidix_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_key_op_t operator^(vidix_key_op_t a, vidix_key_op_t b) { return static_cast<vidix_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_key_op_t operator|=(vidix_key_op_t a, vidix_key_op_t b) { return (a=static_cast<vidix_key_op_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_key_op_t operator&=(vidix_key_op_t a, vidix_key_op_t b) { return (a=static_cast<vidix_key_op_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_key_op_t operator^=(vidix_key_op_t a, vidix_key_op_t b) { return (a=static_cast<vidix_key_op_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_grkey_s { vidix_ckey_t ckey; /* app -> driver: color key */ @@ -248,13 +335,33 @@ VEQ_CAP_HUE = 0x00000008UL, VEQ_CAP_RGB_INTENSITY = 0x00000010UL, } vidix_veq_cap_t; - +#ifdef __cplusplus +extern "C++" { +inline vidix_veq_cap_t operator~(vidix_veq_cap_t a) { return static_cast<vidix_veq_cap_t>(~static_cast<unsigned>(a)); } +inline vidix_veq_cap_t operator|(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_veq_cap_t operator&(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_veq_cap_t operator^(vidix_veq_cap_t a, vidix_veq_cap_t b) { return static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_veq_cap_t operator|=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_veq_cap_t operator&=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_veq_cap_t operator^=(vidix_veq_cap_t a, vidix_veq_cap_t b) { return (a=static_cast<vidix_veq_cap_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef enum vidix_veq_flag { VEQ_FLG_ITU_R_BT_601 = 0x00000000, /* ITU-R BT.601 colour space (default) */ VEQ_FLG_ITU_R_BT_709 = 0x00000001, /* ITU-R BT.709 colour space */ VEQ_FLG_ITU_MASK = 0x0000000f, } vidix_veq_flag_t; - +#ifdef __cplusplus +extern "C++" { +inline vidix_veq_flag_t operator~(vidix_veq_flag_t a) { return static_cast<vidix_veq_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_veq_flag_t operator|(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_veq_flag_t operator&(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_veq_flag_t operator^(vidix_veq_flag_t a, vidix_veq_flag_t b) { return static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_veq_flag_t operator|=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_veq_flag_t operator&=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_veq_flag_t operator^=(vidix_veq_flag_t a, vidix_veq_flag_t b) { return (a=static_cast<vidix_veq_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_video_eq_s { vidix_veq_cap_t cap; /* on get_eq should contain capability of equalizer on set_eq should contain using fields */ @@ -290,7 +397,17 @@ /* unknown deinterlacing - use adaptive if it's possible */ CFG_UNKNOWN_INTERLACING = 0x0000000f, } vidix_interlace_flag_t; - +#ifdef __cplusplus +extern "C++" { +inline vidix_interlace_flag_t operator~(vidix_interlace_flag_t a) { return static_cast<vidix_interlace_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_interlace_flag_t operator|(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_interlace_flag_t operator&(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_interlace_flag_t operator^(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_interlace_flag_t operator|=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_interlace_flag_t operator&=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_interlace_flag_t operator^=(vidix_interlace_flag_t a, vidix_interlace_flag_t b) { return (a=static_cast<vidix_interlace_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_deinterlace_s { vidix_interlace_flag_t flags; unsigned deinterlace_pattern; /* app -> driver: deinterlace pattern if @@ -316,8 +433,19 @@ /* app -> driver: app uses buffers which are fixed in memory */ BM_DMA_FIXED_BUFFS = 2, /* block until the transfer is complete */ - BM_DMA_BLOCK = 4, + BM_DMA_BLOCK = 4, } vidix_bm_flag_t; +#ifdef __cplusplus +extern "C++" { +inline vidix_bm_flag_t operator~(vidix_bm_flag_t a) { return static_cast<vidix_bm_flag_t>(~static_cast<unsigned>(a)); } +inline vidix_bm_flag_t operator|(vidix_bm_flag_t a, vidix_bm_flag_t b) { return static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_bm_flag_t operator&(vidix_bm_flag_t a, vidix_bm_flag_t b) { return static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_bm_flag_t operator^(vidix_bm_flag_t a, vidix_bm_flag_t b) { return static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_bm_flag_t operator|=(vidix_bm_flag_t a, vidix_bm_flag_t b) { return (a=static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_bm_flag_t operator&=(vidix_bm_flag_t a, vidix_bm_flag_t b) { return (a=static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_bm_flag_t operator^=(vidix_bm_flag_t a, vidix_bm_flag_t b) { return (a=static_cast<vidix_bm_flag_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif typedef struct vidix_dma_s { @@ -340,7 +468,17 @@ FX_TYPE_BOOLEAN = 0x00000000, FX_TYPE_INTEGER = 0x00000001, } vidix_fx_type_t; - +#ifdef __cplusplus +extern "C++" { +inline vidix_fx_type_t operator~(vidix_fx_type_t a) { return static_cast<vidix_fx_type_t>(~static_cast<unsigned>(a)); } +inline vidix_fx_type_t operator|(vidix_fx_type_t a, vidix_fx_type_t b) { return static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b)); } +inline vidix_fx_type_t operator&(vidix_fx_type_t a, vidix_fx_type_t b) { return static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b)); } +inline vidix_fx_type_t operator^(vidix_fx_type_t a, vidix_fx_type_t b) { return static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b)); } +inline vidix_fx_type_t operator|=(vidix_fx_type_t a, vidix_fx_type_t b) { return (a=static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)|static_cast<unsigned>(b))); } +inline vidix_fx_type_t operator&=(vidix_fx_type_t a, vidix_fx_type_t b) { return (a=static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)&static_cast<unsigned>(b))); } +inline vidix_fx_type_t operator^=(vidix_fx_type_t a, vidix_fx_type_t b) { return (a=static_cast<vidix_fx_type_t>(static_cast<unsigned>(a)^static_cast<unsigned>(b))); } +} +#endif /* This structure is introdused to support OEM effects like: - sharpness This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2010-08-18 14:03:09
|
Revision: 350 http://vidix.svn.sourceforge.net/vidix/?rev=350&view=rev Author: nickols_k Date: 2010-08-18 14:03:03 +0000 (Wed, 18 Aug 2010) Log Message: ----------- free project from complex philosophical terms Modified Paths: -------------- trunk/vidix/COPYING Modified: trunk/vidix/COPYING =================================================================== --- trunk/vidix/COPYING 2010-02-03 17:20:42 UTC (rev 349) +++ trunk/vidix/COPYING 2010-08-18 14:03:03 UTC (rev 350) @@ -278,62 +278,3 @@ POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS - - Appendix: How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - <one line to give the program's name and a brief idea of what it does.> - Copyright (C) 19yy <name of author> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) 19yy name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - <signature of Ty Coon>, 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2010-02-03 17:20:49
|
Revision: 349 http://vidix.svn.sourceforge.net/vidix/?rev=349&view=rev Author: nickols_k Date: 2010-02-03 17:20:42 +0000 (Wed, 03 Feb 2010) Log Message: ----------- make more reliable compilation Modified Paths: -------------- trunk/vidix/configure trunk/vidix/libdha/Makefile trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/Makefile Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2010-01-31 17:44:19 UTC (rev 348) +++ trunk/vidix/configure 2010-02-03 17:20:42 UTC (rev 349) @@ -15,7 +15,7 @@ DISABLED_LIST=( "gcov|compile gnu coverage information into PROGRAM", "profile|compile profiling information into PROGRAM", - "static|build static libraries" + "static|build static libraries", ) AUTOCONF_LIST=( @@ -202,12 +202,9 @@ check_sheader ivtv_h "linux/ivtv.h" print_config HAVE_ config.h config.mak ivtv_h -build_static=$static -print_config VIDIX_ config.h config.mak build_static +print_config VIDIX_ config.h config.mak static +print_config VIDIX_ config.h config.mak shared -build_shared=$shared -print_config VIDIX_ config.h config.mak build_shared - if enabled shared ; then require2 libdl dlfcn.h dlsym -ldl || die "dynamic loader was not found" print_config HAVE_ config.h config.mak libdl Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2010-01-31 17:44:19 UTC (rev 348) +++ trunk/vidix/libdha/Makefile 2010-02-03 17:20:42 UTC (rev 349) @@ -20,8 +20,8 @@ OBJS = $(SRCS:.c=.o) SHOBJS = $(SRCS:.c=.po) -CFLAGS = -I. -I.. $(OPTFLAGS) -SHCFLAGS = -fPIC $(CFLAGS) +CFLAGS = -DVIDIX_COMPILE_STATIC -I. -I.. $(OPTFLAGS) +SHCFLAGS = -fPIC -I. -I.. $(OPTFLAGS) ifeq ($(TARGET_OS),OpenBSD) LDCONFIG_FLAGS += -R @@ -33,10 +33,10 @@ .SUFFIXES: .c .o .po LIB_TARGETS= -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) LIB_TARGETS += $(LIBNAME_SHARED_VERSION) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) LIB_TARGETS += $(LIBNAME) endif ifeq ($(TARGET_WIN32),yes) @@ -84,22 +84,22 @@ install: -mkdir -p $(DESTDIR)$(LIBDIR) -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_VERSION) ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) cp -f $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME) endif uninstall: -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2010-01-31 17:44:19 UTC (rev 348) +++ trunk/vidix/vidix/Makefile 2010-02-03 17:20:42 UTC (rev 349) @@ -15,8 +15,8 @@ OBJS=$(SRCS:.c=.o) SHOBJS=$(SRCS:.c=.po) -CFLAGS = $(OPTFLAGS) -I.. -SHCFLAGS= $(CFLAGS) -fPIC +CFLAGS = $(OPTFLAGS) -I.. -DVIDIX_COMPILE_STATIC +SHCFLAGS= $(OPTFLAGS) -I.. -fPIC SUBDIRS = drivers DO_MAKE = @ for i in $(SUBDIRS); do $(MAKE) -C $$i $@ || exit; done @@ -28,29 +28,29 @@ .SUFFIXES: .c .o .po -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) .PHONY: $(SUBDIRS) endif LIB_TARGETS= -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) LIB_TARGETS += $(LIBNAME_SHARED_VERSION) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) LIB_TARGETS += $(LIBNAME) endif ifeq ($(TARGET_WIN32),yes) LIB_TARGETS += $(LIBNAME_WIN32) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) all: $(LIB_TARGETS) endif -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) all: $(LIB_TARGETS) do_drivers endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) $(SUBDIRS): $(DO_ALL) endif @@ -60,7 +60,7 @@ .c.po: $(CC) -c $(SHCFLAGS) -o $@ $< -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) $(LIBNAME_SHARED_VERSION): $(SHOBJS) $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(SHOBJS) -lc $(LIBDL) $(LIBNAME_WIN32): $(OBJS) @@ -71,7 +71,7 @@ endif endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) $(LIBNAME): $(SUBDIRS) $(OBJS) $(AR) r $@ $(OBJS) \ $(wildcard drivers/*.o) @@ -94,13 +94,13 @@ install: mkdir -p $(DESTDIR)$(LIBDIR) -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR) ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) cp -f $(LIBNAME) $(DESTDIR)$(LIBDIR) endif @@ -112,11 +112,11 @@ $(MAKE) -C drivers install uninstall: -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME) endif rm -f $(DESTDIR)$(INCDIR)/fourcc.h $(DESTDIR)$(INCDIR)/vidix.h $(DESTDIR)$(INCDIR)/vidixlib.h Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2010-01-31 17:44:19 UTC (rev 348) +++ trunk/vidix/vidix/drivers/Makefile 2010-02-03 17:20:42 UTC (rev 349) @@ -6,8 +6,9 @@ VIDIX_LIBS = -L../../libdha -ldha VIDIX_LIBS_M = $(VIDIX_LIBS) -lm VIDIX_LIBS_X = $(VIDIX_LIBS_M) $(X_LIB) -CFLAGS = -W -Wall -fPIC -I. -I.. -I../.. $(OPTFLAGS) -SHCFLAGS = -fPIC $(CFLAGS) +OPTFLAGS += -W -Wall -I. -I.. -I../.. +CFLAGS = $(OPTFLAGS) -DVIDIX_COMPILE_STATIC +SHCFLAGS = $(OPTFLAGS) -fPIC SRCS= cyberblade_vid.c \ genfb_vid.c \ @@ -35,10 +36,10 @@ SHOBJS = $(SRCS:.c=.po) DRV = $(SHOBJS:.po=.so) -ifeq ($(VIDIX_BUILD_STATIC),yes) +ifeq ($(VIDIX_STATIC),yes) all: $(OBJS) endif -ifeq ($(VIDIX_BUILD_SHARED),yes) +ifeq ($(VIDIX_SHARED),yes) all: $(DRV) endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2010-01-31 17:44:27
|
Revision: 348 http://vidix.svn.sourceforge.net/vidix/?rev=348&view=rev Author: nickols_k Date: 2010-01-31 17:44:19 +0000 (Sun, 31 Jan 2010) Log Message: ----------- simplify logic of linkage Modified Paths: -------------- trunk/vidix/vidix/drivers/Makefile trunk/vidix/vidix/drivers/mga_vid.c Added Paths: ----------- trunk/vidix/vidix/drivers/mga_crtc2_vid.c trunk/vidix/vidix/drivers/mga_tv_vid.c trunk/vidix/vidix/drivers/rage128_vid.c Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2010-01-31 17:07:47 UTC (rev 347) +++ trunk/vidix/vidix/drivers/Makefile 2010-01-31 17:44:19 UTC (rev 348) @@ -6,35 +6,9 @@ VIDIX_LIBS = -L../../libdha -ldha VIDIX_LIBS_M = $(VIDIX_LIBS) -lm VIDIX_LIBS_X = $(VIDIX_LIBS_M) $(X_LIB) -VIDIX_CFLAGS = -W -Wall -fPIC -I. -I.. -I../.. $(OPTFLAGS) +CFLAGS = -W -Wall -fPIC -I. -I.. -I../.. $(OPTFLAGS) +SHCFLAGS = -fPIC $(CFLAGS) -MACH64_CFLAGS = $(VIDIX_CFLAGS) -DRAGE128 -RAGE128_CFLAGS = $(VIDIX_CFLAGS) -DRAGE128 -MGA_CRTC2_CFLAGS = $(VIDIX_CFLAGS) -DCRTC2 -MGA_TV_CFLAGS = $(VIDIX_CFLAGS) -DMGA_TV - -DRV= cyberblade_vid.so \ - genfb_vid.so \ - mach64_vid.so \ - mga_crtc2_vid.so \ - mga_tv_vid.so \ - mga_vid.so \ - nvidia_vid.so \ - pm2_vid.so \ - pm3_vid.so \ - radeon_vid.so \ - rage128_vid.so \ - radeonhd_vid.so \ - s3_vid.so \ - savage_vid.so \ - sis_vid.so \ - unichrome_vid.so -ifeq ($(TARGET_OS),Linux) -ifeq ($(HAVE_IVTV),yes) -DRV += ivtv_vid.so -endif -endif - SRCS= cyberblade_vid.c \ genfb_vid.c \ mach64_vid.c \ @@ -58,6 +32,8 @@ endif OBJS = $(SRCS:.c=.o) +SHOBJS = $(SRCS:.c=.po) +DRV = $(SHOBJS:.po=.so) ifeq ($(VIDIX_BUILD_STATIC),yes) all: $(OBJS) @@ -66,31 +42,26 @@ all: $(DRV) endif -.SUFFIXES: .c .o +.SUFFIXES: .c .o .po # .PHONY: all clean # Object files %.o: %.c - $(CC) -c $(VIDIX_CFLAGS) -o $@ $< + $(CC) -c $(CFLAGS) -o $@ $< +%.po: %.c + $(CC) -c $(SHCFLAGS) -o $@ $< + # Dynamic librairies -%.so: %.o - $(CC) $(LDFLAGS) -shared $^ $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ +%.so: %.po + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ -mga_crtc2_vid.o: mga_vid.c - $(CC) -c $(MGA_CRTC2_CFLAGS) -o $@ $< -mga_tv_vid.o: mga_vid.c - $(CC) -c $(MGA_TV_CFLAGS) -o $@ $< -rage128_vid.o: radeon_vid.c - $(CC) -c $(RAGE128_CFLAGS) -o $@ $< - - clean: - rm -f *.o *.so *~ + rm -f *.o *.po *.so *~ -distclean: - rm -f *.o *.so *~ .depend +distclean: clean + rm -f .depend dep depend: $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend Added: trunk/vidix/vidix/drivers/mga_crtc2_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mga_crtc2_vid.c (rev 0) +++ trunk/vidix/vidix/drivers/mga_crtc2_vid.c 2010-01-31 17:44:19 UTC (rev 348) @@ -0,0 +1,2 @@ +#define CRTC2 1 +#include "mga_vid.c" Property changes on: trunk/vidix/vidix/drivers/mga_crtc2_vid.c ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/vidix/vidix/drivers/mga_tv_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mga_tv_vid.c (rev 0) +++ trunk/vidix/vidix/drivers/mga_tv_vid.c 2010-01-31 17:44:19 UTC (rev 348) @@ -0,0 +1,3 @@ +#define MGA_TV 1 +#include "mga_vid.c" + Property changes on: trunk/vidix/vidix/drivers/mga_tv_vid.c ___________________________________________________________________ Added: svn:eol-style + native Modified: trunk/vidix/vidix/drivers/mga_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mga_vid.c 2010-01-31 17:07:47 UTC (rev 347) +++ trunk/vidix/vidix/drivers/mga_vid.c 2010-01-31 17:44:19 UTC (rev 348) @@ -629,7 +629,7 @@ unsigned char r, g, b, y, cb, cr; int i; for (i = 0; i < 16; i++) { - + r = (i & 0x8) ? 0xff : 0x00; g = (i & 0x4) ? ((i & 0x2) ? 0xff : 0xaa) : ((i & 0x2) ? 0x55 : 0x00); b = (i & 0x1) ? 0xff : 0x00; Added: trunk/vidix/vidix/drivers/rage128_vid.c =================================================================== --- trunk/vidix/vidix/drivers/rage128_vid.c (rev 0) +++ trunk/vidix/vidix/drivers/rage128_vid.c 2010-01-31 17:44:19 UTC (rev 348) @@ -0,0 +1,2 @@ +#define RAGE128 1 +#include "radeon_vid.c" Property changes on: trunk/vidix/vidix/drivers/rage128_vid.c ___________________________________________________________________ Added: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2010-01-31 17:07:53
|
Revision: 347 http://vidix.svn.sourceforge.net/vidix/?rev=347&view=rev Author: nickols_k Date: 2010-01-31 17:07:47 +0000 (Sun, 31 Jan 2010) Log Message: ----------- fixed static-only linkage Modified Paths: -------------- trunk/vidix/configure trunk/vidix/libdha/Makefile trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/Makefile Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2010-01-31 11:10:23 UTC (rev 346) +++ trunk/vidix/configure 2010-01-31 17:07:47 UTC (rev 347) @@ -66,6 +66,7 @@ "MAKE|Make command (example: 'make -j')|make", "AS|Assembler command|as", "CC|C compiler command (example: 'gcc -m64')|cc", + "AWK|AWK programming language (after names of its inventors: Aho Weinberger Kernighan)", "CFLAGS|C compiler flags (example: '-funit-at-a-time')", "LDFLAGS|linker flags (example: '-L/opt/lib64')", "LIBS|additional libraries (example: 'LIBS=-lacml_mv')", @@ -171,24 +172,21 @@ test_optimizations config.mak config.h # checking for a working awk, I'm using mawk first, because it's fastest - atmos -awk= -awk_verc_fail=yes -echores "Checking for "awk"..." -for awk in gawk nawk awk mawk; do - if ( $awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then - awk_verc_fail=no +echocheck "awk" +if ! test -z $AWK ; then + awk=$AWK +else + awk= +for i in "gawk" "nawk" "awk" "mawk" ; do + if ( $i 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then + awk=$i break fi done -test "$awk_verc_fail" = yes && awk=no -echores "$awk" -if test "$awk_verc_fail" = yes; then -echo "VIDIX needs Awk, but there was no working implementation found!" -echo "Try the GNU implementation, which can be downloaded from:" -die "ftp://ftp.gnu.org/gnu/gawk/" fi +echores $awk +test -z $awk && die "VIDIX needs Awk. Try download it from: ftp://ftp.gnu.org/gnu/gawk/" - require2 mmap "sys/types.h sys/mman.h" mmap mman_h=$mmap print_config HAVE_SYS_ config.h config.mak mman_h Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2010-01-31 11:10:23 UTC (rev 346) +++ trunk/vidix/libdha/Makefile 2010-01-31 17:07:47 UTC (rev 347) @@ -5,8 +5,8 @@ LIBNAME_SHARED = $(NAME).so LIBNAME_SHARED_MAJOR = $(NAME).so.$(VIDIX_VERSION_MAJOR) LIBNAME_SHARED_VERSION = $(NAME).so.$(VIDIX_VERSION) -LIBNAME_STATIC = $(NAME).a LIBNAME_WIN32 = $(NAME).dll +LIBNAME = $(NAME).a SRCS = libdha.c \ mtrr.c \ @@ -18,11 +18,10 @@ cpu_flush.c \ OBJS = $(SRCS:.c=.o) +SHOBJS = $(SRCS:.c=.po) -CFLAGS = -fPIC -I. -I.. $(OPTFLAGS) -ifneq ($(TARGET_OS),CYGWIN) -CFLAGS += -fPIC -endif +CFLAGS = -I. -I.. $(OPTFLAGS) +SHCFLAGS = -fPIC $(CFLAGS) ifeq ($(TARGET_OS),OpenBSD) LDCONFIG_FLAGS += -R @@ -31,39 +30,41 @@ endif endif -.SUFFIXES: .c .o +.SUFFIXES: .c .o .po -# .PHONY: all clean +LIB_TARGETS= +ifeq ($(VIDIX_BUILD_SHARED),yes) +LIB_TARGETS += $(LIBNAME_SHARED_VERSION) +endif +ifeq ($(VIDIX_BUILD_STATIC),yes) +LIB_TARGETS += $(LIBNAME) +endif +ifeq ($(TARGET_WIN32),yes) +LIB_TARGETS += $(LIBNAME_WIN32) +endif +all: $(LIB_TARGETS) + .c.o: pci_names.c $(CC) -c $(CFLAGS) -o $@ $< -$(LIBNAME_SHARED_VERSION): $(OBJS) - $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(OBJS) $(LIBS) +.c.po: pci_names.c + $(CC) -c $(SHCFLAGS) -o $@ $< + +$(LIBNAME_SHARED_VERSION): $(SHOBJS) + $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(SHOBJS) $(LIBS) ifneq ($(TARGET_OS),CYGWIN) ln -sf $@ $(LIBNAME_SHARED) ln -sf $@ $(LIBNAME_SHARED_MAJOR) endif -$(LIBNAME_STATIC): $(OBJS) +$(LIBNAME): $(OBJS) $(AR) r $@ $(OBJS) -$(LIBNAME_WIN32): $(OBJS) - $(CC) $(LDFLAGS) -shared -o $(LIBNAME_WIN32) $(OBJS) $(LIBS) +$(LIBNAME_WIN32): $(SHOBJS) + $(CC) $(LDFLAGS) -shared -o $(LIBNAME_WIN32) $(SHOBJS) $(LIBS) -LIB_TARGETS= -ifeq ($(VIDIX_BUILD_SHARED),yes) -LIB_TARGETS += $(LIBNAME_SHARED_VERSION) -endif -ifeq ($(VIDIX_BUILD_STATIC),yes) -LIB_TARGETS += $(LIBNAME_STATIC) -endif -ifeq ($(TARGET_WIN32),yes) -LIB_TARGETS += $(LIBNAME_WIN32) -endif -all: $(LIB_TARGETS) - pci_names.c: oth/pci.ids LC_ALL=C $(AWK) -f pci_db2c.awk $< @@ -71,7 +72,7 @@ $(CC) test.c -o test $(SHORTNAME) -L. -ldha clean: - rm -f *.o *.a *.so.* *.so *~ + rm -f *.o *.a *.po *.so.* *.so *~ rm -f pci_*.c pci_*.h pci.db rm -f test @@ -90,7 +91,7 @@ -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) + cp -f $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME) endif uninstall: Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2010-01-31 11:10:23 UTC (rev 346) +++ trunk/vidix/vidix/Makefile 2010-01-31 17:07:47 UTC (rev 347) @@ -5,57 +5,83 @@ LIBNAME_SHARED = $(NAME).so LIBNAME_SHARED_MAJOR = $(NAME).so.$(VIDIX_VERSION_MAJOR) LIBNAME_SHARED_VERSION = $(NAME).so.$(VIDIX_VERSION) -LIBNAME_STATIC = $(NAME).a LIBNAME_WIN32 = $(NAME).dll +LIBNAME = $(NAME).a INCDIR = $(prefix)/include/vidix SRCS = vidixlib.c -OBJS_SHARED = vidixlib.o -OBJS_STATIC = vidixlib_static.o -CFLAGS = $(OPTFLAGS) -I.. -fPIC +OBJS=$(SRCS:.c=.o) +SHOBJS=$(SRCS:.c=.po) +CFLAGS = $(OPTFLAGS) -I.. +SHCFLAGS= $(CFLAGS) -fPIC + +SUBDIRS = drivers +DO_MAKE = @ for i in $(SUBDIRS); do $(MAKE) -C $$i $@ || exit; done +DO_ALL = @ for i in $(SUBDIRS); do $(MAKE) -C $$i all || exit; done + ifeq ($(TARGET_OS),OpenBSD) LDCONFIG_FLAGS += -R endif -.SUFFIXES: .c .o +.SUFFIXES: .c .o .po -# .PHONY: all clean +ifeq ($(VIDIX_BUILD_STATIC),yes) +.PHONY: $(SUBDIRS) +endif LIB_TARGETS= ifeq ($(VIDIX_BUILD_SHARED),yes) LIB_TARGETS += $(LIBNAME_SHARED_VERSION) endif ifeq ($(VIDIX_BUILD_STATIC),yes) -LIB_TARGETS += $(LIBNAME_STATIC) +LIB_TARGETS += $(LIBNAME) endif ifeq ($(TARGET_WIN32),yes) LIB_TARGETS += $(LIBNAME_WIN32) endif +ifeq ($(VIDIX_BUILD_STATIC),yes) +all: $(LIB_TARGETS) +endif +ifeq ($(VIDIX_BUILD_SHARED),yes) all: $(LIB_TARGETS) do_drivers +endif -$(LIBNAME_SHARED_VERSION): $(SRCS) - $(CC) -c $(CFLAGS) -o $(OBJS_SHARED) $< - $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(OBJS_SHARED) -lc $(LIBDL) +ifeq ($(VIDIX_BUILD_STATIC),yes) +$(SUBDIRS): + $(DO_ALL) +endif + +.c.o: + $(CC) -c $(CFLAGS) -o $@ $< +.c.po: + $(CC) -c $(SHCFLAGS) -o $@ $< + +ifeq ($(VIDIX_BUILD_SHARED),yes) +$(LIBNAME_SHARED_VERSION): $(SHOBJS) + $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(SHOBJS) -lc $(LIBDL) +$(LIBNAME_WIN32): $(OBJS) + $(CC) -shared -o $(LIBNAME_WIN32) $(SHOBJS) $(LIBS) ifneq ($(TARGET_OS),CYGWIN) ln -sf $@ $(LIBNAME_SHARED) ln -sf $@ $(LIBNAME_SHARED_MAJOR) endif +endif -$(LIBNAME_STATIC): $(SRCS) - $(CC) -c $(CFLAGS) -DVIDIX_BUILD_STATIC -o $(OBJS_STATIC) $< - $(AR) r $@ $(OBJS_STATIC) -$(LIBNAME_WIN32): $(OBJS) - $(CC) -shared -o $(LIBNAME_WIN32) $(OBJS_SHARED) $(LIBS) +ifeq ($(VIDIX_BUILD_STATIC),yes) +$(LIBNAME): $(SUBDIRS) $(OBJS) + $(AR) r $@ $(OBJS) \ + $(wildcard drivers/*.o) +endif do_drivers: $(MAKE) -C drivers clean: - rm -f *.a *.o *.so *.so.* *~ + rm -f *.a *.o *.po *.so *.so.* *~ $(MAKE) -C drivers clean distclean: clean @@ -75,7 +101,7 @@ -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR) + cp -f $(LIBNAME) $(DESTDIR)$(LIBDIR) endif mkdir -p $(DESTDIR)$(INCDIR) @@ -91,7 +117,7 @@ -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME) endif rm -f $(DESTDIR)$(INCDIR)/fourcc.h $(DESTDIR)$(INCDIR)/vidix.h $(DESTDIR)$(INCDIR)/vidixlib.h $(MAKE) -C drivers uninstall Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2010-01-31 11:10:23 UTC (rev 346) +++ trunk/vidix/vidix/drivers/Makefile 2010-01-31 17:07:47 UTC (rev 347) @@ -28,15 +28,43 @@ s3_vid.so \ savage_vid.so \ sis_vid.so \ - unichrome_vid.so \ - + unichrome_vid.so ifeq ($(TARGET_OS),Linux) ifeq ($(HAVE_IVTV),yes) DRV += ivtv_vid.so endif endif +SRCS= cyberblade_vid.c \ + genfb_vid.c \ + mach64_vid.c \ + mga_crtc2_vid.c \ + mga_tv_vid.c \ + mga_vid.c \ + nvidia_vid.c \ + pm2_vid.c \ + pm3_vid.c \ + radeon_vid.c \ + rage128_vid.c \ + radeonhd_vid.c \ + s3_vid.c \ + savage_vid.c \ + sis_vid.c \ + unichrome_vid.c +ifeq ($(TARGET_OS),Linux) +ifeq ($(HAVE_IVTV),yes) +SRCS += ivtv_vid.c +endif +endif + +OBJS = $(SRCS:.c=.o) + +ifeq ($(VIDIX_BUILD_STATIC),yes) +all: $(OBJS) +endif +ifeq ($(VIDIX_BUILD_SHARED),yes) all: $(DRV) +endif .SUFFIXES: .c .o @@ -46,67 +74,18 @@ %.o: %.c $(CC) -c $(VIDIX_CFLAGS) -o $@ $< -mach64_vid.o: mach64_vid.c - $(CC) -c $(MACH64_CFLAGS) -o $@ $< +# Dynamic librairies +%.so: %.o + $(CC) $(LDFLAGS) -shared $^ $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ mga_crtc2_vid.o: mga_vid.c $(CC) -c $(MGA_CRTC2_CFLAGS) -o $@ $< - mga_tv_vid.o: mga_vid.c $(CC) -c $(MGA_TV_CFLAGS) -o $@ $< - rage128_vid.o: radeon_vid.c $(CC) -c $(RAGE128_CFLAGS) -o $@ $< -# Dynamic librairies -%.so: %.o - $(CC) $(LDFLAGS) -shared $^ $(VIDIX_LIBS) -Wl,-soname,$@ -o $@ -cyberblade_vid.so: cyberblade_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -genfb_vid.so: genfb_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -ivtvfb_vid.so: ivtv_vid.o - -mach64_vid.so: mach64_vid.o - -mga_crtc2_vid.so: mga_crtc2_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -mga_tv_vid.so: mga_tv_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -mga_vid.so: mga_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -nvidia_vid.so: nvidia_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -pm2_vid.so: pm2_vid.o - -pm3_vid.so: pm3_vid.o - -radeon_vid.so: radeon_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -radeonhd_vid.so: radeonhd_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -rage128_vid.so: rage128_vid.o - -s3_vid.so: s3_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -savage_vid.so: savage_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ - -sis_vid.so: sis_vid.o sis_bridge.o - -unichrome_vid.so: unichrome_vid.o - $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS) -Wl,-soname,$@ -o $@ - clean: rm -f *.o *.so *~ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2010-01-31 11:10:30
|
Revision: 346 http://vidix.svn.sourceforge.net/vidix/?rev=346&view=rev Author: nickols_k Date: 2010-01-31 11:10:23 +0000 (Sun, 31 Jan 2010) Log Message: ----------- use new-way from mplayerxp for configuring Modified Paths: -------------- trunk/vidix/configure trunk/vidix/functions Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2009-12-22 17:09:10 UTC (rev 345) +++ trunk/vidix/configure 2010-01-31 11:10:23 UTC (rev 346) @@ -1,175 +1,193 @@ -#!/bin/sh +#!/bin/bash . ./functions +init_functions # DHA/vidix version number VERSION_MAJOR=1 VERSION_MINOR=0 VERSION_MICRO=0 -for parm in "$@" ; do - if test "$parm" = "--help" || test "$parm" = "-help" || test "$parm" = "-h" ; then - cat << EOF +ENABLED_LIST=( + "shared|build shared libraries", +) -Usage: $0 [OPTIONS]... +DISABLED_LIST=( + "gcov|compile gnu coverage information into PROGRAM", + "profile|compile profiling information into PROGRAM", + "static|build static libraries" +) -Configuration: - -h, --help display this help and exit +AUTOCONF_LIST=( + "ENABLED_LIST", + "DISABLED_LIST" +) -Installation directories: - --prefix=DIR use this prefix for installing vidix [/usr/local] - --datadir=DIR use this prefix for installing machine independent - data files [PREFIX/share/vidix] - --confdir=DIR use this prefix for installing configuration files - [same as datadir] - --libdir=DIR use this prefix for installing shared objects - [same as datadir] +PATH_LIST=( + "prefix|architecture-independent files|/usr/local", + "exec_prefix|architecture-dependent files|\$prefix", + "bindir|user executables|\$exec_prefix/bin", + "libdir|object code libraries|\$exec_prefix/lib", + "datadir|read-only architecture-independent data|\$prefix/share/vidix", + "confdir|read-only configuration files|\$prefix/share/vidix" +) -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build program to run on HOST [BUILD] +SYSTYPES_LIST=( + "build|configure for building on BUILD [guessed]", + "host|cross-compile to build program to run on HOST [BUILD]", + "cc|use this C compiler to build PROGRAM|gcc", + "as|use this ASSEMBLER to build PROGRAM|as", + "ld|use this LINKER to build PROGRAM|gcc", + "ldconfig|use this LDCONFIG to install PROGRAM|ldconfig", + "install|use this INSTALL to install PROGRAM|install", + "pkg_config|use this PKG-CONFIG to configure PROGRAM|pkg-config", + "debug|compile debugging information into PROGRAM|0", + "language|force this language as default for PROGRAM (Available: $LANGUAGES)|$linguas" +) -Use these options if autodetection fails: - --with-extraincdir=DIR extra headers in DIR - --with-extralibdir=DIR extra library files in DIR - --with-extraldflags=LIST extra LDFLAGS +SYSCONF_LIST=( + "SYSTYPES_LIST", + "PROGNAME_LIST", + "PATH_LIST" +) -Use these options if autodetection fails: - --enable-static build as static library - --disable-static don't build as static library - --enable-shared build as shared library - --disable-shared don't build as shared library +EXTRA_LIST=( + "asflags|add these FLAGS to [\$ASFLAGS=$ASFLAGS]", + "cflags|add these FLAGS to [\$CFLAGS=$CFLAGS]", + "ldflags|add these FLAGS to [\$LDFLAGS=$LDFLAGS]", + "extralibs|add these LIBS to [\$LIBS=$LIBS]" +) -Miscellaneous options: - --cc=COMPILER use this C compiler to build VIDIX [gcc] +ADD_LIST=( + "EXTRA_LIST", +) -Environment variables: - MAKE Make command (example: "make -j") - AS Assembler command - CC C compiler command (example: "gcc -m64 -mveclibabi=acml") - CFLAGS C compiler flags (example: - "-O3 -msse -msse2 -msse3 -mfpmath=387,sse -mfancy-math-387 - -ffast-math -funroll-all-loops -ftree-loop-optimize - -ftree-vect-loop-version -ftree-vectorize -fomit-frame-pointer - -finline-functions-called-once -funit-at-a-time -pipe") - LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a - nonstandard directory <lib dir> - LIBS specifies additional libs (like: export LIBS=-lacml_mv) - DESTDIR specifies base of installation +ENVIRONMENT_LIST=( + "MAKE|Make command (example: 'make -j')|make", + "AS|Assembler command|as", + "CC|C compiler command (example: 'gcc -m64')|cc", + "CFLAGS|C compiler flags (example: '-funit-at-a-time')", + "LDFLAGS|linker flags (example: '-L/opt/lib64')", + "LIBS|additional libraries (example: 'LIBS=-lacml_mv')", + "DESTDIR|specifies base of installation" +) -EOF - exit 0 - fi -done # for parm in ... +HELP_LIST=( + "PATH_LIST|Fine tuning of the installation directories|--", + "SYSTYPES_LIST|System types|--", + "EXTRA_LIST|Extralist|--", + "ENABLED_LIST|Optional list of enabled fautures|--disable-", + "DISABLED_LIST|Optional list of disabled fautures|--enable-", + "ENVIRONMENT_LIST|Environment variables| " +) -# LGB: temporary files -for I in "$TMPDIR" "$TEMPDIR" "/tmp" ; do - test "$I" && break -done +DEFAULT_LIST=( + "PATH_LIST|Fine tuning of the installation directories|--", + "SYSTYPES_LIST|System types|--", + "EXTRA_LIST|Extralist|--" +) -TMPLOG="configure.log" -rm -f "$TMPLOG" -TMPC="$I/vidix-conf-$RANDOM-$$.c" -TMPCPP="$I/vidix-conf-$RANDOM-$$.cpp" -TMPO="$I/vidix-conf-$RANDOM-$$.o" -TMPS="$I/vidix-conf-$RANDOM-$$.S" +enable_list "ENABLED_LIST" +disable_list "DISABLED_LIST" +make_environment "ENVIRONMENT_LIST" -_cc=gcc -test "$CC" && _cc="$CC" -_prefix="/usr/local" -_profile= -_debug= -_fastcall=auto -# return result to parent script for ac_option do + optval="${ac_option#*=}" case "$ac_option" in - --prefix=*) - _prefix=`echo $ac_option | cut -d '=' -f 2` + --help) + print_help "HELP_LIST" + exit 0 ;; - --datadir=*) - _datadir=`echo $ac_option | cut -d '=' -f 2` + --enable-*=*|--disable-*=*) + eval $(echo "${ac_option%%=*}" | sed 's/--/action=/;s/-/ thing=/') + in_list "AUTOCONF_LIST" ${thing} || bad_options="$ac_option $bad_options" + if test "$action" = "disable"; then + test "${optval}" = "no" && action=enable + else + test "${optval}" = "no" && action=disable + fi + echo "$action ${thing}" + $action ${thing} ;; - --confdir=*) - _confdir=`echo $ac_option | cut -d '=' -f 2` + + --enable-?*|--disable-?*) + eval $(echo "$ac_option" | sed 's/--/action=/;s/-/ thing=/;s/-/_/g') + in_list "AUTOCONF_LIST" ${thing} || bad_options="$ac_option $bad_options" + $action ${thing} ;; - --libdir=*) - _libdir=`echo $ac_option | cut -d '=' -f 2` + *) + optname="${ac_option%%=*}" + optname="${optname#--}" + optname=${optname//-/_} + if in_list "SYSCONF_LIST" $optname ; then + eval $optname=$optval + elif in_list "ADD_LIST" $optname ; then + action="add_$optname" + $action ${optval} + else + bad_options="$ac_option $bad_options" + fi ;; - --with-extraincdir=*) - _inc_extra=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'` - ;; - --with-extralibdir=*) - _ld_extra=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'` - ;; - --with-extraldflags=*) - _exld_flags="$_exld_flags -L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`" - ;; - --build=*) - _build=`echo $ac_option | cut -d '=' -f 2` - ;; - --host=*) - _host=`echo $ac_option | cut -d '=' -f 2` - ;; - --cc=*) - _cc=`echo $ac_option | cut -d '=' -f 2` - ;; - --enable-static) - _static=yes - ;; - --disable-static) - _static=no - ;; - --enable-shared) - _shared=yes - ;; - --disable-shared) - _shared=no - ;; - *) - ;; esac done +make_defaults "DEFAULT_LIST" mktmps -guess_target config.mak config.h -test_optimizations config.mak config.h +disable gcc44_workaround +# Checking CC version... +# gcc-3.0 merges optimizations coming from egcs, pgcc, agcc, ... + echocheck "$cc version" + # also check for name (the version checking is only for _gcc_ up for now) + # FIXME implement this in ver. check. + cc_name=`$cc -v 2>&1 | tail -n 1 | cut -d ' ' -f 1` + cc_version=`$cc -dumpversion` + cc_v=$cc_version + case $cc_version in + 4.[4-9]|4.[4-9].[0-9]) + enable gcc44_workaround + ;; + 3.[3-9]|3.[2-9].[3-9]|4.[0-3]|4.[0-3].[0-9]) + ;; + *) + die "*** Bad gcc-$cc_version: Please upgrade C compiler at least to gcc-3.2.3+! ***" + ;; + esac + echores "$cc_version" +# now that we know what compiler should be used for compilation, try to find +# out which assembler is used by the $cc compiler +if cygwin ; then +prefix="." +fi -test -n "$_ld_extra" && add_extralibs $_ld_extra -test -n "$_exld_flags" && add_ldflags $_exld_flags -test -n "$_inc_extra" && add_cflags $_inc_extra - if cygwin ; then # Keep everything in .exe folder -test -z "$_datadir" && _datadir="." -test -z "$_confdir" && _confdir="." -test -z "$_libdir" && _libdir="." -else -test -z "$_datadir" && _datadir="$_prefix/share/" -test -z "$_confdir" && _confdir="$_datadir" -test -z "$_libdir" && _libdir="$_prefix/lib" +test -z "$datadir" && datadir="." +test -z "$confdir" && confdir="." +test -z "$libdir" && libdir="." fi +guess_target config.mak config.h +test_optimizations config.mak config.h + # checking for a working awk, I'm using mawk first, because it's fastest - atmos -_awk= -_awk_verc_fail=yes +awk= +awk_verc_fail=yes echores "Checking for "awk"..." -for _awk in gawk nawk awk mawk; do - if ( $_awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then - _awk_verc_fail=no +for awk in gawk nawk awk mawk; do + if ( $awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then + awk_verc_fail=no break fi done -test "$_awk_verc_fail" = yes && _awk=no -echores "$_awk" -if test "$_awk_verc_fail" = yes; then +test "$awk_verc_fail" = yes && awk=no +echores "$awk" +if test "$awk_verc_fail" = yes; then echo "VIDIX needs Awk, but there was no working implementation found!" echo "Try the GNU implementation, which can be downloaded from:" die "ftp://ftp.gnu.org/gnu/gawk/" fi -require2 libdl dlfcn.h dlsym -ldl || die "dynamic loader was not found" -print_config HAVE_ config.h config.mak libdl require2 mmap "sys/types.h sys/mman.h" mmap mman_h=$mmap @@ -186,46 +204,34 @@ check_sheader ivtv_h "linux/ivtv.h" print_config HAVE_ config.h config.mak ivtv_h +build_static=$static +print_config VIDIX_ config.h config.mak build_static -_def_static=no -echocheck "static library build" -if test "$_static" = no; then - _def_static=no -elif test "$_static" = yes; then - _def_static=yes -fi -echores "$_def_static" +build_shared=$shared +print_config VIDIX_ config.h config.mak build_shared -_def_shared=yes -echocheck "shared library build" -if test "$_shared" = no; then - _def_shared=no -elif test "$_shared" = yes; then - _def_shared=yes +if enabled shared ; then +require2 libdl dlfcn.h dlsym -ldl || die "dynamic loader was not found" +print_config HAVE_ config.h config.mak libdl fi -if test "$_def_static" = no -a "$_def_shared" = no; then - _def_shared=yes -fi -echores "$_def_shared" +test "$debug" != "0" && def_debug='#define VIDIX_DEBUG 1' || def_debug='#undef VIDIX_DEBUG' ############################################################################# echo "Creating config.mak" cat >> config.mak << EOF # -------- Generated by configure ----------- -prefix = $_prefix -DATADIR = $_datadir -CONFDIR = $_confdir -LIBDIR = $_libdir +prefix = $prefix +DATADIR = $datadir +CONFDIR = $confdir +LIBDIR = $libdir DESTDIR = $DESTDIR OPTFLAGS = $CFLAGS LDFLAGS = $LDFLAGS AR = ar -CC = $_cc -AWK = $_awk -LDCONFIG=$_ld_config -INSTALL=$_install -VIDIX_BUILD_STATIC = $_def_static -VIDIX_BUILD_SHARED = $_def_shared +CC = $cc +AWK = $awk +LDCONFIG=$ld_config +INSTALL=$install VIDIX_VERSION_MAJOR = $VERSION_MAJOR VIDIX_VERSION_MINOR = $VERSION_MINOR @@ -246,14 +252,14 @@ #define VIDIX_VERSION_NUMBER "$VERSION_MAJOR.$VERSION_MINOR.$VERSION_MICRO" /* Toggles debugging informations */ -$_def_debug +$def_debug /* Common data directory (for fonts, etc) */ -#define USR_PREFIX "$_prefix" -#define DATADIR "$_datadir" -#define CONFDIR "$_confdir" -#define LIBDIR "$_libdir" +#define USR_PREFIX "$prefix" +#define DATADIR "$datadir" +#define CONFDIR "$confdir" +#define LIBDIR "$libdir" EOF # Last move: -rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP" +rmtmps Modified: trunk/vidix/functions =================================================================== --- trunk/vidix/functions 2009-12-22 17:09:10 UTC (rev 345) +++ trunk/vidix/functions 2010-01-31 11:10:23 UTC (rev 346) @@ -1,10 +1,19 @@ -#!/bin/sh +#!/bin/bash +# query full-featured shell here # # functions This file contains functions to be used by all # shell scripts of the mplayerxp # Prefer these macros to full length text ! # These macros only return an error code - NO display is done +# Check how echo works in this /bin/sh +init_functions(){ +case `echo -n` in + -n) echo_n= echo_c='\c';; # SysV echo + *) echo_n='-n ' echo_c= ;; # BSD echo +esac +} + log(){ echo "$@" >>"$TMPLOG" } @@ -144,6 +153,23 @@ done } +filter(){ + pat=$1 + shift + for v; do + eval "case $v in $pat) echo $v ;; esac" + done +} + +is_in(){ + value=$1 + shift + for var in $*; do + [ $var = $value ] && return 0 + done + return 1 +} + check_deps(){ for cfg; do cfg="${cfg#!}" @@ -217,6 +243,7 @@ flags_saved && return SAVE_CFLAGS="$CFLAGS" SAVE_LDFLAGS="$LDFLAGS" + SAVE_ASFLAGS="$ASFLAGS" SAVE_extralibs="$extralibs" } @@ -224,9 +251,11 @@ flags_saved || return CFLAGS="$SAVE_CFLAGS" LDFLAGS="$SAVE_LDFLAGS" + ASFLAGS="$SAVE_ASFLAGS" extralibs="$SAVE_extralibs" unset SAVE_CFLAGS unset SAVE_LDFLAGS + unset SAVE_ASFLAGS unset SAVE_extralibs } @@ -235,6 +264,11 @@ CFLAGS="$CFLAGS $*" } +temp_asflags(){ + save_flags + ASFLAGS="$ASFLAGS $*" +} + temp_ldflags(){ save_flags LDFLAGS="$LDFLAGS $*" @@ -256,6 +290,10 @@ append CFLAGS "$@" } +add_asflags(){ + append ASFLAGS "$@" +} + add_ldflags(){ append LDFLAGS "$@" } @@ -273,50 +311,73 @@ log check_cc "$@" cat >$TMPC log_file $TMPC - check_cmd $_cc $CFLAGS "$@" -c -o $TMPO $TMPC + check_cmd $cc $CFLAGS "$@" -c -o $TMPO $TMPC } check_cpp(){ log check_cpp "$@" cat >$TMPC log_file $TMPC - check_cmd $_cc $CFLAGS "$@" -E -o $TMPO $TMPC + check_cmd $cc $CFLAGS "$@" -E -o $TMPO $TMPC } -check_asm(){ +test_asm(){ log check_asm "$@" name="$1" asm="$2" shift 2 - check_cc "$@" <<EOF && enable $name || disable $name + check_cc "$@" <<EOF && return 0 || return 1 int foo(void){ asm volatile($asm); } EOF } +check_asm(){ + name="$1" + test_asm "$@" && enable $name || disable $name +} + check_ld(){ log check_ld "$@" check_cc || return - check_cmd $_cc $LDFLAGS "$@" -o $TMPE $TMPO $extralibs + check_cmd $cc $LDFLAGS "$@" -o $TMPE $TMPO $extralibs } -check_cflags(){ +test_cflags(){ log check_cflags "$@" - check_cc "$@" <<EOF && add_cflags "$@" + check_cc "$@" <<EOF && return 0 || return 1 int x; EOF } -check_ldflags(){ +check_cflags(){ + test_cflags "$@" && add_cflags "$@" +} + +is_in_cflags(){ + value=$1 + shift + for var in $CFLAGS; do + tmp=$(trim `echo $var | cut -d '=' -f 1`) + [ $tmp = $value ] && return 0 + done + return 1 +} + +test_ldflags(){ log check_ldflags "$@" - check_ld "$@" <<EOF && add_ldflags "$@" + check_ld "$@" <<EOF && return 0 || return 1 int main(void){ return 0; } EOF } +check_ldflags(){ + test_ldflags "$@" && add_ldflags "$@" +} + check_header(){ log check_header "$@" header=$1 @@ -819,7 +880,7 @@ echo >> "$TMPLOG" cat "$TMPC" >> "$TMPLOG" echo >> "$TMPLOG" - ( check_cmd $_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra "$TMPC" -o "$TMPO" "$@" ) >> "$TMPLOG" 2>&1 + ( check_cmd $cc $CFLAGS $inc_extra $ld_static $ld_extra "$TMPC" -o "$TMPO" "$@" ) >> "$TMPLOG" 2>&1 TMP="$?" echo >> "$TMPLOG" echo "ldd $TMPO" >> "$TMPLOG" @@ -829,6 +890,13 @@ } # Display error message, flushes tempfile, exit +warning() { + log "Warning: $@" + echo + echo "Warning: $@" >&2 + echo >&2 +} + die() { log "Error: $@" echo @@ -840,6 +908,10 @@ } mktmps() { +local I +for I in "$TMPDIR" "$TEMPDIR" "/tmp" ; do + test "$I" && break +done TMPLOG="configure.log" rm -f "$TMPLOG" TMPC="$I/mplayerxp-conf-$RANDOM-$$.c" @@ -856,7 +928,7 @@ # OS test booleans functions issystem() { - test "`echo $_host_os | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`" + test "`echo $host_os | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`" } linux() { issystem "Linux-GNU"; return "$?" ; } sunos() { issystem "SunOS" ; return "$?" ; } @@ -879,7 +951,7 @@ # arch test boolean functions x86_32() { - case "$_host_arch" in + case "$host_arch" in i*86|x86|x86pc|k5|k6|k6-2|k6-3|pentium*|athlon*) return 0 ;; @@ -890,7 +962,7 @@ } x86_64() { - case "$_host_arch" in + case "$host_arch" in x86_64|amd64) return 0 ;; @@ -907,28 +979,28 @@ } ppc() { - case "$_host_arch" in + case "$host_arch" in ppc) return 0;; *) return 1;; esac } mips() { - case "$_host_arch" in + case "$host_arch" in mips) return 0;; *) return 1;; esac } alpha() { - case "$_host_arch" in + case "$host_arch" in alpha) return 0 ;; *) return 1 ;; esac } arm() { - case "$_host_arch" in + case "$host_arch" in arm) return 0 ;; *) return 1 ;; esac @@ -947,30 +1019,25 @@ # Use this before starting a check echocheck() { - if test "$_echocheked" != "yes"; then - _echocheked=yes - echo "============ Checking for $@ ============" >> "$TMPLOG" - echo ${_echo_n} "Checking for $@ ... ${_echo_c}" + if test "$echocheked" != "yes"; then + echocheked=yes + log "============ Checking for $@ ============" + echo $echo_n "Checking for $@ ... "$echo_c fi } # Use this to echo the results of a check echores() { - if test "$_echocheked" = "yes"; then - _echocheked=no - echo "Result is: $@" >> "$TMPLOG" - echo "##########################################" >> "$TMPLOG" - echo "" >> "$TMPLOG" + if test "$echocheked" = "yes"; then + echocheked=no + log "Result is: $@" + log "##########################################" + log "" echo "$@" fi } ############################################################################# -# Check how echo works in this /bin/sh -case `echo -n` in - -n) _echo_n= _echo_c='\c' ;; # SysV echo - *) _echo_n='-n ' _echo_c= ;; # BSD echo -esac # Guessing target system guess_target() { @@ -979,82 +1046,82 @@ local config_h=$2 config_guess="./config.guess" config_sub="./config.sub" -if test -z "$_build" ; then -_build=`$config_guess` -test -z "$_build" && echores "cannot guess build type; you must specify one" +if test -z "$build" ; then +build=`$config_guess` +test -z "$build" && echores "cannot guess build type; you must specify one" fi # Canonize it -$config_sub sun4 >/dev/null 2>&1 || echores "cannot run $_config_sub" -_build=`$config_sub $_build` -echores "$_build" -_build_cpu=`echo $_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -_build_vendor=`echo $_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -_build_os=`echo $_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +$config_sub sun4 >/dev/null 2>&1 || echores "cannot run $config_sub" +build=`$config_sub $build` +echores "$build" +build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echocheck "host system type" -if test -z "$_host" ; then -_host=$_build +if test -z "$host" ; then +host=$build fi -_host=`$config_sub $_host` -_host_cpu=`echo $_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -_host_vendor=`echo $_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -_host_os=`echo $_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echores "$_host" +host=`$config_sub $host` +host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +echores "$host" # Printout architecture -case "$_host_cpu" in +case "$host_cpu" in i*86) - _host_arch="x86" - _icpu=`echo $_host_cpu | sed -n 's/^i\([0-9]*\)$/\1/p'` + host_arch="x86" + icpu=`echo $host_cpu | sed -n 's/^i\([0-9]*\)$/\1/p'` ;; *) - _host_arch=$_host_cpu - _icpu=$_host_cpu + host_arch=$host_cpu + icpu=$host_cpu ;; esac -_def_words_endian='#define WORDS_BIGENDIAN 1' -x86 && _def_words_endian="#undef WORDS_BIGENDIAN" -arm && _def_words_endian="#undef WORDS_BIGENDIAN" -alpha && _def_words_endian="#undef WORDS_BIGENDIAN" +def_words_endian='#define WORDS_BIGENDIAN 1' +x86 && def_words_endian="#undef WORDS_BIGENDIAN" +arm && def_words_endian="#undef WORDS_BIGENDIAN" +alpha && def_words_endian="#undef WORDS_BIGENDIAN" -_lc_host_arch=`echo $_host_arch | tr [:lower:] [:upper:]` -_lc_host_os=`echo $_host_os | tr [:lower:] [:upper:]` -_lc_host_sys=$_lc_host_os +lc_host_arch=`echo $host_arch | tr [:lower:] [:upper:]` +lc_host_os=`echo $host_os | tr [:lower:] [:upper:]` +lc_host_sys=$lc_host_os if win32 ; then -_lc_host_os=WIN32 -_slibsuf=".dll" +lc_host_os=WIN32 +slibsuf=".dll" else -_slibsuf=".so" +slibsuf=".so" fi #tune architecture -x86_64 && _lc_host_arch="X86_64" -x86_64 && _icpu="k8" -x86_32 && _lc_host_arch="X86" -x86_32 && _icpu="athlon" # it enables -m3dnowa support which can't be enabled through command line -_lc_host_os=`echo $_lc_host_os | sed 's/[^A-Za-z0-9_]/_/g'` +x86_64 && lc_host_arch="X86_64" +x86_64 && icpu="k8" +x86_32 && lc_host_arch="X86" +x86_32 && icpu="athlon" # it enables -m3dnowa support which can't be enabled through command line +lc_host_os=`echo $lc_host_os | sed 's/[^A-Za-z0-9_]/_/g'` cat > $config_mak << EOF # -------- Generated by guess_target() ----------- -TARGET_OS = $_lc_host_os -TARGET_SYS = $_lc_host_sys -TARGET_ARCH_$_lc_host_arch = yes -TARGET_CPU = $_icpu -SLIBSUF = $_slibsuf +TARGET_OS = $lc_host_os +TARGET_SYS = $lc_host_sys +TARGET_ARCH_$lc_host_arch = yes +TARGET_CPU = $icpu +SLIBSUF = $slibsuf EOF cat > $config_h << EOF /* -------- Generated by guess_target() ----------- */ -#ifndef VIDIX_CONFIG_ARCH -#define VIDIX_CONFIG_ARCH 1 -#define ARCH_$_lc_host_arch 1 -#define __CPU__ $_icpu +#ifndef MPXP_CONFIG_ARCH +#define MPXP_CONFIG_ARCH 1 +#define ARCH_$lc_host_arch 1 +#define __CPU__ $icpu /* Define if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel and VAX). */ -$_def_words_endian -#define TARGET_$_lc_host_os 1 -#define SLIBSUFFIX "$_slibsuf" +$def_words_endian +#define TARGET_$lc_host_os 1 +#define SLIBSUFFIX "$slibsuf" EOF -case "$_lc_host_arch" in +case "$lc_host_arch" in X86) echo "#define ARCH_X86_32 1" >> $config_h ;; @@ -1069,68 +1136,76 @@ local config_h=$2 -_locarch="-O3" +locarch="" if x86_64 ; then -_locarch="-march=$_icpu -m64 $_locarch" +locarch="-march=$icpu -m64" add_ldflags -m64 +add_asflags --64 elif x86_32 ; then -_locarch="-march=$_icpu -m32 $_locarch" +locarch="-march=$icpu -m32" add_ldflags -m32 +add_asflags --32 fi -if test "$_profile" || test "$_debug" ; then - CFLAGS="-O2 -fno-builtin $_dbg_flags $_debug $_profile" -elif test -z "$CFLAGS" ; then - CFLAGS="$_locarch -ffast-math" - mips || CFLAGS="$CFLAGS -pipe" - x86_32 && CFLAGS="$CFLAGS -fomit-frame-pointer" +# agree with user-defined architecture/tuning here +if enabled gcc44_workaround ; then +is_in_cflags "-march" || check_cflags "-march=native" +is_in_cflags "-mtune" || check_cflags "-mtune=native" +else +is_in_cflags "-march" || check_cflags $locarch +is_in_cflags "-mtune" || check_cflags "-mtune=generic" +fi +if enabled profile || test $debug -gt 2 || enabled gcov; then + add_cflags "-O2 -fno-builtin" +if enabled profile ; then + add_cflags "-pg" + add_ldflags "-pg" +fi +if test $debug -gt 0 ; then + add_cflags "-g$debug" + add_ldflags "-g$debug" +fi +if enabled gcov ; then +add_cflags "-fprofile-arcs -ftest-coverage" +add_extralibs "-lgcov" +fi +else + is_in_cflags "-O3" || add_cflags "-O3" + mips || check_cflags "-pipe" + x86_32 && check_cflags "-fomit-frame-pointer" # -fomit-frame-pointer is not needed for x86_64 fi -check_cflags -mtune=generic +# -ffast-math produces incorrect output in 64-bit mode on x86_64 cpus. Tested with many gcc-4.x series +is_in_cflags "-fno-fast-math" || check_cflags "-fno-fast-math" +is_in_cflags "-mfancy-math-387" || check_cflags "-mfancy-math-387" +is_in_cflags "-fno-math-errno" || check_cflags "-fno-math-errno" +is_in_cflags "-fno-signed-zeros" || check_cflags "-fno-signed-zeros" +# it seems that -mtune=generic doesn't prevent generation of SSE4 opcodes for i686 arch +check_cflags "-fno-tree-vectorize" +check_cflags "-fno-tree-vect-loop-version" +check_cflags "-fno-vect-cost-model" -disable _mmx_test -x86_32 && enable _mmx_test -_def_mmx= -_def_mmx2= -_def_3dnow= -_def_3dnow2= -_def_sse= -_def_sse2= -_def_sse3= -_def_ssse3= -_def_sse3= -_def_avx= -if enabled _mmx_test ; then -check_cflags -mmmx && _def_mmx='#define CAN_COMPILE_MMX 1' -check_cflags -m3dnow && _def_3dnow='#define CAN_COMPILE_3DNOW 1' -check_cflags -msse && _def_sse='#define CAN_COMPILE_SSE 1' -check_cflags -msse2 && _def_sse2='#define CAN_COMPILE_SSE2 1' -check_cflags -msse3 && _def_sse3='#define CAN_COMPILE_SSE3 1' -check_cflags -mssse3 && _def_ssse3='#define CAN_COMPILE_SSSE3 1' -check_cflags -msse4 && _def_sse4='#define CAN_COMPILE_SSE4 1' -check_cflags -mavx && _def_avx='#define CAN_COMPILE_AVX 1' -_fpu_clob='#define FPU_CLOBBERED "st","st(1)","st(2)","st(3)","st(4)","st(5)","st(6)","st(7)"' -_mmx_clob='#define MMX_CLOBBERED "mm0","mm1","mm2","mm3","mm4","mm5","mm6","mm7"' -_sse_clob='#define SSE_CLOBBERED "xmm0","xmm1","xmm2","xmm3","xmm4","xmm5","xmm6","xmm7"' +disable mmx_test +x86 && enable mmx_test +enabled gcc44_workaround && disable mmx_test +if enabled mmx_test ; then +check_cflags -mmmx +check_cflags -m3dnow +check_cflags -msse +check_cflags -msse2 +check_cflags -msse3 +check_cflags -mssse3 +check_cflags -msse4 +check_cflags -mpclmul +check_cflags -maes +check_cflags -mavx fi -if test -n "$_def_3dnow" || test -n "$_def_sse" ; then -_def_mmx2='#define CAN_COMPILE_MMX2 1' -fi - +# TODO: remove this block cat >> $config_h << EOF /* Extension defines */ -$_def_mmx -$_def_mmx2 -$_def_3dnow -$_def_sse -$_def_sse2 -$_def_sse3 -$_def_ssse3 -$_def_sse4 -$_def_avx -$_fpu_clob -$_mmx_clob -$_sse_clob +#define FPU_CLOBBERED "st","st(1)","st(2)","st(3)","st(4)","st(5)","st(6)","st(7)" +#define MMX_CLOBBERED "mm0","mm1","mm2","mm3","mm4","mm5","mm6","mm7" +#define SSE_CLOBBERED "xmm0","xmm1","xmm2","xmm3","xmm4","xmm5","xmm6","xmm7" EOF if (alpha) ; then @@ -1144,24 +1219,254 @@ return 0; } EOF - _def_mvi='#undef HAVE_MVI' - $_cc -o "$TMPO" "$TMPC" - _lc_ver_mask=`$TMPO` - case "$_lc_ver_mask" in + def_mvi='#undef HAVE_MVI' + $cc -o "$TMPO" "$TMPC" + lc_ver_mask=`$TMPO` + case "$lc_ver_mask" in 0-0) proc="ev4" ;; 1-0) proc="ev5" ;; 1-1) proc="ev56" ;; - 1-101) proc="pca56"; _def_mvi='#define HAVE_MVI 1' ;; - 2-303) proc="ev6"; _def_mvi='#define HAVE_MVI 1' ;; - 2-307) proc="ev67"; _def_mvi='#define HAVE_MVI 1' ;; - 2-1307) proc="ev68"; _def_mvi='#define HAVE_MVI 1' ;; + 1-101) proc="pca56"; def_mvi='#define HAVE_MVI 1' ;; + 2-303) proc="ev6"; def_mvi='#define HAVE_MVI 1' ;; + 2-307) proc="ev67"; def_mvi='#define HAVE_MVI 1' ;; + 2-1307) proc="ev68"; def_mvi='#define HAVE_MVI 1' ;; esac echores "$proc" cat >> $config_h << EOF -$_def_mvi +$def_mvi EOF fi cat >> $config_h << EOF #endif /* MPXP_CONFIG_ARCH */ EOF } + +trim() +{ + local trimmed=$1 + trimmed=${trimmed%% } + trimmed=${trimmed## } + echo $trimmed +} + +print_help(){ +echo "Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets." +local list="$1[*]" +list=${!list} +local index=1 +OLD_IFS=$IFS +IFS= +while true +do + local line=$(trim `echo $list | cut -d ',' -f $index`) + test -z $line && break + local opt=$(trim `echo $line | cut -d '|' -f 1`) + local descr=$(trim `echo $line | cut -s -d '|' -f 2`) + local opref=$(trim `echo $line | cut -s -d '|' -f 3`) + echo "$descr:" + opt="$opt[*]" + opt=${!opt} + local i=1 + while true + do + local oval=$(trim `echo $opt | cut -d ',' -f $i`) + test -z $oval && break + local oopt=$(trim `echo $oval | cut -d '|' -f 1`) + local odesc=$(trim `echo $oval | cut -s -d '|' -f 2`) + local odef=$(trim `echo $oval | cut -s -d '|' -f 3`) + printf " " + test -z $opref || printf "%s" $opref +# ((for(j=0;j<(25-lpref);j++))) printf " " + printf "%-25s %s " ${oopt//_/-} $odesc + test -z $odef && echo "" || echo "[$odef]" + (( i++ )) + done + (( index++ )) +done +IFS=$OLD_IFS +} + +make_defaults(){ +local list="$1[*]" +list=${!list} +local index=1 +OLD_IFS=$IFS +IFS= +while true +do + local line=$(trim `echo $list | cut -d ',' -f $index`) + test -z $line && break + local opt=$(trim `echo $line | cut -d '|' -f 1`) + opt="$opt[*]" + opt=${!opt} + local i=1 + while true + do + local oval=$(trim `echo $opt | cut -d ',' -f $i`) + test -z $oval && break + local oopt=$(trim `echo $oval | cut -d '|' -f 1`) + local odef=$(trim `echo $oval | cut -s -d '|' -f 3`) + eval "assigned_val=\$$oopt" + if test -z $assigned_val ; then + test -z $odef || eval "$oopt=\"$odef\"" + fi + (( i++ )) + done + (( index++ )) +done +IFS=$OLD_IFS +} + +in_list(){ +local list="$1[*]" +list=${!list} +local index=1 +OLD_IFS=$IFS +IFS= +while true +do + local line=$(trim `echo $list | cut -d ',' -f $index`) + test -z $line && break + local opt=$(trim `echo $line | cut -d '|' -f 1`) + opt="$opt[*]" + opt=${!opt} + local i=1 + while true + do + local oval=$(trim `echo $opt | cut -d ',' -f $i`) + test -z $oval && break + local oopt=$(trim `echo $oval | cut -d '|' -f 1`) + if test $2 = $oopt ; then + IFS=$OLD_IFS + return 0 + fi + (( i++ )) + done + (( index++ )) +done +IFS=$OLD_IFS +return 1 +} + +find_in_list(){ +local list="$1[*]" +list=${!list} +local index=1 +OLD_IFS=$IFS +IFS= +while true +do + local line=$(trim `echo $list | cut -d ',' -f $index`) + test -z $line && break + local opt=$(trim `echo $line | cut -d '|' -f 1`) + opt="$opt[*]" + opt=${!opt} + local i=1 + while true + do + local oval=$(trim `echo $opt | cut -d ',' -f $i`) + test -z $oval && break + local oopt=$(trim `echo $oval | cut -d '|' -f 1`) + if test $2 = $oopt ; then + IFS=$OLD_IFS + echo "$oval" + return 0 + fi + (( i++ )) + done + (( index++ )) +done +IFS=$OLD_IFS +return 1 +} + +show_homepage() { +local name=$1 +local list="$2[*]" +list=${!list} +local descr +local site +echo " $name" +if [ -z $3 ]; then +return +else +for i in $list ; do + descr=`find_in_list "$3" $i` + result=$? + site=$(trim `echo $descr | cut -d '|' -f 3`) + echo $echo_n " $i " | tee -a $TMPLOG + if test -z $site ; then + echo $echo_c "" | tee -a $TMPLOG + else + echo $echo_c "(site: $site)" | tee -a $TMPLOG + fi +done +fi +} + +make_environment(){ +local list="$1[*]" +list=${!list} +local i=1 +OLD_IFS=$IFS +IFS= +while true +do + local oval=$(trim `echo $list | cut -s -d ',' -f $i`) + test -z $oval && break + local oopt=$(trim `echo $oval | cut -d '|' -f 3`) + local odef=$(trim `echo $oval | cut -s -d '|' -f 1`) + eval "odef=\$$odef" + test -z $oopt || test -z $odef || eval "$oopt=\"$odef\"" + (( i++ )) +done +IFS=$OLD_IFS +} + +set_list(){ +local list="$1[*]" +list=${!list} +local i=1 +OLD_IFS=$IFS +IFS= +while true +do + local oval=$(trim `echo $list | cut -s -d ',' -f $i`) + test -z $oval && break + local oopt=$(trim `echo $oval | cut -d '|' -f 1`) + eval "$oopt=$2" + (( i++ )) +done +IFS=$OLD_IFS +} + +enable_list(){ +set_list $1 yes +} + +disable_list(){ +set_list $1 no +} + +check_pkg(){ + name=$1 + package=$2 + answer="no" + echocheck $name + $pkg_config --exists $package + test "$?" -ne 0 && disable $name + if enabled $name ; then + version=`echo $($pkg_config $package --modversion)` + log "found version: $version of $package" + check_cflags $($pkg_config $package --cflags) || disable $name + check_ldflags $($pkg_config $package --libs) || disable $name + answer=`echo "yes ($version)"` + fi + log "pkg-config --exists $package = $answer" + echores $answer +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-12-22 17:09:18
|
Revision: 345 http://vidix.svn.sourceforge.net/vidix/?rev=345&view=rev Author: nickols_k Date: 2009-12-22 17:09:10 +0000 (Tue, 22 Dec 2009) Log Message: ----------- cleanups from Michael Kostylev <mic...@gm...> Modified Paths: -------------- trunk/vidix/vidix/drivers/s3_vid.c Modified: trunk/vidix/vidix/drivers/s3_vid.c =================================================================== --- trunk/vidix/vidix/drivers/s3_vid.c 2009-12-21 17:59:02 UTC (rev 344) +++ trunk/vidix/vidix/drivers/s3_vid.c 2009-12-22 17:09:10 UTC (rev 345) @@ -75,8 +75,6 @@ static void S3InitStreams2000 (void); static void (*S3InitStreams) (void) = NULL; -static void s3_destroy (void); - pciinfo_t pci_info; struct s3_chip @@ -777,7 +775,7 @@ if (!videoRam) { printf ("[s3_vid] Unsupported configuration, aborting\n"); -// s3_destroy (); + VIDIX_NAME(vixDestroy)(); return -1; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-12-21 17:59:13
|
Revision: 344 http://vidix.svn.sourceforge.net/vidix/?rev=344&view=rev Author: nickols_k Date: 2009-12-21 17:59:02 +0000 (Mon, 21 Dec 2009) Log Message: ----------- patch from Michael Kostylev <mic...@gm...>: added support for all ViRGE chipsets. Added LFB support for all ViRGE and minor cleanups Modified Paths: -------------- trunk/vidix/vidix/drivers/s3_regs.h trunk/vidix/vidix/drivers/s3_vid.c Modified: trunk/vidix/vidix/drivers/s3_regs.h =================================================================== --- trunk/vidix/vidix/drivers/s3_regs.h 2009-12-16 18:02:22 UTC (rev 343) +++ trunk/vidix/vidix/drivers/s3_regs.h 2009-12-21 17:59:02 UTC (rev 344) @@ -1,6 +1,8 @@ #ifndef _SAVAGE_REGS_H #define _SAVAGE_REGS_H +#define S3_VIRGE_SERIES(chip) ((chip>=S3_VIRGE) && (chip<=S3_TRIO3D2X)) +#define S3_VIRGE_NEW_SERIES(chip) ((chip>=S3_VIRGE_MX) && (chip<=S3_TRIO3D2X)) #define S3_SAVAGE3D_SERIES(chip) ((chip>=S3_SAVAGE3D) && (chip<=S3_SAVAGE_MX)) #define S3_SAVAGE4_SERIES(chip) ((chip==S3_SAVAGE4) || (chip==S3_PROSAVAGE)) #define S3_SAVAGE_MOBILE_SERIES(chip) ((chip==S3_SAVAGE_MX) || (chip==S3_SUPERSAVAGE)) @@ -14,6 +16,12 @@ S3_UNKNOWN = 0, S3_TRIO64V, S3_VIRGE, + S3_VIRGE_VX, + S3_VIRGE_DXGX, + S3_VIRGE_MX, + S3_VIRGE_GX2, + S3_TRIO3D, + S3_TRIO3D2X, S3_SAVAGE3D, S3_SAVAGE_MX, S3_SAVAGE4, Modified: trunk/vidix/vidix/drivers/s3_vid.c =================================================================== --- trunk/vidix/vidix/drivers/s3_vid.c 2009-12-16 18:02:22 UTC (rev 343) +++ trunk/vidix/vidix/drivers/s3_vid.c 2009-12-21 17:59:02 UTC (rev 344) @@ -75,6 +75,8 @@ static void S3InitStreams2000 (void); static void (*S3InitStreams) (void) = NULL; +static void s3_destroy (void); + pciinfo_t pci_info; struct s3_chip @@ -156,13 +158,15 @@ {DEVICE_S3_INC_TRIO_64V_FAMILY11, S3_TRIO64V}, /* Virge */ {DEVICE_S3_INC_86C325_VIRGE, S3_VIRGE}, - {DEVICE_S3_INC_86C988_VIRGE_VX, S3_VIRGE}, - {DEVICE_S3_INC_VIRGE_DX_OR_GX, S3_VIRGE}, - {DEVICE_S3_INC_VIRGE_GX2, S3_VIRGE}, - {DEVICE_S3_INC_VIRGE_M3, S3_VIRGE}, - {DEVICE_S3_INC_VIRGE_MX, S3_VIRGE}, - {DEVICE_S3_INC_VIRGE_MX2, S3_VIRGE}, - {DEVICE_S3_INC_VIRGE_MX_MV, S3_VIRGE}, + {DEVICE_S3_INC_86C988_VIRGE_VX, S3_VIRGE_VX}, + {DEVICE_S3_INC_VIRGE_DX_OR_GX, S3_VIRGE_DXGX}, + {DEVICE_S3_INC_VIRGE_GX2, S3_VIRGE_GX2}, + {DEVICE_S3_INC_VIRGE_M3, S3_VIRGE_MX}, + {DEVICE_S3_INC_VIRGE_MX, S3_VIRGE_MX}, + {DEVICE_S3_INC_VIRGE_MX2, S3_VIRGE_MX}, + {DEVICE_S3_INC_VIRGE_MX_MV, S3_VIRGE_MX}, + {DEVICE_S3_INC_TRIO_64_3D, S3_TRIO3D}, + {DEVICE_S3_INC_86C368_TRIO_3D_2X, S3_TRIO3D2X}, /* Savage3D */ {DEVICE_S3_INC_86C794_SAVAGE_3D, S3_SAVAGE3D}, {DEVICE_S3_INC_86C390_SAVAGE_3D_MV, S3_SAVAGE3D}, @@ -226,7 +230,7 @@ OUTREG (COLOR_ADJUSTMENT_REG, 0x80008000 | hsy << 24 | hsx << 16 | ((info->eq.contrast + 1000) * 31 / 2000) << 8 | - ((info->chip.arch == S3_VIRGE) ? + ((S3_VIRGE_SERIES (info->chip.arch)) ? (info->eq.brightness * 127 / 1000) & 0xff : (info->eq.brightness + 1000) * 255 / 2000)); } @@ -244,6 +248,7 @@ static void S3SetColorKeyOld (void) { int red, green, blue; + int key_control; /* Here, we reset the colorkey and all the controls */ @@ -259,38 +264,57 @@ } else { + if (info->chip.arch < S3_VIRGE_MX) + key_control = 0x10000000; + switch (info->depth) { // FIXME: isnt fixed yet case 8: - OUTREG (COL_CHROMA_KEY_CONTROL_REG, 0x37000000 | (info->vidixcolorkey & 0xFF)); - OUTREG (CHROMA_KEY_UPPER_BOUND_REG, 0x00000000 | (info->vidixcolorkey & 0xFF)); + if (info->chip.arch >= S3_SAVAGE3D) + { + key_control = 0x37000000; + OUTREG (CHROMA_KEY_UPPER_BOUND_REG, info->vidixcolorkey & 0xFF); + } + OUTREG (COL_CHROMA_KEY_CONTROL_REG, key_control | (info->vidixcolorkey & 0xFF)); break; case 15: /* 15 bpp 555 */ red &= 0x1f; green &= 0x1f; blue &= 0x1f; - OUTREG (COL_CHROMA_KEY_CONTROL_REG, 0x05000000 | (red << 19) | (green << 11) | (blue << 3)); - OUTREG (CHROMA_KEY_UPPER_BOUND_REG, 0x00000000 | (red << 19) | (green << 11) | (blue << 3)); + if (info->chip.arch >= S3_SAVAGE3D) + { + key_control = 0x05000000; + OUTREG (CHROMA_KEY_UPPER_BOUND_REG, (red << 19) | (green << 11) | (blue << 3)); + } + OUTREG (COL_CHROMA_KEY_CONTROL_REG, key_control | (red << 19) | (green << 11) | (blue << 3)); break; case 16: /* 16 bpp 565 */ red &= 0x1f; green &= 0x3f; blue &= 0x1f; - OUTREG (COL_CHROMA_KEY_CONTROL_REG, 0x16000000 | (red << 19) | (green << 10) | (blue << 3)); - OUTREG (CHROMA_KEY_UPPER_BOUND_REG, 0x00020002 | (red << 19) | (green << 10) | (blue << 3)); + if (info->chip.arch >= S3_SAVAGE3D) + { + key_control = 0x16000000; + OUTREG (CHROMA_KEY_UPPER_BOUND_REG, 0x00020002 | (red << 19) | (green << 10) | (blue << 3)); + } + OUTREG (COL_CHROMA_KEY_CONTROL_REG, key_control | (red << 19) | (green << 10) | (blue << 3)); break; case 24: /* 24 bpp 888 */ - OUTREG (COL_CHROMA_KEY_CONTROL_REG, 0x17000000 | (red << 16) | (green << 8) | (blue)); - OUTREG (CHROMA_KEY_UPPER_BOUND_REG, 0x00000000 | (red << 16) | (green << 8) | (blue)); + if (info->chip.arch >= S3_SAVAGE3D) + { + key_control = 0x17000000; + OUTREG (CHROMA_KEY_UPPER_BOUND_REG, (red << 16) | (green << 8) | (blue)); + } + OUTREG (COL_CHROMA_KEY_CONTROL_REG, key_control | (red << 16) | (green << 8) | (blue)); break; } /* We use destination colorkey */ - OUTREG (BLEND_CONTROL_REG, 0x05000000); + OUTREG (BLEND_CONTROL_REG, S3_VIRGE_NEW_SERIES (info->chip.arch) ? 0x20 : 0x05000000); } } @@ -333,7 +357,7 @@ OUTREG (SSTREAM_WINDOW_SIZE_REG, OS_WH (info->drw_w, info->drw_h)); /* Set surface format and adjust scaling */ - if (info->chip.arch <= S3_VIRGE) + if (info->chip.arch < S3_SAVAGE3D) { ssControl = (((info->src_w - 1) << 1) - (info->drw_w - 1)) & 0xfff; ssControl |= GetBlendForFourCC (info->format) << 24; @@ -373,18 +397,21 @@ } if (info->chip.arch == S3_TRIO64V) - OUTREG (STREAMS_FIFO_REG, (6 << 10) | (14 << 5) | 16); - else if (S3_SAVAGE_SERIES (info->chip.arch)) + OUTREG (STREAMS_FIFO_REG, (6 << 10) | (14 << 5) | 0x10); + else if (info->chip.arch < S3_VIRGE_MX) + OUTREG (FIFO_CONTROL_REG, (4 << 12) | (8 << 6) | 0x10); + else if (info->chip.arch < S3_SAVAGE3D) + VGAOUT16 (vgaCRIndex, 0x1087); + else { - // FIXME: this should actually be enabled - info->pitch = (info->pitch + 7) / 8; VGAOUT8 (vgaCRIndex, 0x92); cr92 = VGAIN8 (vgaCRReg); VGAOUT8 (vgaCRReg, (cr92 & 0x40) | (info->pitch >> 8) | 0x80); VGAOUT8 (vgaCRIndex, 0x93); VGAOUT8 (vgaCRReg, info->pitch); - OUTREG (STREAMS_FIFO_REG, 2 | 25 << 5 | 32 << 11); + OUTREG (STREAMS_FIFO_REG, (32 << 11) | (25 << 5) | 2); } + } static void S3DisplayVideoNew (void) @@ -552,7 +579,9 @@ unsigned char jStreamsControl; if (info->chip.arch == S3_TRIO64V) - OUTREG (STREAMS_FIFO_REG, (20 << 10)); + OUTREG (STREAMS_FIFO_REG, 20 << 10); + else if (info->chip.arch < S3_VIRGE_MX) + OUTREG (FIFO_CONTROL_REG, 12 << 12); VGAOUT8 (vgaCRIndex, EXT_MISC_CTRL2); if (S3_SAVAGE_MOBILE_SERIES (info->chip.arch) || @@ -633,9 +662,14 @@ { unsigned char cr36; int mtrr, videoRam; - static unsigned char RamTrioVirge[] = { 4, 0, 3, 8, 2, 6, 1, 0 }; + static unsigned char RamTrio64V[] = { 4, 0, 3, 8, 2, 6, 1, 0 }; + static unsigned char RamVirge[] = { 4, 0, 0, 0, 2, 0, 1, 0 }; + static unsigned char RamVirgeVX[] = { 2, 4, 6, 8 }; + static unsigned char RamVirgeGX2[] = { 0, 4, 0, 2 }; + static unsigned char RamTrio3D[] = { 4, 0, 4, 0, 2, 0, 0, 0 }; + static unsigned char RamTrio3D2X[] = { 8, 4, 4, 0, 0, 0, 2, 0 }; static unsigned char RamSavage3D[] = { 8, 4, 4, 2 }; - static unsigned char RamSavage4[] = { 2, 4, 8, 12, 16, 32, 64, 32 }; + static unsigned char RamSavage4[] = { 2, 4, 8, 12, 16, 32, 64, 32 }; static unsigned char RamSavageMX[] = { 2, 8, 4, 16, 8, 16, 4, 16 }; static unsigned char RamSavageNB[] = { 0, 2, 4, 8, 16, 32, 16, 2 }; @@ -654,25 +688,23 @@ OUTPORT8 (vgaCRIndex, 0x39); OUTPORT8 (vgaCRReg, 0xa0); - if (info->chip.arch <= S3_VIRGE) + if (info->chip.arch < S3_SAVAGE3D) { - /* TODO: Improve detecting code */ - - /* Enable LFB */ - OUTPORT8 (vgaCRIndex, LIN_ADDR_CTRL); - OUTPORT8 (vgaCRReg, INPORT8 (vgaCRReg) | ENABLE_LFB); - /* Enable NewMMIO */ + /* Enable NewMMIO first */ OUTPORT8 (vgaCRIndex, EXT_MEM_CTRL1); OUTPORT8 (vgaCRReg, INPORT8 (vgaCRReg) | ENABLE_NEWMMIO); - } - if (info->chip.arch < S3_SAVAGE3D) info->control_base = map_phys_mem (pci_info.base0 + S3_NEWMMIO_REGBASE, S3_NEWMMIO_REGSIZE); + } else if (info->chip.arch == S3_SAVAGE3D) info->control_base = map_phys_mem (pci_info.base0 + S3_NEWMMIO_REGBASE, S3_NEWMMIO_REGSIZE_SAVAGE); else info->control_base = map_phys_mem (pci_info.base0, S3_NEWMMIO_REGSIZE_SAVAGE); + /* Enable LFB */ + VGAOUT8 (vgaCRIndex, LIN_ADDR_CTRL); + VGAOUT8 (vgaCRReg, INPORT8 (vgaCRReg) | ENABLE_LFB); + /* Unlock CRTC[0-7] */ VGAOUT8 (vgaCRIndex, 0x11); VGAOUT8 (vgaCRReg, VGAIN8 (vgaCRReg) & 0x7f); @@ -685,10 +717,30 @@ switch (info->chip.arch) { case S3_TRIO64V: + videoRam = RamTrio64V[(cr36 & 0xE0) >> 5] * 1024; + break; + case S3_VIRGE: - videoRam = RamTrioVirge[(cr36 & 0xE0) >> 5] * 1024; + case S3_VIRGE_DXGX: + videoRam = RamVirge[(cr36 & 0xE0) >> 5] * 1024; break; + case S3_VIRGE_VX: + videoRam = RamVirgeVX[(cr36 & 0x60) >> 5] * 1024; + + case S3_VIRGE_GX2: + case S3_VIRGE_MX: + videoRam = RamVirgeGX2[(cr36 & 0xC0) >> 6] * 1024; + break; + + case S3_TRIO3D: + videoRam = RamTrio3D[(cr36 & 0xE0) >> 5] * 1024; + break; + + case S3_TRIO3D2X: + videoRam = RamTrio3D2X[(cr36 & 0xE0) >> 5] * 1024; + break; + case S3_SAVAGE3D: videoRam = RamSavage3D[(cr36 & 0xC0) >> 6] * 1024; break; @@ -722,6 +774,13 @@ break; } + if (!videoRam) + { + printf ("[s3_vid] Unsupported configuration, aborting\n"); +// s3_destroy (); + return -1; + } + printf ("[s3_vid] VideoRam = %d\n", videoRam); info->chip.fbsize = videoRam * 1024; @@ -744,10 +803,10 @@ void VIDIX_NAME(vixDestroy) (void) { unmap_phys_mem (info->video_base, info->chip.fbsize); - if (S3_SAVAGE_SERIES (info->chip.arch)) + if (info->chip.arch < S3_SAVAGE3D) + unmap_phys_mem (info->control_base, S3_NEWMMIO_REGSIZE); + else unmap_phys_mem (info->control_base, S3_NEWMMIO_REGSIZE_SAVAGE); - else - unmap_phys_mem (info->control_base, S3_NEWMMIO_REGSIZE); free (info); } @@ -767,7 +826,7 @@ // case IMGFMT_YV12: // case IMGFMT_I420: case IMGFMT_UYVY: - if (info->chip.arch <= S3_VIRGE) + if (info->chip.arch < S3_SAVAGE3D) return 0; case IMGFMT_YUY2: case IMGFMT_Y211: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-12-16 18:02:33
|
Revision: 343 http://vidix.svn.sourceforge.net/vidix/?rev=343&view=rev Author: nickols_k Date: 2009-12-16 18:02:22 +0000 (Wed, 16 Dec 2009) Log Message: ----------- cppcheck related fixes Modified Paths: -------------- trunk/vidix/vidix/vidixlib.c Modified: trunk/vidix/vidix/vidixlib.c =================================================================== --- trunk/vidix/vidix/vidixlib.c 2009-11-25 18:56:38 UTC (rev 342) +++ trunk/vidix/vidix/vidixlib.c 2009-12-16 18:02:22 UTC (rev 343) @@ -30,7 +30,7 @@ #define dlopen(h,s) LoadLibrary(h) #define dlclose(h) FreeLibrary(h) static char* dlerror(){ - char errormsg[10]; + static char errormsg[10]; sprintf(errormsg,"%i\n",GetLastError()); return errormsg; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-11-25 18:56:46
|
Revision: 342 http://vidix.svn.sourceforge.net/vidix/?rev=342&view=rev Author: nickols_k Date: 2009-11-25 18:56:38 +0000 (Wed, 25 Nov 2009) Log Message: ----------- restore DESTDIR support Modified Paths: -------------- trunk/vidix/libdha/Makefile trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/Makefile Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2009-11-25 18:46:52 UTC (rev 341) +++ trunk/vidix/libdha/Makefile 2009-11-25 18:56:38 UTC (rev 342) @@ -82,24 +82,24 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - -mkdir -p $(LIBDIR) + -mkdir -p $(DESTDIR)$(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_VERSION) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) + install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_VERSION) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(LIBDIR)/$(LIBNAME_STATIC) + cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(LIBDIR)/$(LIBNAME_SHARED)* + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2009-11-25 18:46:52 UTC (rev 341) +++ trunk/vidix/vidix/Makefile 2009-11-25 18:56:38 UTC (rev 342) @@ -67,33 +67,33 @@ $(MAKE) -C drivers depend install: - mkdir -p $(LIBDIR) + mkdir -p $(DESTDIR)$(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) + install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(LIBDIR) + cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR) endif - mkdir -p $(INCDIR) - install -m 644 fourcc.h $(INCDIR) - install -m 644 vidix.h $(INCDIR) - install -m 644 vidixlib.h $(INCDIR) + mkdir -p $(DESTDIR)$(INCDIR) + install -m 644 fourcc.h $(DESTDIR)$(INCDIR) + install -m 644 vidix.h $(DESTDIR)$(INCDIR) + install -m 644 vidixlib.h $(DESTDIR)$(INCDIR) $(MAKE) -C drivers install uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(LIBDIR)/$(LIBNAME_SHARED)* + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif - rm -f $(INCDIR)/fourcc.h $(INCDIR)/vidix.h $(INCDIR)/vidixlib.h + rm -f $(DESTDIR)$(INCDIR)/fourcc.h $(DESTDIR)$(INCDIR)/vidix.h $(DESTDIR)$(INCDIR)/vidixlib.h $(MAKE) -C drivers uninstall ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2009-11-25 18:46:52 UTC (rev 341) +++ trunk/vidix/vidix/drivers/Makefile 2009-11-25 18:56:38 UTC (rev 342) @@ -117,13 +117,13 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - mkdir -p $(DRV_LIBDIR) - install -m 755 -p *.so $(DRV_LIBDIR) + mkdir -p $(DESTDIR)$(DRV_LIBDIR) + install -m 755 -p *.so $(DESTDIR)$(DRV_LIBDIR) if test -d $(OLDLIBDIR) ; then rm -f $(OLDLIBDIR)/*.so ; rmdir -p --ignore-fail-on-non-empty $(OLDLIBDIR) ; fi uninstall: - rm -f $(DRV_LIBDIR)/*.so - rmdir -p --ignore-fail-on-non-empty $(DRV_LIBDIR) + rm -f $(DESTDIR)$(DRV_LIBDIR)/*.so + rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(DRV_LIBDIR) ifneq ($(wildcard .depend),) include .depend This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-11-25 18:47:03
|
Revision: 341 http://vidix.svn.sourceforge.net/vidix/?rev=341&view=rev Author: nickols_k Date: 2009-11-25 18:46:52 +0000 (Wed, 25 Nov 2009) Log Message: ----------- some fixes Modified Paths: -------------- trunk/vidix/configure trunk/vidix/libdha/Makefile trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/Makefile Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2009-11-25 18:36:20 UTC (rev 340) +++ trunk/vidix/configure 2009-11-25 18:46:52 UTC (rev 341) @@ -133,6 +133,7 @@ mktmps guess_target config.mak config.h +test_optimizations config.mak config.h test -n "$_ld_extra" && add_extralibs $_ld_extra test -n "$_exld_flags" && add_ldflags $_exld_flags @@ -216,6 +217,8 @@ CONFDIR = $_confdir LIBDIR = $_libdir DESTDIR = $DESTDIR +OPTFLAGS = $CFLAGS +LDFLAGS = $LDFLAGS AR = ar CC = $_cc AWK = $_awk @@ -250,8 +253,6 @@ #define DATADIR "$_datadir" #define CONFDIR "$_confdir" #define LIBDIR "$_libdir" - -#endif EOF # Last move: Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2009-11-25 18:36:20 UTC (rev 340) +++ trunk/vidix/libdha/Makefile 2009-11-25 18:46:52 UTC (rev 341) @@ -39,7 +39,7 @@ $(CC) -c $(CFLAGS) -o $@ $< $(LIBNAME_SHARED_VERSION): $(OBJS) - $(CC) -shared -Wl,-soname -Wl,$@ -o $@ $(OBJS) $(LIBS) + $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(OBJS) $(LIBS) ifneq ($(TARGET_OS),CYGWIN) ln -sf $@ $(LIBNAME_SHARED) ln -sf $@ $(LIBNAME_SHARED_MAJOR) @@ -49,7 +49,7 @@ $(AR) r $@ $(OBJS) $(LIBNAME_WIN32): $(OBJS) - $(CC) -shared -o $(LIBNAME_WIN32) $(OBJS) $(LIBS) + $(CC) $(LDFLAGS) -shared -o $(LIBNAME_WIN32) $(OBJS) $(LIBS) LIB_TARGETS= ifeq ($(VIDIX_BUILD_SHARED),yes) @@ -82,24 +82,24 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - -mkdir -p $(DESTDIR)$(LIBDIR) + -mkdir -p $(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_VERSION) - ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) + install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_VERSION) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) + cp -f $(LIBNAME_STATIC) $(LIBDIR)/$(LIBNAME_STATIC) endif uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* + rm -f $(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(LIBDIR)/$(LIBNAME_STATIC) endif ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2009-11-25 18:36:20 UTC (rev 340) +++ trunk/vidix/vidix/Makefile 2009-11-25 18:46:52 UTC (rev 341) @@ -39,7 +39,7 @@ $(LIBNAME_SHARED_VERSION): $(SRCS) $(CC) -c $(CFLAGS) -o $(OBJS_SHARED) $< - $(CC) -shared -Wl,-soname -Wl,$@ -o $@ $(OBJS_SHARED) -lc $(LIBDL) + $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,$@ -o $@ $(OBJS_SHARED) -lc $(LIBDL) ifneq ($(TARGET_OS),CYGWIN) ln -sf $@ $(LIBNAME_SHARED) ln -sf $@ $(LIBNAME_SHARED_MAJOR) @@ -67,33 +67,33 @@ $(MAKE) -C drivers depend install: - mkdir -p $(DESTDIR)$(LIBDIR) + mkdir -p $(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR) - ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) + install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR) + cp -f $(LIBNAME_STATIC) $(LIBDIR) endif - mkdir -p $(DESTDIR)$(INCDIR) - install -m 644 fourcc.h $(DESTDIR)$(INCDIR) - install -m 644 vidix.h $(DESTDIR)$(INCDIR) - install -m 644 vidixlib.h $(DESTDIR)$(INCDIR) + mkdir -p $(INCDIR) + install -m 644 fourcc.h $(INCDIR) + install -m 644 vidix.h $(INCDIR) + install -m 644 vidixlib.h $(INCDIR) $(MAKE) -C drivers install uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* + rm -f $(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(LIBDIR)/$(LIBNAME_STATIC) endif - rm -f $(DESTDIR)$(INCDIR)/fourcc.h $(DESTDIR)$(INCDIR)/vidix.h $(DESTDIR)$(INCDIR)/vidixlib.h + rm -f $(INCDIR)/fourcc.h $(INCDIR)/vidix.h $(INCDIR)/vidixlib.h $(MAKE) -C drivers uninstall ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2009-11-25 18:36:20 UTC (rev 340) +++ trunk/vidix/vidix/drivers/Makefile 2009-11-25 18:46:52 UTC (rev 341) @@ -60,52 +60,52 @@ # Dynamic librairies %.so: %.o - $(CC) -shared $^ $(VIDIX_LIBS) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $^ $(VIDIX_LIBS) -Wl,-soname,$@ -o $@ cyberblade_vid.so: cyberblade_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ genfb_vid.so: genfb_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ ivtvfb_vid.so: ivtv_vid.o mach64_vid.so: mach64_vid.o mga_crtc2_vid.so: mga_crtc2_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ mga_tv_vid.so: mga_tv_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ mga_vid.so: mga_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ nvidia_vid.so: nvidia_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ pm2_vid.so: pm2_vid.o pm3_vid.so: pm3_vid.o radeon_vid.so: radeon_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ radeonhd_vid.so: radeonhd_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ rage128_vid.so: rage128_vid.o s3_vid.so: s3_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ savage_vid.so: savage_vid.o - $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ sis_vid.so: sis_vid.o sis_bridge.o unichrome_vid.so: unichrome_vid.o - $(CC) -shared $< $(VIDIX_LIBS) -Wl,-soname,$@ -o $@ + $(CC) $(LDFLAGS) -shared $< $(VIDIX_LIBS) -Wl,-soname,$@ -o $@ clean: rm -f *.o *.so *~ @@ -117,13 +117,13 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - mkdir -p $(DESTDIR)$(DRV_LIBDIR) - install -m 755 -p *.so $(DESTDIR)$(DRV_LIBDIR) + mkdir -p $(DRV_LIBDIR) + install -m 755 -p *.so $(DRV_LIBDIR) if test -d $(OLDLIBDIR) ; then rm -f $(OLDLIBDIR)/*.so ; rmdir -p --ignore-fail-on-non-empty $(OLDLIBDIR) ; fi uninstall: - rm -f $(DESTDIR)$(DRV_LIBDIR)/*.so - rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(DRV_LIBDIR) + rm -f $(DRV_LIBDIR)/*.so + rmdir -p --ignore-fail-on-non-empty $(DRV_LIBDIR) ifneq ($(wildcard .depend),) include .depend This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-11-25 18:36:29
|
Revision: 340 http://vidix.svn.sourceforge.net/vidix/?rev=340&view=rev Author: nickols_k Date: 2009-11-25 18:36:20 +0000 (Wed, 25 Nov 2009) Log Message: ----------- use canonical configure system Modified Paths: -------------- trunk/vidix/configure Added Paths: ----------- trunk/vidix/config.guess trunk/vidix/config.sub trunk/vidix/functions Added: trunk/vidix/config.guess =================================================================== --- trunk/vidix/config.guess (rev 0) +++ trunk/vidix/config.guess 2009-11-25 18:36:20 UTC (rev 340) @@ -0,0 +1,1516 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, +# Inc. + +timestamp='2007-07-22' + +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + + +# Originally written by Per Bothner <pe...@bo...>. +# Please send patches to <con...@gn...>. Submit a context +# diff and a properly formatted ChangeLog entry. +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit build system type. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to <con...@gn...>." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + +trap 'exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. Note that the use of a +# compiler to aid in system detection is discouraged as it requires +# temporary files to be created and, as you can see below, it is a +# headache to deal with in a portable fashion. + +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +# Portable tmp directory creation inspired by the Autoconf team. + +set_cc_for_build=' +trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; +trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; +: ${TMPDIR=/tmp} ; + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; +dummy=$tmp/dummy ; +tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int x;" > $dummy.c ; + for c in cc gcc c89 c99 ; do + if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then + CC_FOR_BUILD="$c"; break ; + fi ; + done ; + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found ; + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac ; set_cc_for_build= ;' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (gh...@no... 1994-08-24) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # + # Note: NetBSD doesn't particularly care about the vendor + # portion of the name. We always set it to "unknown". + sysctl="sysctl -n hw.machine_arch" + UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ + /usr/sbin/$sysctl 2>/dev/null || echo unknown)` + case "${UNAME_MACHINE_ARCH}" in + armeb) machine=armeb-unknown ;; + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; + *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE_ARCH}" in + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ELF__ >/dev/null + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + # Debian GNU/NetBSD machines have a different userland, and + # thus, need a distinct triplet. However, they do not need + # kernel version information, so it can be replaced with a + # suitable tag, in the style of linux-gnu. + case "${UNAME_VERSION}" in + Debian*) + release='-gnu' + ;; + *) + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + ;; + esac + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + exit ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + exit ;; + *:SolidBSD:*:*) + echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + exit ;; + macppc:MirBSD:*:*) + echo powerpc-unknown-mirbsd${UNAME_RELEASE} + exit ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + exit ;; + alpha:OSF1:*:*) + case $UNAME_RELEASE in + *4.0) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + ;; + *5.*) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + ;; + esac + # According to Compaq, /usr/sbin/psrinfo has been available on + # OSF/1 and Tru64 systems produced since 1995. I hope that + # covers most systems running today. This code pipes the CPU + # types through head -n 1, so we only detect the type of CPU 0. + ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` + case "$ALPHA_CPU_TYPE" in + "EV4 (21064)") + UNAME_MACHINE="alpha" ;; + "EV4.5 (21064)") + UNAME_MACHINE="alpha" ;; + "LCA4 (21066/21068)") + UNAME_MACHINE="alpha" ;; + "EV5 (21164)") + UNAME_MACHINE="alphaev5" ;; + "EV5.6 (21164A)") + UNAME_MACHINE="alphaev56" ;; + "EV5.6 (21164PC)") + UNAME_MACHINE="alphapca56" ;; + "EV5.7 (21164PC)") + UNAME_MACHINE="alphapca57" ;; + "EV6 (21264)") + UNAME_MACHINE="alphaev6" ;; + "EV6.7 (21264A)") + UNAME_MACHINE="alphaev67" ;; + "EV6.8CB (21264C)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8AL (21264B)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8CX (21264D)") + UNAME_MACHINE="alphaev68" ;; + "EV6.9A (21264/EV69A)") + UNAME_MACHINE="alphaev69" ;; + "EV7 (21364)") + UNAME_MACHINE="alphaev7" ;; + "EV7.9 (21364A)") + UNAME_MACHINE="alphaev79" ;; + esac + # A Pn.n version is a patched version. + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos + exit ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit ;; + arm:riscos:*:*|arm:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit ;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # ak...@wp... (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit ;; + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) + case `/usr/bin/uname -p` in + sparc) echo sparc-icl-nx7; exit ;; + esac ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include <stdio.h> /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && + dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`$dummy $dummyarg` && + { echo "$SYSTEM_NAME"; exit; } + echo mips-mips-riscos${UNAME_RELEASE} + exit ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include <sys/systemcfg.h> + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + then + echo "$SYSTEM_NAME" + else + echo rs6000-ibm-aix3.2.5 + fi + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit ;; + *:AIX:*:[45]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 + esac ;; + esac + fi + if [ "${HP_ARCH}" = "" ]; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include <stdlib.h> + #include <unistd.h> + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + test -z "$HP_ARCH" && HP_ARCH=hppa + fi ;; + esac + if [ ${HP_ARCH} = "hppa2.0w" ] + then + eval $set_cc_for_build + + # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating + # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler + # generating 64-bit code. GNU and HP use different nomenclature: + # + # $ CC_FOR_BUILD=cc ./config.guess + # => hppa2.0w-hp-hpux11.23 + # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess + # => hppa64-hp-hpux11.23 + + if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | + grep __LP64__ >/dev/null + then + HP_ARCH="hppa2.0w" + else + HP_ARCH="hppa64" + fi + fi + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include <unistd.h> + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + echo unknown-hitachi-hiuxwe2 + exit ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:FreeBSD:*:*) + case ${UNAME_MACHINE} in + pc98) + echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + amd64) + echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + *) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + esac + exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit ;; + *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit ;; + i*:windows32*:*) + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 + exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit ;; + *:Interix*:[3456]*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + EM64T | authenticamd) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks + exit ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i586-pc-interix + exit ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit ;; + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + *:GNU:*:*) + # the GNU system + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu + exit ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit ;; + arm*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + cris:Linux:*:*) + echo cris-axis-linux-gnu + exit ;; + crisv32:Linux:*:*) + echo crisv32-axis-linux-gnu + exit ;; + frv:Linux:*:*) + echo frv-unknown-linux-gnu + exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + mips:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef mips + #undef mipsel + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=mipsel + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=mips + #else + CPU= + #endif + #endif +EOF + eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' + /^CPU/{ + s: ::g + p + }'`" + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + ;; + mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef mips64 + #undef mips64el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=mips64el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=mips64 + #else + CPU= + #endif + #endif +EOF + eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' + /^CPU/{ + s: ::g + p + }'`" + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } + ;; + or32:Linux:*:*) + echo or32-unknown-linux-gnu + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-gnu + exit ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-gnu + exit ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null + if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; + esac + exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-gnu + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux + exit ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + vax:Linux:*:*) + echo ${UNAME_MACHINE}-dec-linux-gnu + exit ;; + x86_64:Linux:*:*) + echo x86_64-unknown-linux-gnu + exit ;; + xtensa:Linux:*:*) + echo xtensa-unknown-linux-gnu + exit ;; + i*86:Linux:*:*) + # The BFD linker knows what the default object file format is, so + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + # Set LC_ALL=C to ensure ld outputs messages in English. + ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ + | sed -ne '/supported targets:/!d + s/[ ][ ]*/ /g + s/.*supported targets: *// + s/ .*// + p'` + case "$ld_supported_targets" in + elf32-i386) + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" + ;; + a.out-i386-linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit ;; + coff-i386) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit ;; + "") + # Either a pre-BFD a.out linker (linux-gnuoldld) or + # one that does not give us useful --help. + echo "${UNAME_MACHINE}-pc-linux-gnuoldld" + exit ;; + esac + # Determine whether the default compiler is a.out or elf + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include <features.h> + #ifdef __ELF__ + # ifdef __GLIBC__ + # if __GLIBC__ >= 2 + LIBC=gnu + # else + LIBC=gnulibc1 + # endif + # else + LIBC=gnulibc1 + # endif + #else + #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) + LIBC=gnu + #else + LIBC=gnuaout + #endif + #endif + #ifdef __dietlibc__ + LIBC=dietlibc + #endif +EOF + eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' + /^LIBC/{ + s: ::g + p + }'`" + test x"${LIBC}" != x && { + echo "${UNAME_MACHINE}-pc-linux-${LIBC}" + exit + } + test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } + ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 + exit ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop + exit ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos + exit ;; + i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable + exit ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit ;; + i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit ;; + i*86:*:5:[678]*) + # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + exit ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` + echo ${UNAME_MACHINE}-pc-isc$UNAME_REL + elif /bin/uname -X 2>/dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` + (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i386. + echo i386-pc-msdosdjgpp + exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv + exit ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix + exit ;; + M68*:*:R3V[5678]*:*) + test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says <Ric...@cc...> + echo i586-unisys-sysv4 + exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes <he...@op...>. + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit ;; + *:*:*:FTX*) + # From se...@sw.... + echo i860-stratus-sysv4 + exit ;; + i*86:VOS:*:*) + # From Pau...@st.... + echo ${UNAME_MACHINE}-stratus-vos + exit ;; + *:VOS:*:*) + # From Pau...@st.... + echo hppa1.1-stratus-vos + exit ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux${UNAME_RELEASE} + exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + case $UNAME_PROCESSOR in + unknown) UNAME_PROCESSOR=powerpc ;; + esac + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} + exit ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = "x86"; then + UNAME_PROCESSOR=i386 + UNAME_MACHINE=pc + fi + echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} + exit ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit ;; + NSE-?:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; + NSR-?:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} + exit ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; + V*) echo vax-dec-vms ; exit ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit ;; + i*86:skyos:*:*) + echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' + exit ;; + i*86:rdos:*:*) + echo ${UNAME_MACHINE}-pc-rdos + exit ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +eval $set_cc_for_build +cat >$dummy.c <<EOF +#ifdef _SEQUENT_ +# include <sys/types.h> +# include <sys/utsname.h> +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include <sys/param.h> + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix\n"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include <sys/param.h> +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + c34*) + echo c34-convex-bsd + exit ;; + c38*) + echo c38-convex-bsd + exit ;; + c4*) + echo c4-convex-bsd + exit ;; + esac +fi + +cat >&2 <<EOF +$0: unable to guess system type + +This script, last modified $timestamp, has failed to recognize +the operating system you are using. It is advised that you +download the most up to date version of the config scripts from + + http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess +and + http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub + +If the version you run ($0) is already up to date, please +send the following data and any information you think might be +pertinent to <con...@gn...> in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: Property changes on: trunk/vidix/config.guess ___________________________________________________________________ Added: svn:executable + * Added: trunk/vidix/config.sub =================================================================== --- trunk/vidix/config.sub (rev 0) +++ trunk/vidix/config.sub 2009-11-25 18:36:20 UTC (rev 340) @@ -0,0 +1,1626 @@ +#! /bin/sh +# Configuration validation subroutine script. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, +# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, +# Inc. + +timestamp='2007-06-28' + +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA +# 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + + +# Please send patches to <con...@gn...>. Submit a context +# diff and a properly formatted ChangeLog entry. +# +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# or in some cases, the newer four-part form: +# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] CPU-MFR-OPSYS + $0 [OPTION] ALIAS + +Canonicalize a configuration name. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to <con...@gn...>." + +version="\ +GNU config.sub ($timestamp) + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" + exit 1 ;; + + *local*) + # First pass through any local machine types. + echo $1 + exit ;; + + * ) + break ;; + esac +done + +case $# in + 0) echo "$me: missing argument$help" >&2 + exit 1;; + 1) ;; + *) echo "$me: too many arguments$help" >&2 + exit 1;; +esac + +# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). +# Here we must recognize all the valid KERNEL-OS combinations. +maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` +case $maybe_os in + nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ + uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + *) + basic_machine=`echo $1 | sed 's/-[^-]*$//'` + if [ $basic_machine != $1 ] + then os=`echo $1 | sed 's/.*-/-/'` + else os=; fi + ;; +esac + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ + -apple | -axis | -knuth | -cray) + os= + basic_machine=$1 + ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; + -chorusos*) + os=-chorusos + basic_machine=$1 + ;; + -chorusrdb) + os=-chorusrdb + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco6) + os=-sco5v6 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco5) + os=-sco3.2v5 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; + -lynx*) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; + -psos*) + os=-psos + ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + 1750a | 580 \ + | a29k \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ + | bfin \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ + | fido | fr30 | frv \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | i370 | i860 | i960 | ia64 \ + | ip2k | iq2000 \ + | m32c | m32r | m32rle | m68000 | m68k | m88k \ + | maxq | mb | microblaze | mcore | mep \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64vr | mips64vrel \ + | mips64orion | mips64orionel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ + | mt \ + | msp430 \ + | nios | nios2 \ + | ns16k | ns32k \ + | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + | pyramid \ + | score \ + | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ + | spu | strongarm \ + | tahoe | thumb | tic4x | tic80 | tron \ + | v850 | v850e \ + | we32k \ + | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ + | z8k) + basic_machine=$basic_machine-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12) + # Motorola 68HC11/12. + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; + ms1) + basic_machine=mt-unknown + ;; + + # We use `pc' rather than `unknown' + # because (1) that's what they normally are, and + # (2) the word "unknown" tends to confuse beginning users. + i*86 | x86_64) + basic_machine=$basic_machine-pc + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + 580-* \ + | a29k-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | avr-* | avr32-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ + | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | elxsi-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | i*86-* | i860-* | i960-* | ia64-* \ + | ip2k-* | iq2000-* \ + | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ + | mips64vr-* | mips64vrel-* \ + | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ + | mips64vr5900-* | mips64vr5900el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ + | mt-* \ + | msp430-* \ + | nios-* | nios2-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + | pyramid-* \ + | romp-* | rs6000-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ + | sparclite-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ + | tahoe-* | thumb-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tron-* \ + | v850-* | v850e-* | vax-* \ + | we32k-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ + | xstormy16-* | xtensa-* \ + | ymp-* \ + | z8k-*) + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + abacus) + basic_machine=abacus-unknown + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amd64) + basic_machine=x86_64-pc + ;; + amd64-*) + basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-unknown + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=-amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_... [truncated message content] |
From: <nic...@us...> - 2009-09-23 08:27:18
|
Revision: 339 http://vidix.svn.sourceforge.net/vidix/?rev=339&view=rev Author: nickols_k Date: 2009-09-23 08:27:12 +0000 (Wed, 23 Sep 2009) Log Message: ----------- According Portable Make Programming manual add DESTDIR environment variable support Modified Paths: -------------- trunk/vidix/configure trunk/vidix/libdha/Makefile trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/Makefile Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2009-09-03 17:39:14 UTC (rev 338) +++ trunk/vidix/configure 2009-09-23 08:27:12 UTC (rev 339) @@ -122,6 +122,9 @@ --cc=COMPILER use this C compiler to build VIDIX [gcc] --target=PLATFORM target platform (i386-linux, arm-linux, etc) +Environment variables: + DESTDIR specifies base of installation + EOF exit 0 fi @@ -474,6 +477,7 @@ DATADIR = $_datadir LIBDIR = $_libdir CONFDIR = $_confdir +DESTDIR = $DESTDIR OPTFLAGS = $CFLAGS AWK = $_awk CC=$_cc Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2009-09-03 17:39:14 UTC (rev 338) +++ trunk/vidix/libdha/Makefile 2009-09-23 08:27:12 UTC (rev 339) @@ -82,24 +82,24 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - -mkdir -p $(LIBDIR) + -mkdir -p $(DESTDIR)$(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_VERSION) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) + install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_VERSION) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(LIBDIR)/$(LIBNAME_STATIC) + cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(LIBDIR)/$(LIBNAME_SHARED)* + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2009-09-03 17:39:14 UTC (rev 338) +++ trunk/vidix/vidix/Makefile 2009-09-23 08:27:12 UTC (rev 339) @@ -67,33 +67,33 @@ $(MAKE) -C drivers depend install: - mkdir -p $(LIBDIR) + mkdir -p $(DESTDIR)$(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) + install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(LIBDIR) + cp -f $(LIBNAME_STATIC) $(DESTDIR)$(LIBDIR) endif - mkdir -p $(INCDIR) - install -m 644 fourcc.h $(INCDIR) - install -m 644 vidix.h $(INCDIR) - install -m 644 vidixlib.h $(INCDIR) + mkdir -p $(DESTDIR)$(INCDIR) + install -m 644 fourcc.h $(DESTDIR)$(INCDIR) + install -m 644 vidix.h $(DESTDIR)$(INCDIR) + install -m 644 vidixlib.h $(DESTDIR)$(INCDIR) $(MAKE) -C drivers install uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(LIBDIR)/$(LIBNAME_SHARED)* + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(LIBDIR)/$(LIBNAME_STATIC) + rm -f $(DESTDIR)$(LIBDIR)/$(LIBNAME_STATIC) endif - rm -f $(INCDIR)/fourcc.h $(INCDIR)/vidix.h $(INCDIR)/vidixlib.h + rm -f $(DESTDIR)$(INCDIR)/fourcc.h $(DESTDIR)$(INCDIR)/vidix.h $(DESTDIR)$(INCDIR)/vidixlib.h $(MAKE) -C drivers uninstall ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2009-09-03 17:39:14 UTC (rev 338) +++ trunk/vidix/vidix/drivers/Makefile 2009-09-23 08:27:12 UTC (rev 339) @@ -117,13 +117,13 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - mkdir -p $(DRV_LIBDIR) - install -m 755 -p *.so $(DRV_LIBDIR) + mkdir -p $(DESTDIR)$(DRV_LIBDIR) + install -m 755 -p *.so $(DESTDIR)$(DRV_LIBDIR) if test -d $(OLDLIBDIR) ; then rm -f $(OLDLIBDIR)/*.so ; rmdir -p --ignore-fail-on-non-empty $(OLDLIBDIR) ; fi uninstall: - rm -f $(DRV_LIBDIR)/*.so - rmdir -p --ignore-fail-on-non-empty $(DRV_LIBDIR) + rm -f $(DESTDIR)$(DRV_LIBDIR)/*.so + rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(DRV_LIBDIR) ifneq ($(wildcard .depend),) include .depend This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2009-09-03 17:39:21
|
Revision: 338 http://vidix.svn.sourceforge.net/vidix/?rev=338&view=rev Author: nickols_k Date: 2009-09-03 17:39:14 +0000 (Thu, 03 Sep 2009) Log Message: ----------- It was initially bad idea to use human names Modified Paths: -------------- trunk/vidix/libdha/AsmMacros.h trunk/vidix/libdha/README trunk/vidix/libdha/kernelhelper/dhahelper.c trunk/vidix/libdha/kernelhelper/dhahelper.h trunk/vidix/libdha/libdha.c trunk/vidix/libdha/libdha.h trunk/vidix/libdha/mtrr.c trunk/vidix/libdha/pci_db2c.awk trunk/vidix/libdha/sysdep/AsmMacros_alpha.h trunk/vidix/libdha/sysdep/AsmMacros_arm32.h trunk/vidix/libdha/sysdep/AsmMacros_ia64.h trunk/vidix/libdha/sysdep/AsmMacros_powerpc.h trunk/vidix/libdha/sysdep/AsmMacros_sparc.h trunk/vidix/libdha/sysdep/AsmMacros_x86.h trunk/vidix/libdha/sysdep/libdha_os2.c trunk/vidix/libdha/sysdep/libdha_win32.c trunk/vidix/libdha/sysdep/pci_386bsd.c trunk/vidix/libdha/sysdep/pci_alpha.c trunk/vidix/libdha/sysdep/pci_arm32.c trunk/vidix/libdha/sysdep/pci_bsdi.c trunk/vidix/libdha/sysdep/pci_freebsd.c trunk/vidix/libdha/sysdep/pci_ia64.c trunk/vidix/libdha/sysdep/pci_isc.c trunk/vidix/libdha/sysdep/pci_linux.c trunk/vidix/libdha/sysdep/pci_lynx.c trunk/vidix/libdha/sysdep/pci_mach386.c trunk/vidix/libdha/sysdep/pci_netbsd.c trunk/vidix/libdha/sysdep/pci_openbsd.c trunk/vidix/libdha/sysdep/pci_os2.c trunk/vidix/libdha/sysdep/pci_powerpc.c trunk/vidix/libdha/sysdep/pci_sco.c trunk/vidix/libdha/sysdep/pci_sparc.c trunk/vidix/libdha/sysdep/pci_svr4.c trunk/vidix/libdha/sysdep/pci_win32.c trunk/vidix/libdha/sysdep/pci_x86.c trunk/vidix/vidix/drivers/mach64_vid.c trunk/vidix/vidix/drivers/mga_vid.c trunk/vidix/vidix/drivers/radeon.h trunk/vidix/vidix/drivers/radeon_vid.c trunk/vidix/vidix/drivers/radeonhd.h trunk/vidix/vidix/drivers/radeonhd_vid.c trunk/vidix/vidix/fourcc.h trunk/vidix/vidix/vidix.h trunk/vidix/vidix/vidix.txt trunk/vidix/vidix/vidixlib.c trunk/vidix/vidix/vidixlib.h Modified: trunk/vidix/libdha/AsmMacros.h =================================================================== --- trunk/vidix/libdha/AsmMacros.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/AsmMacros.h 2009-09-03 17:39:14 UTC (rev 338) @@ -60,7 +60,7 @@ /* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ */ /* - * Modified for readability by Nick Kurshev + * Modified for readability by Nickols_K */ #if defined(__GNUC__) Modified: trunk/vidix/libdha/README =================================================================== --- trunk/vidix/libdha/README 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/README 2009-09-03 17:39:14 UTC (rev 338) @@ -25,4 +25,4 @@ The library is based on XFree86 and gfxdump (a utility from the GATOS project) sources. -Original import and design by Nick Kurshev and Alex Beregszaszi. +Original import and design by Nickols_K and Alex Beregszaszi. Modified: trunk/vidix/libdha/kernelhelper/dhahelper.c =================================================================== --- trunk/vidix/libdha/kernelhelper/dhahelper.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/kernelhelper/dhahelper.c 2009-09-03 17:39:14 UTC (rev 338) @@ -2,7 +2,7 @@ Direct Hardware Access kernel helper (C) 2002 Alex Beregszaszi <al...@fs...> - (C) 2002-2003 Nick Kurshev <nic...@ma...> + (C) 2002-2003 Nickols_K <nic...@ma...> (C) 2002-2004 M\xE5ns Rullg\xE5rd <mr...@us...> (C) 2007 Benjamin Zores <be...@ge...> @@ -122,7 +122,7 @@ #define irqreturn(n) return #endif -MODULE_AUTHOR("Alex Beregszaszi <al...@fs...>, Nick Kurshev <nic...@ma...>, M\xE5ns Rullg\xE5rd <mr...@us...>, Benjamin Zores <be...@ge...>"); +MODULE_AUTHOR("Alex Beregszaszi <al...@fs...>, Nickols_K <nic...@ma...>, M\xE5ns Rullg\xE5rd <mr...@us...>, Benjamin Zores <be...@ge...>"); MODULE_DESCRIPTION("Provides userspace access to hardware"); #ifdef MODULE_LICENSE MODULE_LICENSE("GPL"); Modified: trunk/vidix/libdha/kernelhelper/dhahelper.h =================================================================== --- trunk/vidix/libdha/kernelhelper/dhahelper.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/kernelhelper/dhahelper.h 2009-09-03 17:39:14 UTC (rev 338) @@ -2,7 +2,7 @@ Direct Hardware Access kernel helper (C) 2002 Alex Beregszaszi <al...@fs...> - (C) 2002-2003 Nick Kurshev <nic...@ma...> + (C) 2002-2003 Nickols_K <nic...@ma...> */ #ifndef DHAHELPER_H Modified: trunk/vidix/libdha/libdha.c =================================================================== --- trunk/vidix/libdha/libdha.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/libdha.c 2009-09-03 17:39:14 UTC (rev 338) @@ -6,7 +6,7 @@ 1999 - \xD8yvind Aabling. Modified for GATOS/win/gfxdump. - 2002 - library implementation by Nick Kurshev + 2002 - library implementation by Nickols_K - dhahelper and some changes by Alex Beregszaszi supported O/S's: SVR4, UnixWare, SCO, Solaris, Modified: trunk/vidix/libdha/libdha.h =================================================================== --- trunk/vidix/libdha/libdha.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/libdha.h 2009-09-03 17:39:14 UTC (rev 338) @@ -5,7 +5,7 @@ XFree86 3.3.3 implementation 1999 - \xD8yvind Aabling. Modified for GATOS/win/gfxdump. - 2002 - library implementation by Nick Kurshev + 2002 - library implementation by Nickols_K supported O/S's: SVR4, UnixWare, SCO, Solaris, FreeBSD, NetBSD, 386BSD, BSDI BSD/386, Modified: trunk/vidix/libdha/mtrr.c =================================================================== --- trunk/vidix/libdha/mtrr.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/mtrr.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* mtrr.c - Stuff for optimizing memory access Copyrights: - 2002 - Linux version by Nick Kurshev + 2002 - Linux version by Nickols_K Licence: GPL */ Modified: trunk/vidix/libdha/pci_db2c.awk =================================================================== --- trunk/vidix/libdha/pci_db2c.awk 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/pci_db2c.awk 2009-09-03 17:39:14 UTC (rev 338) @@ -1,6 +1,6 @@ # This file converts given pci.db to "C" source and header files # For latest version of pci ids see: http://pciids.sf.net -# Copyright 2002 Nick Kurshev +# Copyright 2002 Nickols_K # # Usage: awk -f pci_db2c.awk pci.db # Modified: trunk/vidix/libdha/sysdep/AsmMacros_alpha.h =================================================================== --- trunk/vidix/libdha/sysdep/AsmMacros_alpha.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/AsmMacros_alpha.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifndef __ASM_MACROS_ALPHA_H Modified: trunk/vidix/libdha/sysdep/AsmMacros_arm32.h =================================================================== --- trunk/vidix/libdha/sysdep/AsmMacros_arm32.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/AsmMacros_arm32.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifndef __ASM_MACROS_ARM32_H Modified: trunk/vidix/libdha/sysdep/AsmMacros_ia64.h =================================================================== --- trunk/vidix/libdha/sysdep/AsmMacros_ia64.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/AsmMacros_ia64.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifndef __ASM_MACROS_IA64_H Modified: trunk/vidix/libdha/sysdep/AsmMacros_powerpc.h =================================================================== --- trunk/vidix/libdha/sysdep/AsmMacros_powerpc.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/AsmMacros_powerpc.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifndef __ASM_MACROS_POWERPC_H Modified: trunk/vidix/libdha/sysdep/AsmMacros_sparc.h =================================================================== --- trunk/vidix/libdha/sysdep/AsmMacros_sparc.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/AsmMacros_sparc.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifndef __ASM_MACROS_SPARC_H Modified: trunk/vidix/libdha/sysdep/AsmMacros_x86.h =================================================================== --- trunk/vidix/libdha/sysdep/AsmMacros_x86.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/AsmMacros_x86.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/drivers/chips/util/AsmMacros.h,v 1.1 2001/11/16 21:13:34 tsi Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifndef __ASM_MACROS_X86_H Modified: trunk/vidix/libdha/sysdep/libdha_os2.c =================================================================== --- trunk/vidix/libdha/sysdep/libdha_os2.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/libdha_os2.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,5 +1,5 @@ /* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/os2/os2_video.c,v 3.14 2000/10/28 01:42:28 mvojkovi Exp $ */ -/* Modified for libdha by Nick Kurshev. */ +/* Modified for libdha by Nickols_K. */ /* * (c) Copyright 1994,1999 by Holger Veit * <Hol...@gm...> Modified: trunk/vidix/libdha/sysdep/libdha_win32.c =================================================================== --- trunk/vidix/libdha/sysdep/libdha_win32.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/libdha_win32.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* MAPDEV.h - include file for VxD MAPDEV Copyright (c) 1996 Vireo Software, Inc. - Modified for libdha by Nick Kurshev. + Modified for libdha by Nickols_K */ #include <windows.h> Modified: trunk/vidix/libdha/sysdep/pci_386bsd.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_386bsd.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_386bsd.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <errno.h> #include <sys/file.h> Modified: trunk/vidix/libdha/sysdep/pci_alpha.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_alpha.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_alpha.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ static int pci_config_type( void ) { return 1; } Modified: trunk/vidix/libdha/sysdep/pci_arm32.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_arm32.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_arm32.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ static int pci_config_type( void ) Modified: trunk/vidix/libdha/sysdep/pci_bsdi.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_bsdi.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_bsdi.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <errno.h> #include <sys/file.h> Modified: trunk/vidix/libdha/sysdep/pci_freebsd.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_freebsd.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_freebsd.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <errno.h> #include <sys/file.h> Modified: trunk/vidix/libdha/sysdep/pci_ia64.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_ia64.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_ia64.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ static int pci_config_type( void ) Modified: trunk/vidix/libdha/sysdep/pci_isc.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_isc.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_isc.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <sys/param.h> #include <sys/immu.h> Modified: trunk/vidix/libdha/sysdep/pci_linux.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_linux.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_linux.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <errno.h> #ifdef __i386__ Modified: trunk/vidix/libdha/sysdep/pci_lynx.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_lynx.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_lynx.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #if defined(Lynx_22) Modified: trunk/vidix/libdha/sysdep/pci_mach386.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_mach386.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_mach386.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <errno.h> Modified: trunk/vidix/libdha/sysdep/pci_netbsd.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_netbsd.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_netbsd.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <errno.h> #include <sys/param.h> Modified: trunk/vidix/libdha/sysdep/pci_openbsd.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_openbsd.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_openbsd.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #ifdef __i386__ Modified: trunk/vidix/libdha/sysdep/pci_os2.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_os2.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_os2.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #define INCL_DOSFILEMGR #include <os2.h> Modified: trunk/vidix/libdha/sysdep/pci_powerpc.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_powerpc.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_powerpc.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ static int pci_config_type( void ) { return 1; } Modified: trunk/vidix/libdha/sysdep/pci_sco.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_sco.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_sco.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <sys/console.h> #include <sys/param.h> Modified: trunk/vidix/libdha/sysdep/pci_sparc.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_sparc.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_sparc.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ static int pci_config_type( void ) Modified: trunk/vidix/libdha/sysdep/pci_svr4.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_svr4.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_svr4.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ #include <sys/types.h> #include <sys/proc.h> Modified: trunk/vidix/libdha/sysdep/pci_win32.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_win32.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_win32.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ //#include <windows.h> Modified: trunk/vidix/libdha/sysdep/pci_x86.c =================================================================== --- trunk/vidix/libdha/sysdep/pci_x86.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/libdha/sysdep/pci_x86.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ - Modified for readability by Nick Kurshev + Modified for readability by Nickols_K */ static int pci_config_type( void ) Modified: trunk/vidix/vidix/drivers/mach64_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mach64_vid.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/drivers/mach64_vid.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,6 +1,6 @@ /* mach64_vid - VIDIX based video driver for Mach64 and 3DRage chips - Copyrights 2002 Nick Kurshev. This file is based on sources from + Copyrights 2002 Nickols_K. This file is based on sources from GATOS (gatos.sf.net) and X11 (www.xfree86.org) Licence: GPL WARNING: THIS DRIVER IS IN BETTA STAGE @@ -266,7 +266,7 @@ static vidix_capability_t mach64_cap = { "BES driver for Mach64/3DRage cards", - "Nick Kurshev and Michael Niedermayer", + "Nickols_K and Michael Niedermayer", TYPE_OUTPUT, { 0, 0, 0, 0 }, 2048, Modified: trunk/vidix/vidix/drivers/mga_vid.c =================================================================== --- trunk/vidix/vidix/drivers/mga_vid.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/drivers/mga_vid.c 2009-09-03 17:39:14 UTC (rev 338) @@ -6,7 +6,7 @@ * YUY2 support (see config.format) added by A'rpi/ESP-team * double buffering added by A'rpi/ESP-team * - * Brightness/contrast support by Nick Kurshev/Dariush Pietrzak (eyck) and me + * Brightness/contrast support by Nickols_K/Dariush Pietrzak (eyck) and me * * Fixed Brightness/Contrast * Rewrite or read/write ka...@us... @@ -135,7 +135,7 @@ static vidix_capability_t mga_cap = { "Matrox MGA G200/G4x0/G5x0 YUV Video", - "Aaron Holtzman, Arpad Gereoffy, Alex Beregszaszi, Nick Kurshev", + "Aaron Holtzman, Arpad Gereoffy, Alex Beregszaszi, Nickols_K", TYPE_OUTPUT, { 0, 0, 0, 0 }, 2048, Modified: trunk/vidix/vidix/drivers/radeon.h =================================================================== --- trunk/vidix/vidix/drivers/radeon.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/drivers/radeon.h 2009-09-03 17:39:14 UTC (rev 338) @@ -3,7 +3,7 @@ * This software has been released under the terms of the GNU Public * license. See http://www.gnu.org/copyleft/gpl.html for details. * - * This collection of definition was written by Nick Kurshev + * This collection of definition was written by Nickols_K * It's based on radeonfb, X11, GATOS sources * and partly compatible with Rage128 set (in OV0, CAP0, CAP1 parts) */ Modified: trunk/vidix/vidix/drivers/radeon_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeon_vid.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/drivers/radeon_vid.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,6 +1,6 @@ /* radeon_vid - VIDIX based video driver for Radeon and Rage128 chips - Copyrights 2002 Nick Kurshev. This file is based on sources from + Copyrights 2002 Nickols_K. This file is based on sources from GATOS (gatos.sf.net) and X11 (www.xfree86.org) Licence: GPL */ @@ -1193,7 +1193,7 @@ #else "BES driver for radeon cards", #endif - "Nick Kurshev", + "Nickols_K", TYPE_OUTPUT | TYPE_FX, { 0, 0, 0, 0 }, 2048, Modified: trunk/vidix/vidix/drivers/radeonhd.h =================================================================== --- trunk/vidix/vidix/drivers/radeonhd.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/drivers/radeonhd.h 2009-09-03 17:39:14 UTC (rev 338) @@ -3,7 +3,7 @@ * This software has been released under the terms of the GNU Public * license. See http://www.gnu.org/copyleft/gpl.html for details. * - * This collection of definition was written by Nick Kurshev + * This collection of definition was written by Nickols_K * It's based on radeonfb, X11, GATOS sources * and partly compatible with Rage128 set (in OV0, CAP0, CAP1 parts) */ Modified: trunk/vidix/vidix/drivers/radeonhd_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeonhd_vid.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/drivers/radeonhd_vid.c 2009-09-03 17:39:14 UTC (rev 338) @@ -1,6 +1,6 @@ /* rhd_vid - VIDIX based video driver for RadeonHD chips. - Copyrights 2008 Nick Kurshev. + Copyrights 2008 Nickols_K. Licence: GPL */ @@ -617,7 +617,7 @@ vidix_capability_t def_cap = { "BES driver for r600 cards", - "Nick Kurshev", + "Nickols_K", TYPE_OUTPUT | TYPE_FX, { 0, 0, 0, 0 }, 8192, Modified: trunk/vidix/vidix/fourcc.h =================================================================== --- trunk/vidix/vidix/fourcc.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/fourcc.h 2009-09-03 17:39:14 UTC (rev 338) @@ -1,7 +1,7 @@ /* * fourcc.h * This file is part of VIDIX - * Copyright 2002 Nick Kurshev + * Copyright 2002 Nickols_K * Licence: GPL * This interface is based on v4l2, fbvid.h, mga_vid.h projects * and personally my ideas. Modified: trunk/vidix/vidix/vidix.h =================================================================== --- trunk/vidix/vidix/vidix.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/vidix.h 2009-09-03 17:39:14 UTC (rev 338) @@ -6,7 +6,7 @@ * In the future it may be expanded up to capturing and audio things. * Main goal of this this interface imlpementation is providing DGA * everywhere where it's possible (unlike X11 and other). - * Copyright 2002 Nick Kurshev + * Copyright 2002 Nickols_K * Licence: GPL * This interface is based on v4l2, fbvid.h, mga_vid.h projects * and personally my ideas. Modified: trunk/vidix/vidix/vidix.txt =================================================================== --- trunk/vidix/vidix/vidix.txt 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/vidix.txt 2009-09-03 17:39:14 UTC (rev 338) @@ -244,4 +244,4 @@ Please send your suggestions, reports, feedback to mpl...@li... -Best regards! Nick Kurshev. +Best regards! Nickols_K. Modified: trunk/vidix/vidix/vidixlib.c =================================================================== --- trunk/vidix/vidix/vidixlib.c 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/vidixlib.c 2009-09-03 17:39:14 UTC (rev 338) @@ -6,7 +6,7 @@ * In the future it may be expanded up to capturing and audio things. * Main goal of this this interface imlpementation is providing DGA * everywhere where it's possible (unlike X11 and other). - * Copyright 2002 Nick Kurshev + * Copyright 2002 Nickols_K * Licence: GPL * This interface is based on v4l2, fbvid.h, mga_vid.h projects * and personally my ideas. Modified: trunk/vidix/vidix/vidixlib.h =================================================================== --- trunk/vidix/vidix/vidixlib.h 2008-12-02 17:55:08 UTC (rev 337) +++ trunk/vidix/vidix/vidixlib.h 2009-09-03 17:39:14 UTC (rev 338) @@ -6,7 +6,7 @@ * In the future it may be expanded up to capturing and audio things. * Main goal of this this interface imlpementation is providing DGA * everywhere where it's possible (unlike X11 and other). - * Copyright 2002 Nick Kurshev + * Copyright 2002 Nickols_K * Licence: GPL * This interface is based on v4l2, fbvid.h, mga_vid.h projects * and personally my ideas. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2008-12-02 17:55:12
|
Revision: 337 http://vidix.svn.sourceforge.net/vidix/?rev=337&view=rev Author: nickols_k Date: 2008-12-02 17:55:08 +0000 (Tue, 02 Dec 2008) Log Message: ----------- new unworking RadeonHD driver which doesn't cause the death of Operating System Modified Paths: -------------- trunk/vidix/vidix/drivers/Makefile trunk/vidix/vidix/drivers/radeon.h trunk/vidix/vidix/drivers/radeon_vid.c Added Paths: ----------- trunk/vidix/vidix/drivers/radeonhd.h trunk/vidix/vidix/drivers/radeonhd_vid.c Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2008-12-02 16:19:06 UTC (rev 336) +++ trunk/vidix/vidix/drivers/Makefile 2008-12-02 17:55:08 UTC (rev 337) @@ -6,7 +6,7 @@ VIDIX_LIBS = -L../../libdha -ldha VIDIX_LIBS_M = $(VIDIX_LIBS) -lm VIDIX_LIBS_X = $(VIDIX_LIBS_M) $(X_LIB) -VIDIX_CFLAGS = -fPIC -I. -I.. -I../.. $(OPTFLAGS) +VIDIX_CFLAGS = -W -Wall -fPIC -I. -I.. -I../.. $(OPTFLAGS) MACH64_CFLAGS = $(VIDIX_CFLAGS) -DRAGE128 RAGE128_CFLAGS = $(VIDIX_CFLAGS) -DRAGE128 @@ -24,6 +24,7 @@ pm3_vid.so \ radeon_vid.so \ rage128_vid.so \ + radeonhd_vid.so \ s3_vid.so \ savage_vid.so \ sis_vid.so \ @@ -90,6 +91,9 @@ radeon_vid.so: radeon_vid.o $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ +radeonhd_vid.so: radeonhd_vid.o + $(CC) -shared $< $(VIDIX_LIBS_M) -Wl,-soname,$@ -o $@ + rage128_vid.so: rage128_vid.o s3_vid.so: s3_vid.o Modified: trunk/vidix/vidix/drivers/radeon.h =================================================================== --- trunk/vidix/vidix/drivers/radeon.h 2008-12-02 16:19:06 UTC (rev 336) +++ trunk/vidix/vidix/drivers/radeon.h 2008-12-02 17:55:08 UTC (rev 337) @@ -1279,13 +1279,71 @@ #define BASE_CODE 0x0f0b/*0x0f08*/ #define RADEON_BIOS_0_SCRATCH 0x0010 +# define RADEON_FP_PANEL_SCALABLE (1 << 16) +# define RADEON_FP_PANEL_SCALE_EN (1 << 17) +# define RADEON_FP_CHIP_SCALE_EN (1 << 18) +# define RADEON_DRIVER_BRIGHTNESS_EN (1 << 26) +# define RADEON_DISPLAY_ROT_MASK (3 << 28) +# define RADEON_DISPLAY_ROT_00 (0 << 28) +# define RADEON_DISPLAY_ROT_90 (1 << 28) +# define RADEON_DISPLAY_ROT_180 (2 << 28) +# define RADEON_DISPLAY_ROT_270 (3 << 28) #define RADEON_BIOS_1_SCRATCH 0x0014 #define RADEON_BIOS_2_SCRATCH 0x0018 #define RADEON_BIOS_3_SCRATCH 0x001c #define RADEON_BIOS_4_SCRATCH 0x0020 +# define RADEON_CRT1_ATTACHED_MASK (3 << 0) +# define RADEON_CRT1_ATTACHED_MONO (1 << 0) +# define RADEON_CRT1_ATTACHED_COLOR (2 << 0) +# define RADEON_LCD1_ATTACHED (1 << 2) +# define RADEON_DFP1_ATTACHED (1 << 3) +# define RADEON_TV1_ATTACHED_MASK (3 << 4) +# define RADEON_TV1_ATTACHED_COMP (1 << 4) +# define RADEON_TV1_ATTACHED_SVIDEO (2 << 4) +# define RADEON_CRT2_ATTACHED_MASK (3 << 8) +# define RADEON_CRT2_ATTACHED_MONO (1 << 8) +# define RADEON_CRT2_ATTACHED_COLOR (2 << 8) +# define RADEON_DFP2_ATTACHED (1 << 11) #define RADEON_BIOS_5_SCRATCH 0x0024 +# define RADEON_LCD1_ON (1 << 0) +# define RADEON_CRT1_ON (1 << 1) +# define RADEON_TV1_ON (1 << 2) +# define RADEON_DFP1_ON (1 << 3) +# define RADEON_CRT2_ON (1 << 5) +# define RADEON_CV1_ON (1 << 6) +# define RADEON_DFP2_ON (1 << 7) +# define RADEON_LCD1_CRTC_MASK (1 << 8) +# define RADEON_LCD1_CRTC_SHIFT 8 +# define RADEON_CRT1_CRTC_MASK (1 << 9) +# define RADEON_CRT1_CRTC_SHIFT 9 +# define RADEON_TV1_CRTC_MASK (1 << 10) +# define RADEON_TV1_CRTC_SHIFT 10 +# define RADEON_DFP1_CRTC_MASK (1 << 11) +# define RADEON_DFP1_CRTC_SHIFT 11 +# define RADEON_CRT2_CRTC_MASK (1 << 12) +# define RADEON_CRT2_CRTC_SHIFT 12 +# define RADEON_CV1_CRTC_MASK (1 << 13) +# define RADEON_CV1_CRTC_SHIFT 13 +# define RADEON_DFP2_CRTC_MASK (1 << 14) +# define RADEON_DFP2_CRTC_SHIFT 14 #define RADEON_BIOS_6_SCRATCH 0x0028 +# define RADEON_ACC_MODE_CHANGE (1 << 2) +# define RADEON_EXT_DESKTOP_MODE (1 << 3) +# define RADEON_LCD_DPMS_ON (1 << 20) +# define RADEON_CRT_DPMS_ON (1 << 21) +# define RADEON_TV_DPMS_ON (1 << 22) +# define RADEON_DFP_DPMS_ON (1 << 23) +# define RADEON_DPMS_MASK (3 << 24) +# define RADEON_DPMS_ON (0 << 24) +# define RADEON_DPMS_STANDBY (1 << 24) +# define RADEON_DPMS_SUSPEND (2 << 24) +# define RADEON_DPMS_OFF (3 << 24) +# define RADEON_SCREEN_BLANKING (1 << 26) +# define RADEON_DRIVER_CRITICAL (1 << 27) +# define RADEON_DISPLAY_SWITCHING_DIS (1 << 30) #define RADEON_BIOS_7_SCRATCH 0x002c +# define RADEON_SYS_HOTKEY (1 << 10) +# define RADEON_DRV_LOADED (1 << 12) #define CLK_PIN_CNTL 0x0001 Modified: trunk/vidix/vidix/drivers/radeon_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeon_vid.c 2008-12-02 16:19:06 UTC (rev 336) +++ trunk/vidix/vidix/drivers/radeon_vid.c 2008-12-02 17:55:08 UTC (rev 337) @@ -267,9 +267,6 @@ #define R_2X0 0x00000002 #define R_3X0 0x00000004 #define R_4X0 0x00000008 -#define R_5X0 0x00000010 -#define R_6X0 0x00000020 -#define R_7X0 0x00000040 #define R_OVL_SHIFT 0x01000000 #define R_INTEGRATED 0x02000000 #define R_PCIE 0x04000000 @@ -533,162 +530,6 @@ { DEVICE_ATI_RADEON_X850_SE2, R_4X0|R_PCIE }, { DEVICE_ATI_FIREGL_V7200_R480, R_4X0|R_PCIE }, { DEVICE_ATI_R480_GL_12P, R_4X0 }, - { DEVICE_ATI_RV505_RADEON_X1550, R_5X0|R_PCIE }, - { DEVICE_ATI_RV505_RADEON_X15502, R_5X0|R_PCIE }, - { DEVICE_ATI_RV505_CE_RADEON, R_5X0|R_PCIE }, - { DEVICE_ATI_RV505_RADEON_X15503, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_X1300, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_X13002, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515LE_RADEON_X13002, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_X13004, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515LE_RADEON_X1300, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515GL_FIREGL_V3300, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515GL_FIREGL_V33002, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515GL_FIREGL_V3350, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515GL_FIREGL_V33502, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_X13003, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_X1600, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_PRO_RADEON, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_PRO_RADEON2, R_5X0|R_PCIE }, - { DEVICE_ATI_RADEON_MOBILITY_X1400, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_MOBILITY, R_5X0|R_PCIE }, - { DEVICE_ATI_RV515_RADEON_X1300, R_5X0|R_PCIE }, - { DEVICE_ATI_M52_MOBILITY_RADEON, R_5X0|R_PCIE }, - { DEVICE_ATI_M52_MOBILITY_RADEON2, R_5X0|R_PCIE }, - { DEVICE_ATI_M52_MOBILITY_RADEON3, R_5X0|R_PCIE }, - { DEVICE_ATI_M52_MOBILITY_RADEON4, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1300_X1550, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1300_X15502, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1300_X15503, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1300_X15504, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_XT_RADEON, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1550, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_MOBILITY_RADEON, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516LE_RADEON_X1550, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_XT_RADEON2, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1300, R_5X0|R_PCIE }, - { DEVICE_ATI_RV516_RADEON_X1300_X15505, R_5X0|R_PCIE }, - { DEVICE_ATI_R520GL_FIREGL_V7200, R_5X0 }, - { DEVICE_ATI_R520_FIREGL, R_5X0 }, - { DEVICE_ATI_FIREMV_2250, R_5X0 }, - { DEVICE_ATI_FIREMV_2250_SECONDARY, R_5X0 }, - { DEVICE_ATI_M56P_RADEON_MOBILITY, R_5X0 }, - { DEVICE_ATI_M56GL_MOBILITY_FIREGL, R_5X0 }, - { DEVICE_ATI_M56GL_MOBILITY_FIREGL2, R_5X0 }, - { DEVICE_ATI_M58_MOBILITY_FIREGL2, R_5X0 }, - { DEVICE_ATI_M58_RADEON_MOBILITY2, R_5X0 }, - { DEVICE_ATI_M64_S_MOBILITY_RADEON, R_5X0 }, - { DEVICE_ATI_MOBILITY_RADEON_X2300, R_5X0 }, - { DEVICE_ATI_M62CSP64_MOBILITY_RADEON, R_5X0 }, - { DEVICE_ATI_M64CSP128_MOBILITY_RADEON, R_5X0 }, - { DEVICE_ATI_M66_P_MOBILITY_RADEON, R_5X0 }, - { DEVICE_ATI_M66_XT_MOBILITY_RADEON, R_5X0 }, - { DEVICE_ATI_M71_MOBILITY_RADEON, R_5X0 }, - { DEVICE_ATI_M71_MOBILITY_RADEON2, R_5X0 }, - { DEVICE_ATI_R520_RADEON_X18002, R_5X0 }, - { DEVICE_ATI_R520_RADEON_X18003, R_5X0 }, - { DEVICE_ATI_R520_RADEON_X18004, R_5X0 }, - { DEVICE_ATI_R520_RADEON_X18005, R_5X0 }, - { DEVICE_ATI_R520_RADEON_X18006, R_5X0 }, - { DEVICE_ATI_R520_RADEON_X18007, R_5X0 }, - { DEVICE_ATI_R520GL_FIREGL_V72002, R_5X0 }, - { DEVICE_ATI_RV530_RADEON_X1600, R_5X0 }, - { DEVICE_ATI_RV530_RADEON_X16002, R_5X0 }, - { DEVICE_ATI_RV530_RADEON_X16003, R_5X0 }, - { DEVICE_ATI_RV530_RADEON_X16004, R_5X0 }, - { DEVICE_ATI_RADEON_X1650_PRO, R_5X0 }, - { DEVICE_ATI_RV530LE_RADEON_X1600_X1650, R_5X0 }, - { DEVICE_ATI_RV535_RADEON_X1650, R_5X0 }, - { DEVICE_ATI_RV530LE_RADEON_X1600, R_5X0 }, - { DEVICE_ATI_RV530LE_RADEON_X16002, R_5X0 }, - { DEVICE_ATI_RADEON_X1650_PRO2, R_5X0 }, - { DEVICE_ATI_RV530LE_RADEON_X1650, R_5X0 }, - { DEVICE_ATI_RV535_RADEON_X16502, R_5X0 }, - { DEVICE_ATI_RV570_RADEON_X19502, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X1900, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19002, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19003, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19004, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19005, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19006, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19007, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19008, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X19009, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190010, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190011, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190012, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190013, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190014, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190015, R_5X0 }, - { DEVICE_ATI_R580_RADEON_X190016, R_5X0 }, - { DEVICE_ATI_R580_AMD_STREAM, R_5X0 }, - { DEVICE_ATI_R580_AMD_STREAM2, R_5X0 }, - { DEVICE_ATI_RADEON_X1950_GT, R_5X0 }, - { DEVICE_ATI_RADEON_X1650_XT, R_5X0|R_PCIE }, - { DEVICE_ATI_RADEON_X1650_SERIES, R_5X0 }, - { DEVICE_ATI_RADEON_X1950_GT2, R_5X0 }, - { DEVICE_ATI_RADEON_X1650_XT2, R_5X0|R_PCIE }, - { DEVICE_ATI_RADEON_X1650_SERIES2, R_5X0 }, - { DEVICE_ATI_RADEON_9100_PRO, R_5X0 }, - { DEVICE_ATI_RADEON_MOBILITY_9200, R_5X0 }, - { DEVICE_ATI_R600_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_R600_RADEON_HD2, R_6X0|R_PCIE }, - { DEVICE_ATI_R600GL_FIRE_GL, R_6X0|R_PCIE }, - { DEVICE_ATI_R600GL_FIRE_GL2, R_6X0|R_PCIE }, - { DEVICE_ATI_R600_FIREGL_V7600, R_6X0|R_PCIE }, - { DEVICE_ATI_RV610_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_RV610_VIDEO_DEVICE, R_6X0|R_PCIE }, - { DEVICE_ATI_RV610_LE_AGP, R_6X0 }, - { DEVICE_ATI_RV_610LE_PCI, R_6X0 }, - { DEVICE_ATI_RADEON_HD_2400, R_6X0|R_PCIE }, - { DEVICE_ATI_RADEON_E2400, R_6X0|R_PCIE }, - { DEVICE_ATI_RADEON_HD_3870, R_6X0|R_PCIE }, - { DEVICE_ATI_RV620_LE_AGP, R_6X0 }, - { DEVICE_ATI_RV620_ATI_FIREGL, R_6X0|R_PCIE }, - { DEVICE_ATI_RV620_FIREPRO_2260, R_6X0|R_PCIE }, - { DEVICE_ATI_RV620_FIREPRO_22602, R_6X0|R_PCIE }, - { DEVICE_ATI_RADEON_HD_3200, R_6X0|R_PCIE }, - { DEVICE_ATI_RADEON_3100_GRAPHICS, R_6X0|R_PCIE }, - { DEVICE_ATI_RS780M_RS780MN_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_RS780MC_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_RADEON_HD_3300, R_6X0|R_PCIE }, - { DEVICE_ATI_RV_630_XT, R_6X0|R_PCIE }, - { DEVICE_ATI_RV630_PRO_AGP, R_6X0 }, - { DEVICE_ATI_RV630_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_RV630_RADEON_HD2, R_6X0|R_PCIE }, - { DEVICE_ATI_RV630GL_FIREGL_V5600, R_6X0|R_PCIE }, - { DEVICE_ATI_RV630_FIREGL_V3600, R_6X0|R_PCIE }, - { DEVICE_ATI_RV635_PRO_AGP, R_6X0 }, - { DEVICE_ATI_MOBILITY_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD2, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD3, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD4, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD5, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD6, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD7, R_6X0|R_PCIE }, - { DEVICE_ATI_MOBILITY_RADEON_HD8, R_6X0|R_PCIE }, - { DEVICE_ATI_M76_RADEON_MOBILITY, R_6X0|R_PCIE }, - { DEVICE_ATI_M76XT_MOBILITY_RADEON, R_6X0|R_PCIE }, - { DEVICE_ATI_RV670PRO_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_RV670_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_RV670_FIREGL_7700, R_6X0|R_PCIE }, - { DEVICE_ATI_RV670_AGP_RADEON, R_6X0 }, - { DEVICE_ATI_RV670_FIRESTREAM_9170, R_6X0|R_PCIE }, - { DEVICE_ATI_M86GL_MOBILITY_FIREGL, R_6X0|R_PCIE }, - { DEVICE_ATI_M88_XT_MOBILITY, R_6X0|R_PCIE }, - { DEVICE_ATI_R680_RADEON_HD, R_6X0|R_PCIE }, - { DEVICE_ATI_R700_RADEON_HD, R_7X0|R_PCIE }, - { DEVICE_ATI_R700_RADEON_HD2, R_7X0|R_PCIE }, - { DEVICE_ATI_RV710_RADEON_HD, R_7X0|R_PCIE }, - { DEVICE_ATI_RV710_RADEON_HD2, R_7X0|R_PCIE }, - { DEVICE_ATI_RV730XT_RADEON_HD, R_7X0|R_PCIE }, - { DEVICE_ATI_RV730_PRO_RADEON, R_7X0|R_PCIE }, - { DEVICE_ATI_RV770_RADEON_HD, R_7X0|R_PCIE }, - { DEVICE_ATI_RV770_RADEON_HD2, R_7X0|R_PCIE }, - { DEVICE_ATI_M96_MOBILITY_RADEON, R_7X0|R_PCIE }, - { DEVICE_ATI_M98L_MOBILITY_RADEON, R_7X0|R_PCIE }, - { DEVICE_ATI_M98_XT_MOBILITY, R_7X0|R_PCIE }, - { DEVICE_ATI_RV770_LE_RADEON, R_7X0|R_PCIE }, #endif }; @@ -773,33 +614,24 @@ { unsigned int tmp; - if((besr.chip_flags&R_6X0)==R_6X0) - tmp = INREG(R600_BIOS_4_SCRATCH); - else - tmp = INREG(RADEON_BIOS_4_SCRATCH); + tmp = INREG(RADEON_BIOS_4_SCRATCH); if (rinfo->hasCRTC2) { /* primary DVI port */ - if (tmp & 0x08) + if (tmp & RADEON_DFP2_ATTACHED) rinfo->dviDispType = MT_DFP; - else if (tmp & 0x4) - rinfo->dviDispType = MT_LCD; - else if (tmp & 0x200) + else if (tmp & RADEON_CRT2_ATTACHED_MASK) rinfo->dviDispType = MT_CRT; - else if (tmp & 0x10) - rinfo->dviDispType = MT_CTV; - else if (tmp & 0x20) - rinfo->dviDispType = MT_STV; /* secondary CRT port */ - if (tmp & 0x2) + if (tmp & RADEON_CRT1_ATTACHED_MASK) rinfo->crtDispType = MT_CRT; - else if (tmp & 0x800) - rinfo->crtDispType = MT_DFP; - else if (tmp & 0x400) + else if (tmp & RADEON_LCD1_ATTACHED) rinfo->crtDispType = MT_LCD; - else if (tmp & 0x1000) + else if (tmp & RADEON_DFP1_ATTACHED) + rinfo->crtDispType = MT_DFP; + else if (tmp & RADEON_TV1_ATTACHED_COMP) rinfo->crtDispType = MT_CTV; - else if (tmp & 0x2000) + else if (tmp & RADEON_TV1_ATTACHED_SVIDEO) rinfo->crtDispType = MT_STV; } else { rinfo->dviDispType = MT_NONE; @@ -1478,11 +1310,11 @@ printf(RADEON_MSG" Driver was not probed but is being initializing\n"); return EINTR; } - if((radeon_mmio_base = map_phys_mem(pci_info.base2,0xFFFF))==(void *)-1) return ENOMEM; - if((besr.chip_flags&R_6X0)==R_6X0) - radeon_ram_size = INREG(R600_CONFIG_MEMSIZE); - else - radeon_ram_size = INREG(CONFIG_MEMSIZE); + if((radeon_mmio_base = map_phys_mem(pci_info.base2,0xFFFF))==(void *)-1) { + printf(RADEON_MSG" Can't mmap MMIO: %p\n",pci_info.base2); + return ENOMEM; + } + radeon_ram_size = INREG(CONFIG_MEMSIZE); /* mem size is bits [28:0], mask off the rest. Range: from 1Mb up to 512 Mb */ radeon_ram_size &= CONFIG_MEMSIZE_MASK; #ifdef RADEON @@ -1504,15 +1336,13 @@ radeon_ram_size = 8192*1024; } #endif - if((radeon_mem_base = map_phys_mem(pci_info.base0,radeon_ram_size))==(void *)-1) return ENOMEM; printf(RADEON_MSG" Video memory = %uMb\n",radeon_ram_size/0x100000); + if((radeon_mem_base = map_phys_mem(pci_info.base0,radeon_ram_size))==(void *)-1) { + printf(RADEON_MSG" Can't mmap video memory %p\n",pci_info.base0); + return ENOMEM; + } err = mtrr_set_type(pci_info.base0,radeon_ram_size,MTRR_TYPE_WRCOMB); if(!err) printf(RADEON_MSG" Set write-combining type of video memory\n"); - if((besr.chip_flags&R_FAMILY)>=R_5X0) { - printf(RADEON_MSG" R500+ chips have perfectly redesigned architecture\n" - RADEON_MSG" and currently are not supported by this driver\n"); - return ENOSYS; - } radeon_vid_make_default(); #ifndef RAGE128 { Added: trunk/vidix/vidix/drivers/radeonhd.h =================================================================== --- trunk/vidix/vidix/drivers/radeonhd.h (rev 0) +++ trunk/vidix/vidix/drivers/radeonhd.h 2008-12-02 17:55:08 UTC (rev 337) @@ -0,0 +1,353 @@ +/* + * rhd.h + * This software has been released under the terms of the GNU Public + * license. See http://www.gnu.org/copyleft/gpl.html for details. + * + * This collection of definition was written by Nick Kurshev + * It's based on radeonfb, X11, GATOS sources + * and partly compatible with Rage128 set (in OV0, CAP0, CAP1 parts) +*/ + +#ifndef _RADEONHD_H +#define _RADEONHD_H + +#define RHD_BUS_CNTL 0x5420 +#define RHD_CONFIG_CNTL 0x5424 +#define RHD_CONFIG_MEMSIZE 0x5428 +#define RHD_CONFIG_F0_BASE 0x542C +#define RHD_CONFIG_APER_SIZE 0x5430 +#define RHD_ROM_CNTL 0x1600 +# define RHD_SCK_OVERWRITE (1 << 1) +# define RHD_SCK_PRESCALE_CRYSTAL_CLK_SHIFT 28 +# define RHD_SCK_PRESCALE_CRYSTAL_CLK_MASK (0xf << 28) + +#define RHD_BIOS_0_SCRATCH 0x1724 +# define RADEON_FP_PANEL_SCALABLE (1 << 16) +# define RADEON_FP_PANEL_SCALE_EN (1 << 17) +# define RADEON_FP_CHIP_SCALE_EN (1 << 18) +# define RADEON_DRIVER_BRIGHTNESS_EN (1 << 26) +# define RADEON_DISPLAY_ROT_MASK (3 << 28) +# define RADEON_DISPLAY_ROT_00 (0 << 28) +# define RADEON_DISPLAY_ROT_90 (1 << 28) +# define RADEON_DISPLAY_ROT_180 (2 << 28) +# define RADEON_DISPLAY_ROT_270 (3 << 28) +#define RHD_BIOS_1_SCRATCH 0x1728 +#define RHD_BIOS_2_SCRATCH 0x172c +#define RHD_BIOS_3_SCRATCH 0x1730 +#define RHD_BIOS_4_SCRATCH 0x1734 +# define RADEON_CRT1_ATTACHED_MASK (3 << 0) +# define RADEON_CRT1_ATTACHED_MONO (1 << 0) +# define RADEON_CRT1_ATTACHED_COLOR (2 << 0) +# define RADEON_LCD1_ATTACHED (1 << 2) +# define RADEON_DFP1_ATTACHED (1 << 3) +# define RADEON_TV1_ATTACHED_MASK (3 << 4) +# define RADEON_TV1_ATTACHED_COMP (1 << 4) +# define RADEON_TV1_ATTACHED_SVIDEO (2 << 4) +# define RADEON_CRT2_ATTACHED_MASK (3 << 8) +# define RADEON_CRT2_ATTACHED_MONO (1 << 8) +# define RADEON_CRT2_ATTACHED_COLOR (2 << 8) +# define RADEON_DFP2_ATTACHED (1 << 17) +#define RHD_BIOS_5_SCRATCH 0x1738 +# define RADEON_LCD1_ON (1 << 0) +# define RADEON_CRT1_ON (1 << 1) +# define RADEON_TV1_ON (1 << 2) +# define RADEON_DFP1_ON (1 << 3) +# define RADEON_CRT2_ON (1 << 5) +# define RADEON_CV1_ON (1 << 6) +# define RADEON_DFP2_ON (1 << 7) +# define RADEON_LCD1_CRTC_MASK (1 << 8) +# define RADEON_LCD1_CRTC_SHIFT 8 +# define RADEON_CRT1_CRTC_MASK (1 << 9) +# define RADEON_CRT1_CRTC_SHIFT 9 +# define RADEON_TV1_CRTC_MASK (1 << 10) +# define RADEON_TV1_CRTC_SHIFT 10 +# define RADEON_DFP1_CRTC_MASK (1 << 11) +# define RADEON_DFP1_CRTC_SHIFT 11 +# define RADEON_CRT2_CRTC_MASK (1 << 12) +# define RADEON_CRT2_CRTC_SHIFT 12 +# define RADEON_CV1_CRTC_MASK (1 << 13) +# define RADEON_CV1_CRTC_SHIFT 13 +# define RADEON_DFP2_CRTC_MASK (1 << 14) +# define RADEON_DFP2_CRTC_SHIFT 14 +#define RHD_BIOS_6_SCRATCH 0x173c +# define RADEON_ACC_MODE_CHANGE (1 << 2) +# define RADEON_EXT_DESKTOP_MODE (1 << 3) +# define RADEON_LCD_DPMS_ON (1 << 20) +# define RADEON_CRT_DPMS_ON (1 << 21) +# define RADEON_TV_DPMS_ON (1 << 22) +# define RADEON_DFP_DPMS_ON (1 << 23) +# define RADEON_DPMS_MASK (3 << 24) +# define RADEON_DPMS_ON (0 << 24) +# define RADEON_DPMS_STANDBY (1 << 24) +# define RADEON_DPMS_SUSPEND (2 << 24) +# define RADEON_DPMS_OFF (3 << 24) +# define RADEON_SCREEN_BLANKING (1 << 26) +# define RADEON_DRIVER_CRITICAL (1 << 27) +# define RADEON_DISPLAY_SWITCHING_DIS (1 << 30) +#define RHD_BIOS_7_SCRATCH 0x1740 +# define RADEON_SYS_HOTKEY (1 << 10) +# define RADEON_DRV_LOADED (1 << 12) + +#define RHD_D1CRTC_H_TOTAL 0x6000 +#define RHD_D1CRTC_V_TOTAL 0x6020 + +#define RHD_D1GRPH_ENABLE 0x6100 +# define D1GRPH_ENABLE 0x00000001 +#define RHD_D1GRPH_CONTOL 0x6104 +# define D1GRPH_DEPTH (3<<0) +# define D1GRPH_Z (3<<4) +# define D1GRPH_FORMAT (7<<8) +# define D1GRPH_TILE_COMPACT_EN (1<12) +# define D1GRPH_ADDR_TANSLATION_EN (1<<16) +# define D1GRPH_PRIVILEGED_ACCESS_EN (1<<17) +# define D1GRPH_ARRAY_MODE (7<<20) +# define D1GRPH_16BIT_ALPHA_MODE (3<<24) +# define D1GRPH_16BIT_FIXED_ALPHA_RANGE (7<<28) +#define RHD_D1GRPH_PRIMARY_SURFACE_ADDRESS 0x6110 +#define RHD_D1GRPH_SECONDARY_SURFACE_ADDRESS 0x6118 + +#define RHD_D1OVL_ENABLE 0x6180 +# define D1OVL_ENABLE 0x00000001 +#define RHD_D1OVL_CONTROL1 0x6184 +# define D1OVL_DEPTH_16BPP 0x00000001 +# define D1OVL_DEPTH_32BPP 0x00000002 +# define D1OVL_DEPTH_Z (3<<4) +# define D1OVL_FORMAT_ARGB (0<<8) +# define D1OVL_FORMAT_RGB (1<<8) +# define D1OVL_FORMAT_BGRA (2<<8) +# define D1OVL_TILE_COMPACT_EN (1<<12) +# define D1OVL_ADDRESS_TANSLATION_EN (1<<16) +# define D1OVL_PRIVILEGED_ACCESS_EN (1<<17) +# define D1OVL_ARRAY_LINEAR_GENERAL (0<<20) +# define D1OVL_ARRAY_LINEAR_ALIGNED (1<<20) +# define D1OVL_ARRAY_1D_TILED_THIN1 (2<<20) +# define D1OVL_ARRAY_1D_TILED_THICK (3<<20) +# define D1OVL_ARRAY_2D_TILED_THIN1 (4<<20) +# define D1OVL_ARRAY_2D_TILED_THIN2 (5<<20) +# define D1OVL_ARRAY_2D_TILED_THIN4 (6<<20) +# define D1OVL_ARRAY_2D_TILED_THICK (7<<20) +# define D1OVL_ARRAY_2B_TILED_THIN1 (8<<20) +# define D1OVL_ARRAY_2B_TILED_THIN2 (9<<20) +# define D1OVL_ARRAY_2B_TILED_THIN4 (10<<20) +# define D1OVL_ARRAY_2B_TILED_THICK (11<<20) +# define D1OVL_ARRAY_3D_TILED_THIN1 (12<<20) +# define D1OVL_ARRAY_3D_TILED_THICK (13<<20) +# define D1OVL_ARRAY_3B_TILED_THIN1 (14<<20) +# define D1OVL_ARRAY_3B_TILED_THICK (15<<20) +# define D1OVL_COLOR_EXPANSION_MODE (1<<24) +#define RHD_D1OVL_CONTROL2 0x6188 +# define D1OVL_HALF_RESOLUTION_ENABLE 0x0000001 +#define RHD_D1OVL_SWAP_CNTL 0x618C +# define D1OVL_ENDIAN_SWAP 0x00000003 +# define D1OVL_RED_CROSSBAR (3<<4) +# define D1OVL_GREEN_CROSSBAR (3<<6) +# define D1OVL_BLUE_CROSSBAR (3<<8) +# define D1OVL_ALPHA_CROSSBAR (3<<10) +#define RHD_D1OVL_SURFACE_ADDRESS 0x6190 +# define D1OVL_DFQ_ENABLE 0x00000001 +# define D1OVL_SURFACE_ADDRESS 0xFFFFFF00 +#define RHD_D1OVL_PITCH 0x6198 +# define D1OVL_PITCH 0x00001FF0 +#define RHD_D1OVL_SURFACE_OFFSET_X 0x619C +# define D1OVL_SURFACE_OFFSET_X 0x00000FF0 +#define RHD_D1OVL_SURFACE_OFFSET_Y 0x61A0 +# define D1OVL_SURFACE_OFFSET_Y 0x00000FF0 +#define RHD_D1OVL_START 0x61A4 +# define D1OVL_X_START 0x00000FFF +# define D1OVL_Y_START 0x0FFF0000 +#define RHD_D1OVL_END 0x61A8 +# define D1OVL_X_END 0x00001FFF +# define D1OVL_Y_END 0x1FFF0000 +#define RHD_D1OVL_UPDATE 0x61AC +# define D1OVL_UPDATE_PENDING 0x00000001 +# define D1OVL_UPDATE_TAKING 0x00000002 +# define D1OVL_UPDATE_LOCK 0x00010000 +# define D1OVL_DISABLE_MULTIUPDATE 0x01000000 +#define RHD_D1OVL_SURFACE_ADDRESS_INUSE 0x61B0 +# define D1OVL_SURFACE_ADDRESS_INUSE 0xFFFFFF00 +#define RHD_D1OVL_DFQ_CONTROL 0x61B4 /* deep flip queue */ +# define D1OVL_DFQ_RESET 0x00000001 +# define D1OVL_DFQ_SIZE (7<<4) +# define D1OVL_DFQ_MIN_FREE_ENTIES (7<<8) +#define RHD_D1OVL_DFQ_STATUS 0x61B8 /* deep flip queue */ +# define D1OVL_DFQ_NUM_ENTIES (3<<0) +# define D1OVL_DFQ_RESET_FLAG (1<<8) +# define D1OVL_DFQ_RESET_ASK (1<<9) +#define RHD_D1OVL_COLOR_MATIX_TANSFORM_CNTL 0x6140 +# define D1OVL_NO_COLORSPACE_ADJ 0x00000000 +# define D1OVL_DISPLAY_COLORSPACE 0x00000001 +# define D1OVL_CCIRT_601 0x00000002 +# define D1OVL_CCIRT_709 0x00000003 +# define D1OVL_TVRGB 0x00000004 +#define RHD_D1OVL_COLOR_MATIX_TANSFORM_EN 0x6200 +# define D1OVL_MATIX_TANSFORM_EN 0x00000001 +#define RHD_D1OVL_MATRIX_COEFF_1_1 0x6204 /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_1_1 0x0003FFF0 /* default 0x198a0*/ +# define D1OVL_MATIX_SIGN_1_1 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_1_2 0x6208 /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_1_2 0x0003FFF0 /* default 0x12a20*/ +# define D1OVL_MATIX_SIGN_1_2 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_1_3 0x620C /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_1_3 0x0003FFF0 /* default 0x0*/ +# define D1OVL_MATIX_SIGN_1_3 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_1_4 0x6210 /* format fix-point S11.1 */ +# define D1OVL_MATRIX_COEFF_1_4 0x07FFFFF0 /* default 0x48700*/ +# define D1OVL_MATIX_SIGN_1_4 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_2_1 0x6214 /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_2_1 0x0003FFF0 /* default 0x72fe0*/ +# define D1OVL_MATIX_SIGN_2_1 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_2_2 0x6218 /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_2_2 0x0003FFF0 /* default 0x12a20*/ +# define D1OVL_MATIX_SIGN_2_2 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_2_3 0x621C /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_2_3 0x0003FFF0 /* default 0x79bc0*/ +# define D1OVL_MATIX_SIGN_2_3 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_2_4 0x6220 /* format fix-point S11.1 */ +# define D1OVL_MATRIX_COEFF_2_4 0x07FFFFF0 /* default 0x22100*/ +# define D1OVL_MATIX_SIGN_2_4 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_3_1 0x6224 /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_3_1 0x0003FFF0 /* default 0x0*/ +# define D1OVL_MATIX_SIGN_3_1 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_3_2 0x6228 /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_3_2 0x0003FFF0 /* default 0x12a20*/ +# define D1OVL_MATIX_SIGN_3_2 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_3_3 0x622C /* format fix-point S3.11 */ +# define D1OVL_MATRIX_COEFF_3_3 0x0003FFF0 /* default 0x20460*/ +# define D1OVL_MATIX_SIGN_3_3 0x80000000 +#define RHD_D1OVL_MATRIX_COEFF_3_4 0x6230 /* format fix-point S11.1 */ +# define D1OVL_MATRIX_COEFF_3_4 0x07FFFFF0 /* default 0x3af80*/ +# define D1OVL_MATIX_SIGN_3_4 0x80000000 +/* gamma correction */ +#define RHD_D1OVL_PWL_TRANSFORM_EN 0x6280 +# define D1OVL_PWL_TANSFORM_EN 0x00000001 +#define RHD_D1OVL_0TOF 0x6284 /* format fix-point 8.1 */ +# define D1OVL_OFFSET 0x000000FF +# define D1OVL_SLOPE 0x07FF0000 +#define RHD_D1OVL_10TO1F 0x6288 /* format fix-point 8.1 */ +#define RHD_D1OVL_20TO3F 0x628C /* format fix-point 9.1 */ +#define RHD_D1OVL_40TO7F 0x6290 /* format fix-point 9.1 */ +#define RHD_D1OVL_80TOBF 0x6294 /* format fix-point 10.1 */ +#define RHD_D1OVL_C0TOFF 0x6298 /* format fix-point 10.1 */ +#define RHD_D1OVL_100TO13F 0x629C /* format fix-point 10.1 */ +#define RHD_D1OVL_140TO17F 0x62A0 /* format fix-point 10.1 */ +#define RHD_D1OVL_180TO1BF 0x62A4 /* format fix-point 10.1 */ +#define RHD_D1OVL_1C0TO1FF 0x62A8 /* format fix-point 10.1 */ +#define RHD_D1OVL_200TO23F 0x62AC /* format fix-point 10.1 */ +#define RHD_D1OVL_240TO27F 0x62B0 /* format fix-point 10.1 */ +#define RHD_D1OVL_280TO2BF 0x62B4 /* format fix-point 10.1 */ +#define RHD_D1OVL_2C0TO2FF 0x62B8 /* format fix-point 10.1 */ +#define RHD_D1OVL_300TO3FF 0x62BC /* format fix-point 10.1 */ +#define RHD_D1OVL_340TO37F 0x62C0 /* format fix-point 10.1 */ +#define RHD_D1OVL_380TO3BF 0x62C4 /* format fix-point 10.1 */ +#define RHD_D1OVL_3C0TO3FF 0x62C8 /* format fix-point 10.1 */ + +#define RHD_D1OVL_KEY_CONTOL 0x6300 +# define D1GRPH_KEY_FUNCTION 0x0000003 +# define D1GRPH_FALSE 0 +# define D1GRPH_TRUE 1 +# define D1GRPH_RGBA 2 +# define D1GRPH_NOT_RGBA 3 +# define D1OVL_KEY_FUNCTION (3<<8) +# define D1OVL_FALSE 0 +# define D1OVL_TRUE 1 +# define D1OVL_RGBA 2 +# define D1OVL_NOT_RGBA 3 +# define D1OVL_KEY_COMPARE_MIX (1<<16) +# define D1OVL_COMPARE_OR 0 +# define D1OVL_COMPARE_AND 1 + +#define RHD_D1GRPH_ALPHA 0x6304 +# define D1GRPH_ALPHA_MASK 0xFF +#define RHD_D1OVL_ALPHA 0x6308 +# define D1OVL_ALPHA_MASK 0xFF +#define RHD_D1OVL_ALPHA_CONTROL 0x630C +# define D1OVL_ALPHA_KEYER 0 +# define D1OVL_ALPHA_PERPIXEL_GR 1 +# define D1OVL_ALPHA_GLOBAL 2 +# define D1OVL_ALPHA_PERPIXEL_OVL 3 +# define D1OVL_ALPHA_PREMULT (1<<8) +# define D1OVL_ALPHA_INV (1<<16) +#define RHD_D1GRPH_KEY_RANGE_RED 0x6310 +# define D1GRPH_KEY_LOW 0x0000FFFF +# define D1GRPH_KEY_HIGH 0xFFFF0000 +#define RHD_D1GRPH_KEY_RANGE_GREEN 0x6314 +#define RHD_D1GRPH_KEY_RANGE_BLUE 0x6318 +#define RHD_D1GRPH_KEY_RANGE_ALPHA 0x631C +#define RHD_D1OVL_KEY_RANGE_RED_CR 0x6320 +# define D1OVL_KEY_LOW 0x000001FF +# define D1OVL_KEY_HIGH 0x01FF0000 +#define RHD_D1OVL_KEY_RANGE_GREEN_Y 0x6324 +#define RHD_D1OVL_KEY_RANGE_BLUE_CB 0x6328 +#define RHD_D1OVL_KEY_RANGE_ALPHA 0x632C + + +#define RHD_D2CRTC_H_TOTAL 0x6800 +#define RHD_D2CRTC_V_TOTAL 0x6820 + +#define RHD_D2GRPH_ENABLE 0x6900 +#define RHD_D2GRPH_CONTOL 0x6904 +#define RHD_D2GRPH_PRIMARY_SURFACE_ADDRESS 0x6910 +#define RHD_D2GRPH_SECONDARY_SURFACE_ADDRESS 0x6918 +#define RHD_D2OVL_ENABLE 0x6980 +#define RHD_D2OVL_CONTROL1 0x6984 +#define RHD_D2OVL_CONTROL2 0x6988 +#define RHD_D2OVL_SWAP_CNTL 0x698C +#define RHD_D2OVL_SURFACE_ADDRESS 0x6990 +#define RHD_D2OVL_PITCH 0x6998 +#define RHD_D2OVL_SURFACE_OFFSET_X 0x699C +#define RHD_D2OVL_SURFACE_OFFSET_Y 0x69A0 +#define RHD_D2OVL_START 0x69A4 +#define RHD_D2OVL_END 0x69A8 +#define RHD_D2OVL_UPDATE 0x69AC +#define RHD_D2OVL_SURFACE_ADDRESS_INUSE 0x69B0 +#define RHD_D2OVL_DFQ_CONTROL 0x69B4 /* deep flip queue */ +#define RHD_D2OVL_DFQ_STATUS 0x69B8 /* deep flip queue */ +#define RHD_D2OVL_COLOR_MATIX_TANSFORM_CNTL 0x6940 +#define RHD_D2OVL_COLOR_MATIX_TANSFORM_EN 0x6A00 +#define RHD_D2OVL_MATRIX_COEFF_1_1 0x6A04 /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_1_2 0x6A08 /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_1_3 0x6A0C /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_1_4 0x6A10 /* format fix-point S11.1 */ +#define RHD_D2OVL_MATRIX_COEFF_2_1 0x6A14 /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_2_2 0x6A18 /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_2_3 0x6A1C /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_2_4 0x6A20 /* format fix-point S11.1 */ +#define RHD_D2OVL_MATRIX_COEFF_3_1 0x6A24 /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_3_2 0x6A28 /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_3_3 0x6A2C /* format fix-point S3.11 */ +#define RHD_D2OVL_MATRIX_COEFF_3_4 0x6A30 /* format fix-point S11.1 */ +/* gamma correction */ +#define RHD_D2OVL_PWL_TRANSFORM_EN 0x6A80 +#define RHD_D2OVL_0TOF 0x6A84 /* format fix-point 8.1 */ +#define RHD_D2OVL_10TO1F 0x6A88 /* format fix-point 8.1 */ +#define RHD_D2OVL_20TO3F 0x6A8C /* format fix-point 9.1 */ +#define RHD_D2OVL_40TO7F 0x6A90 /* format fix-point 9.1 */ +#define RHD_D2OVL_80TOBF 0x6A94 /* format fix-point 10.1 */ +#define RHD_D2OVL_C0TOFF 0x6A98 /* format fix-point 10.1 */ +#define RHD_D2OVL_100TO13F 0x6A9C /* format fix-point 10.1 */ +#define RHD_D2OVL_140TO17F 0x6AA0 /* format fix-point 10.1 */ +#define RHD_D2OVL_180TO1BF 0x6AA4 /* format fix-point 10.1 */ +#define RHD_D2OVL_1C0TO1FF 0x6AA8 /* format fix-point 10.1 */ +#define RHD_D2OVL_200TO23F 0x6AAC /* format fix-point 10.1 */ +#define RHD_D2OVL_240TO27F 0x6AB0 /* format fix-point 10.1 */ +#define RHD_D2OVL_280TO2BF 0x6AB4 /* format fix-point 10.1 */ +#define RHD_D2OVL_2C0TO2FF 0x6AB8 /* format fix-point 10.1 */ +#define RHD_D2OVL_300TO3FF 0x6ABC /* format fix-point 10.1 */ +#define RHD_D2OVL_340TO37F 0x6AC0 /* format fix-point 10.1 */ +#define RHD_D2OVL_380TO3BF 0x6AC4 /* format fix-point 10.1 */ +#define RHD_D2OVL_3C0TO3FF 0x6AC8 /* format fix-point 10.1 */ + +#define RHD_D2OVL_KEY_CONTOL 0x6B00 +#define RHD_D2GRPH_ALPHA 0x6B04 +#define RHD_D2OVL_ALPHA 0x6B08 +#define RHD_D2OVL_ALPHA_CONTROL 0x6B0C +#define RHD_D2GRPH_KEY_RANGE_RED 0x6B10 +#define RHD_D2GRPH_KEY_RANGE_GREEN 0x6B14 +#define RHD_D2GRPH_KEY_RANGE_BLUE 0x6B18 +#define RHD_D2GRPH_KEY_RANGE_ALPHA 0x6B1C +#define RHD_D2OVL_KEY_RANGE_RED_CR 0x6B20 +#define RHD_D2OVL_KEY_RANGE_GREEN_Y 0x6B24 +#define RHD_D2OVL_KEY_RANGE_BLUE_CB 0x6B28 +#define RHD_D2OVL_KEY_RANGE_ALPHA 0x6B2C + +#endif /* R600_H */ Property changes on: trunk/vidix/vidix/drivers/radeonhd.h ___________________________________________________________________ Added: svn:eol-style + native Added: trunk/vidix/vidix/drivers/radeonhd_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeonhd_vid.c (rev 0) +++ trunk/vidix/vidix/drivers/radeonhd_vid.c 2008-12-02 17:55:08 UTC (rev 337) @@ -0,0 +1,1123 @@ +/* + rhd_vid - VIDIX based video driver for RadeonHD chips. + Copyrights 2008 Nick Kurshev. + Licence: GPL +*/ + +#include <errno.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <math.h> +#include <inttypes.h> +#include <sys/mman.h> +#include "config.h" +#include "bswap.h" +#include "libdha/pci_ids.h" +#include "libdha/pci_names.h" +#include "vidix.h" +#include "fourcc.h" +#include "libdha/libdha.h" +#include "radeonhd.h" + +#define RADEON_MSG "RadeonHD_vid:" +#define RADEON_ASSERT(msg) printf(RADEON_MSG"################# FATAL:"msg); + +#define VIDIX_STATIC r600_ + +//#undef RADEON_ENABLE_BM /* unfinished stuff. May corrupt your filesystem ever */ +#undef RADEON_ENABLE_BM + +#ifdef RADEON_ENABLE_BM +static void * radeon_dma_desc_base = 0; +static unsigned long bus_addr_dma_desc = 0; +static unsigned long *dma_phys_addrs = 0; +#pragma pack(1) +typedef struct +{ + uint32_t framebuf_offset; + uint32_t sys_addr; + uint32_t command; + uint32_t reserved; +} bm_list_descriptor; +#pragma pack() +#endif + +#define VERBOSE_LEVEL 0 +static int __verbose = 0; + +typedef struct ovl_registers_s { +uint32_t CRTC_H_TOTAL; +uint32_t CRTC_V_TOTAL; +uint32_t GRPH_ENABLE; +uint32_t GRPH_CONTOL; +uint32_t GRPH_PRIMARY_SURFACE_ADDRESS; +uint32_t GRPH_SECONDARY_SURFACE_ADDRESS; +uint32_t OVL_ENABLE; +uint32_t OVL_CONTROL1; +uint32_t OVL_CONTROL2; +uint32_t OVL_SWAP_CNTL; +uint32_t OVL_SURFACE_ADDRESS; +uint32_t OVL_PITCH; +uint32_t OVL_SURFACE_OFFSET_X; +uint32_t OVL_SURFACE_OFFSET_Y; +uint32_t OVL_START; +uint32_t OVL_END; +uint32_t OVL_UPDATE; +uint32_t OVL_SURFACE_ADDRESS_INUSE; +uint32_t OVL_DFQ_CONTROL; +uint32_t OVL_DFQ_STATUS; +uint32_t OVL_COLOR_MATIX_TANSFORM_CNTL; +uint32_t OVL_COLOR_MATIX_TANSFORM_EN; +uint32_t OVL_MATRIX_COEFF_1_1; +uint32_t OVL_MATRIX_COEFF_1_2; +uint32_t OVL_MATRIX_COEFF_1_3; +uint32_t OVL_MATRIX_COEFF_1_4; +uint32_t OVL_MATRIX_COEFF_2_1; +uint32_t OVL_MATRIX_COEFF_2_2; +uint32_t OVL_MATRIX_COEFF_2_3; +uint32_t OVL_MATRIX_COEFF_2_4; +uint32_t OVL_MATRIX_COEFF_3_1; +uint32_t OVL_MATRIX_COEFF_3_2; +uint32_t OVL_MATRIX_COEFF_3_3; +uint32_t OVL_MATRIX_COEFF_3_4; +uint32_t OVL_PWL_TRANSFORM_EN; +uint32_t OVL_0TOF; +uint32_t OVL_10TO1F; +uint32_t OVL_20TO3F; +uint32_t OVL_40TO7F; +uint32_t OVL_80TOBF; +uint32_t OVL_C0TOFF; +uint32_t OVL_100TO13F; +uint32_t OVL_140TO17F; +uint32_t OVL_180TO1BF; +uint32_t OVL_1C0TO1FF; +uint32_t OVL_200TO23F; +uint32_t OVL_240TO27F; +uint32_t OVL_280TO2BF; +uint32_t OVL_2C0TO2FF; +uint32_t OVL_300TO3FF; +uint32_t OVL_340TO37F; +uint32_t OVL_380TO3BF; +uint32_t OVL_3C0TO3FF; +uint32_t OVL_KEY_CONTOL; +uint32_t GRPH_ALPHA; +uint32_t OVL_ALPHA; +uint32_t OVL_ALPHA_CONTROL; +uint32_t GRPH_KEY_RANGE_RED; +uint32_t GRPH_KEY_RANGE_GREEN; +uint32_t GRPH_KEY_RANGE_BLUE; +uint32_t GRPH_KEY_RANGE_ALPHA; +uint32_t OVL_KEY_RANGE_RED_CR; +uint32_t OVL_KEY_RANGE_GREEN_Y; +uint32_t OVL_KEY_RANGE_BLUE_CB; +uint32_t OVL_KEY_RANGE_ALPHA; +}ovl_registers_t; +static ovl_registers_t ovl; + +static void route_secondary(void) { + ovl.CRTC_H_TOTAL=RHD_D1CRTC_H_TOTAL; + ovl.CRTC_V_TOTAL=RHD_D1CRTC_V_TOTAL; + ovl.GRPH_ENABLE=RHD_D1GRPH_ENABLE; + ovl.GRPH_CONTOL=RHD_D1GRPH_CONTOL; + ovl.GRPH_PRIMARY_SURFACE_ADDRESS=RHD_D1GRPH_PRIMARY_SURFACE_ADDRESS; + ovl.GRPH_SECONDARY_SURFACE_ADDRESS=RHD_D1GRPH_SECONDARY_SURFACE_ADDRESS; + ovl.OVL_ENABLE=RHD_D1OVL_ENABLE; + ovl.OVL_CONTROL1=RHD_D1OVL_CONTROL1; + ovl.OVL_CONTROL2=RHD_D1OVL_CONTROL2; + ovl.OVL_SWAP_CNTL=RHD_D1OVL_SWAP_CNTL; + ovl.OVL_SURFACE_ADDRESS=RHD_D1OVL_SURFACE_ADDRESS; + ovl.OVL_PITCH=RHD_D1OVL_PITCH; + ovl.OVL_SURFACE_OFFSET_X=RHD_D1OVL_SURFACE_OFFSET_X; + ovl.OVL_SURFACE_OFFSET_Y=RHD_D1OVL_SURFACE_OFFSET_Y; + ovl.OVL_START=RHD_D1OVL_START; + ovl.OVL_END=RHD_D1OVL_END; + ovl.OVL_UPDATE=RHD_D1OVL_UPDATE; + ovl.OVL_SURFACE_ADDRESS_INUSE=RHD_D1OVL_SURFACE_ADDRESS_INUSE; + ovl.OVL_DFQ_CONTROL=RHD_D1OVL_DFQ_CONTROL; + ovl.OVL_DFQ_STATUS=RHD_D1OVL_DFQ_STATUS; + ovl.OVL_COLOR_MATIX_TANSFORM_CNTL=RHD_D1OVL_COLOR_MATIX_TANSFORM_CNTL; + ovl.OVL_COLOR_MATIX_TANSFORM_EN=RHD_D1OVL_COLOR_MATIX_TANSFORM_EN; + ovl.OVL_MATRIX_COEFF_1_1=RHD_D1OVL_MATRIX_COEFF_1_1; + ovl.OVL_MATRIX_COEFF_1_2=RHD_D1OVL_MATRIX_COEFF_1_2; + ovl.OVL_MATRIX_COEFF_1_3=RHD_D1OVL_MATRIX_COEFF_1_3; + ovl.OVL_MATRIX_COEFF_1_4=RHD_D1OVL_MATRIX_COEFF_1_4; + ovl.OVL_MATRIX_COEFF_2_1=RHD_D1OVL_MATRIX_COEFF_2_1; + ovl.OVL_MATRIX_COEFF_2_2=RHD_D1OVL_MATRIX_COEFF_2_2; + ovl.OVL_MATRIX_COEFF_2_3=RHD_D1OVL_MATRIX_COEFF_2_3; + ovl.OVL_MATRIX_COEFF_2_4=RHD_D1OVL_MATRIX_COEFF_2_4; + ovl.OVL_MATRIX_COEFF_3_1=RHD_D1OVL_MATRIX_COEFF_3_1; + ovl.OVL_MATRIX_COEFF_3_2=RHD_D1OVL_MATRIX_COEFF_3_2; + ovl.OVL_MATRIX_COEFF_3_3=RHD_D1OVL_MATRIX_COEFF_3_3; + ovl.OVL_MATRIX_COEFF_3_4=RHD_D1OVL_MATRIX_COEFF_3_4; + ovl.OVL_PWL_TRANSFORM_EN=RHD_D1OVL_PWL_TRANSFORM_EN; + ovl.OVL_0TOF=RHD_D1OVL_0TOF; + ovl.OVL_10TO1F=RHD_D1OVL_10TO1F; + ovl.OVL_20TO3F=RHD_D1OVL_20TO3F; + ovl.OVL_40TO7F=RHD_D1OVL_40TO7F; + ovl.OVL_80TOBF=RHD_D1OVL_80TOBF; + ovl.OVL_C0TOFF=RHD_D1OVL_C0TOFF; + ovl.OVL_100TO13F=RHD_D1OVL_100TO13F; + ovl.OVL_140TO17F=RHD_D1OVL_140TO17F; + ovl.OVL_180TO1BF=RHD_D1OVL_180TO1BF; + ovl.OVL_1C0TO1FF=RHD_D1OVL_1C0TO1FF; + ovl.OVL_200TO23F=RHD_D1OVL_200TO23F; + ovl.OVL_240TO27F=RHD_D1OVL_240TO27F; + ovl.OVL_280TO2BF=RHD_D1OVL_280TO2BF; + ovl.OVL_2C0TO2FF=RHD_D1OVL_2C0TO2FF; + ovl.OVL_300TO3FF=RHD_D1OVL_300TO3FF; + ovl.OVL_340TO37F=RHD_D1OVL_340TO37F; + ovl.OVL_380TO3BF=RHD_D1OVL_380TO3BF; + ovl.OVL_3C0TO3FF=RHD_D1OVL_3C0TO3FF; + ovl.OVL_KEY_CONTOL=RHD_D1OVL_KEY_CONTOL; + ovl.GRPH_ALPHA=RHD_D1GRPH_ALPHA; + ovl.OVL_ALPHA=RHD_D1OVL_ALPHA; + ovl.OVL_ALPHA_CONTROL=RHD_D1OVL_ALPHA_CONTROL; + ovl.GRPH_KEY_RANGE_RED=RHD_D1GRPH_KEY_RANGE_RED; + ovl.GRPH_KEY_RANGE_GREEN=RHD_D1GRPH_KEY_RANGE_GREEN; + ovl.GRPH_KEY_RANGE_BLUE=RHD_D1GRPH_KEY_RANGE_BLUE; + ovl.GRPH_KEY_RANGE_ALPHA=RHD_D1GRPH_KEY_RANGE_ALPHA; + ovl.OVL_KEY_RANGE_RED_CR=RHD_D1OVL_KEY_RANGE_RED_CR; + ovl.OVL_KEY_RANGE_GREEN_Y=RHD_D1OVL_KEY_RANGE_GREEN_Y; + ovl.OVL_KEY_RANGE_BLUE_CB=RHD_D1OVL_KEY_RANGE_BLUE_CB; + ovl.OVL_KEY_RANGE_ALPHA=RHD_D1OVL_KEY_RANGE_ALPHA; +} + +static void route_primary(void) { + ovl.CRTC_H_TOTAL=RHD_D2CRTC_H_TOTAL; + ovl.CRTC_V_TOTAL=RHD_D2CRTC_V_TOTAL; + ovl.GRPH_ENABLE=RHD_D2GRPH_ENABLE; + ovl.GRPH_CONTOL=RHD_D2GRPH_CONTOL; + ovl.GRPH_PRIMARY_SURFACE_ADDRESS=RHD_D2GRPH_PRIMARY_SURFACE_ADDRESS; + ovl.GRPH_SECONDARY_SURFACE_ADDRESS=RHD_D2GRPH_SECONDARY_SURFACE_ADDRESS; + ovl.OVL_ENABLE=RHD_D2OVL_ENABLE; + ovl.OVL_CONTROL1=RHD_D2OVL_CONTROL1; + ovl.OVL_CONTROL2=RHD_D2OVL_CONTROL2; + ovl.OVL_SWAP_CNTL=RHD_D2OVL_SWAP_CNTL; + ovl.OVL_SURFACE_ADDRESS=RHD_D2OVL_SURFACE_ADDRESS; + ovl.OVL_PITCH=RHD_D2OVL_PITCH; + ovl.OVL_SURFACE_OFFSET_X=RHD_D2OVL_SURFACE_OFFSET_X; + ovl.OVL_SURFACE_OFFSET_Y=RHD_D2OVL_SURFACE_OFFSET_Y; + ovl.OVL_START=RHD_D2OVL_START; + ovl.OVL_END=RHD_D2OVL_END; + ovl.OVL_UPDATE=RHD_D2OVL_UPDATE; + ovl.OVL_SURFACE_ADDRESS_INUSE=RHD_D2OVL_SURFACE_ADDRESS_INUSE; + ovl.OVL_DFQ_CONTROL=RHD_D2OVL_DFQ_CONTROL; + ovl.OVL_DFQ_STATUS=RHD_D2OVL_DFQ_STATUS; + ovl.OVL_COLOR_MATIX_TANSFORM_CNTL=RHD_D2OVL_COLOR_MATIX_TANSFORM_CNTL; + ovl.OVL_COLOR_MATIX_TANSFORM_EN=RHD_D2OVL_COLOR_MATIX_TANSFORM_EN; + ovl.OVL_MATRIX_COEFF_1_1=RHD_D2OVL_MATRIX_COEFF_1_1; + ovl.OVL_MATRIX_COEFF_1_2=RHD_D2OVL_MATRIX_COEFF_1_2; + ovl.OVL_MATRIX_COEFF_1_3=RHD_D2OVL_MATRIX_COEFF_1_3; + ovl.OVL_MATRIX_COEFF_1_4=RHD_D2OVL_MATRIX_COEFF_1_4; + ovl.OVL_MATRIX_COEFF_2_1=RHD_D2OVL_MATRIX_COEFF_2_1; + ovl.OVL_MATRIX_COEFF_2_2=RHD_D2OVL_MATRIX_COEFF_2_2; + ovl.OVL_MATRIX_COEFF_2_3=RHD_D2OVL_MATRIX_COEFF_2_3; + ovl.OVL_MATRIX_COEFF_2_4=RHD_D2OVL_MATRIX_COEFF_2_4; + ovl.OVL_MATRIX_COEFF_3_1=RHD_D2OVL_MATRIX_COEFF_3_1; + ovl.OVL_MATRIX_COEFF_3_2=RHD_D2OVL_MATRIX_COEFF_3_2; + ovl.OVL_MATRIX_COEFF_3_3=RHD_D2OVL_MATRIX_COEFF_3_3; + ovl.OVL_MATRIX_COEFF_3_4=RHD_D2OVL_MATRIX_COEFF_3_4; + ovl.OVL_PWL_TRANSFORM_EN=RHD_D2OVL_PWL_TRANSFORM_EN; + ovl.OVL_0TOF=RHD_D2OVL_0TOF; + ovl.OVL_10TO1F=RHD_D2OVL_10TO1F; + ovl.OVL_20TO3F=RHD_D2OVL_20TO3F; + ovl.OVL_40TO7F=RHD_D2OVL_40TO7F; + ovl.OVL_80TOBF=RHD_D2OVL_80TOBF; + ovl.OVL_C0TOFF=RHD_D2OVL_C0TOFF; + ovl.OVL_100TO13F=RHD_D2OVL_100TO13F; + ovl.OVL_140TO17F=RHD_D2OVL_140TO17F; + ovl.OVL_180TO1BF=RHD_D2OVL_180TO1BF; + ovl.OVL_1C0TO1FF=RHD_D2OVL_1C0TO1FF; + ovl.OVL_200TO23F=RHD_D2OVL_200TO23F; + ovl.OVL_240TO27F=RHD_D2OVL_240TO27F; + ovl.OVL_280TO2BF=RHD_D2OVL_280TO2BF; + ovl.OVL_2C0TO2FF=RHD_D2OVL_2C0TO2FF; + ovl.OVL_300TO3FF=RHD_D2OVL_300TO3FF; + ovl.OVL_340TO37F=RHD_D2OVL_340TO37F; + ovl.OVL_380TO3BF=RHD_D2OVL_380TO3BF; + ovl.OVL_3C0TO3FF=RHD_D2OVL_3C0TO3FF; + ovl.OVL_KEY_CONTOL=RHD_D2OVL_KEY_CONTOL; + ovl.GRPH_ALPHA=RHD_D2GRPH_ALPHA; + ovl.OVL_ALPHA=RHD_D2OVL_ALPHA; + ovl.OVL_ALPHA_CONTROL=RHD_D2OVL_ALPHA_CONTROL; + ovl.GRPH_KEY_RANGE_RED=RHD_D2GRPH_KEY_RANGE_RED; + ovl.GRPH_KEY_RANGE_GREEN=RHD_D2GRPH_KEY_RANGE_GREEN; + ovl.GRPH_KEY_RANGE_BLUE=RHD_D2GRPH_KEY_RANGE_BLUE; + ovl.GRPH_KEY_RANGE_ALPHA=RHD_D2GRPH_KEY_RANGE_ALPHA; + ovl.OVL_KEY_RANGE_RED_CR=RHD_D2OVL_KEY_RANGE_RED_CR; + ovl.OVL_KEY_RANGE_GREEN_Y=RHD_D2OVL_KEY_RANGE_GREEN_Y; + ovl.OVL_KEY_RANGE_BLUE_CB=RHD_D2OVL_KEY_RANGE_BLUE_CB; + ovl.OVL_KEY_RANGE_ALPHA=RHD_D2OVL_KEY_RANGE_ALPHA; +} + +typedef struct bes_registers_s +{ + /* base address of yuv framebuffer */ + uint32_t fourcc; + uint32_t control1; + uint32_t control2; + uint32_t swap_cntl; + uint32_t dest_bpp; + /* YUV BES registers */ + uint32_t y_x_start; + uint32_t y_x_end; + uint32_t vid_buf_pitch0_value; + uint32_t vid_buf_pitch1_value; + uint32_t base_addr; + uint32_t vid_buf_base_adrs_y[VID_PLAY_MAXFRAMES]; + uint32_t vid_buf_base_adrs_u[VID_PLAY_MAXFRAMES]; + uint32_t vid_buf_base_adrs_v[VID_PLAY_MAXFRAMES]; + uint32_t vid_nbufs; + + uint32_t key_cntl; + uint32_t test; + /* Configurable stuff */ + int double_buff; + + int brightness; + int saturation; + + int ckey_on; + uint32_t graphics_key_clr; + uint32_t graphics_key_msk; + uint32_t ckey_cntl; + uint32_t merge_cntl; + + int deinterlace_on; + uint32_t deinterlace_pattern; + unsigned chip_flags; +} bes_registers_t; + +typedef struct video_registers_s +{ + const char * sname; + uint32_t name; + uint32_t value; +}video_registers_t; + +static bes_registers_t besr; +#define DECLARE_VREG(name) { #name, name, 0 } +static video_registers_t vregs[] = +{ +}; + +typedef struct ati_card_ids_s +{ + unsigned short id; + unsigned flags; +}ati_card_ids_t; + +#define R_5X0 0x00000010 +#define R_6X0 0x00000020 +#define R_7X0 0x00000040 +#define R_PCIE 0x04000000 + +static const ati_card_ids_t ati_card_ids[] = +{ + /* R500 */ + { DEVICE_ATI_RV505_RADEON_X1550, R_5X0|R_PCIE }, + { DEVICE_ATI_RV505_RADEON_X15502, R_5X0|R_PCIE }, + { DEVICE_ATI_RV505_CE_RADEON, R_5X0|R_PCIE }, + { DEVICE_ATI_RV505_RADEON_X15503, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_X1300, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_X13002, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515LE_RADEON_X13002, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_X13004, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515LE_RADEON_X1300, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515GL_FIREGL_V3300, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515GL_FIREGL_V33002, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515GL_FIREGL_V3350, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515GL_FIREGL_V33502, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_X13003, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_X1600, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_PRO_RADEON, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_PRO_RADEON2, R_5X0|R_PCIE }, + { DEVICE_ATI_RADEON_MOBILITY_X1400, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_MOBILITY, R_5X0|R_PCIE }, + { DEVICE_ATI_RV515_RADEON_X1300, R_5X0|R_PCIE }, + { DEVICE_ATI_M52_MOBILITY_RADEON, R_5X0|R_PCIE }, + { DEVICE_ATI_M52_MOBILITY_RADEON2, R_5X0|R_PCIE }, + { DEVICE_ATI_M52_MOBILITY_RADEON3, R_5X0|R_PCIE }, + { DEVICE_ATI_M52_MOBILITY_RADEON4, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1300_X1550, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1300_X15502, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1300_X15503, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1300_X15504, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_XT_RADEON, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1550, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_MOBILITY_RADEON, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516LE_RADEON_X1550, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_XT_RADEON2, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1300, R_5X0|R_PCIE }, + { DEVICE_ATI_RV516_RADEON_X1300_X15505, R_5X0|R_PCIE }, + { DEVICE_ATI_R520GL_FIREGL_V7200, R_5X0 }, + { DEVICE_ATI_R520_FIREGL, R_5X0 }, + { DEVICE_ATI_FIREMV_2250, R_5X0 }, + { DEVICE_ATI_FIREMV_2250_SECONDARY, R_5X0 }, + { DEVICE_ATI_M56P_RADEON_MOBILITY, R_5X0 }, + { DEVICE_ATI_M56GL_MOBILITY_FIREGL, R_5X0 }, + { DEVICE_ATI_M56GL_MOBILITY_FIREGL2, R_5X0 }, + { DEVICE_ATI_M58_MOBILITY_FIREGL2, R_5X0 }, + { DEVICE_ATI_M58_RADEON_MOBILITY2, R_5X0 }, + { DEVICE_ATI_M64_S_MOBILITY_RADEON, R_5X0 }, + { DEVICE_ATI_MOBILITY_RADEON_X2300, R_5X0 }, + { DEVICE_ATI_M62CSP64_MOBILITY_RADEON, R_5X0 }, + { DEVICE_ATI_M64CSP128_MOBILITY_RADEON, R_5X0 }, + { DEVICE_ATI_M66_P_MOBILITY_RADEON, R_5X0 }, + { DEVICE_ATI_M66_XT_MOBILITY_RADEON, R_5X0 }, + { DEVICE_ATI_M71_MOBILITY_RADEON, R_5X0 }, + { DEVICE_ATI_M71_MOBILITY_RADEON2, R_5X0 }, + { DEVICE_ATI_R520_RADEON_X18002, R_5X0 }, + { DEVICE_ATI_R520_RADEON_X18003, R_5X0 }, + { DEVICE_ATI_R520_RADEON_X18004, R_5X0 }, + { DEVICE_ATI_R520_RADEON_X18005, R_5X0 }, + { DEVICE_ATI_R520_RADEON_X18006, R_5X0 }, + { DEVICE_ATI_R520_RADEON_X18007, R_5X0 }, + { DEVICE_ATI_R520GL_FIREGL_V72002, R_5X0 }, + { DEVICE_ATI_RV530_RADEON_X1600, R_5X0 }, + { DEVICE_ATI_RV530_RADEON_X16002, R_5X0 }, + { DEVICE_ATI_RV530_RADEON_X16003, R_5X0 }, + { DEVICE_ATI_RV530_RADEON_X16004, R_5X0 }, + { DEVICE_ATI_RADEON_X1650_PRO, R_5X0 }, + { DEVICE_ATI_RV530LE_RADEON_X1600_X1650, R_5X0 }, + { DEVICE_ATI_RV535_RADEON_X1650, R_5X0 }, + { DEVICE_ATI_RV530LE_RADEON_X1600, R_5X0 }, + { DEVICE_ATI_RV530LE_RADEON_X16002, R_5X0 }, + { DEVICE_ATI_RADEON_X1650_PRO2, R_5X0 }, + { DEVICE_ATI_RV530LE_RADEON_X1650, R_5X0 }, + { DEVICE_ATI_RV535_RADEON_X16502, R_5X0 }, + { DEVICE_ATI_RV570_RADEON_X19502, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X1900, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19002, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19003, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19004, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19005, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19006, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19007, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19008, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X19009, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190010, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190011, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190012, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190013, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190014, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190015, R_5X0 }, + { DEVICE_ATI_R580_RADEON_X190016, R_5X0 }, + { DEVICE_ATI_R580_AMD_STREAM, R_5X0 }, + { DEVICE_ATI_R580_AMD_STREAM2, R_5X0 }, + { DEVICE_ATI_RADEON_X1950_GT, R_5X0 }, + { DEVICE_ATI_RADEON_X1650_XT, R_5X0|R_PCIE }, + { DEVICE_ATI_RADEON_X1650_SERIES, R_5X0 }, + { DEVICE_ATI_RADEON_X1950_GT2, R_5X0 }, + { DEVICE_ATI_RADEON_X1650_XT2, R_5X0|R_PCIE }, + { DEVICE_ATI_RADEON_X1650_SERIES2, R_5X0 }, + { DEVICE_ATI_RADEON_9100_PRO, R_5X0 }, + { DEVICE_ATI_RADEON_MOBILITY_9200, R_5X0 }, +/* R600 */ + { DEVICE_ATI_R600_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_R600_RADEON_HD2, R_6X0|R_PCIE }, + { DEVICE_ATI_R600GL_FIRE_GL, R_6X0|R_PCIE }, + { DEVICE_ATI_R600GL_FIRE_GL2, R_6X0|R_PCIE }, + { DEVICE_ATI_R600_FIREGL_V7600, R_6X0|R_PCIE }, + { DEVICE_ATI_RV610_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_RV610_VIDEO_DEVICE, R_6X0|R_PCIE }, + { DEVICE_ATI_RV610_LE_AGP, R_6X0 }, + { DEVICE_ATI_RV_610LE_PCI, R_6X0 }, + { DEVICE_ATI_RADEON_HD_2400, R_6X0|R_PCIE }, + { DEVICE_ATI_RADEON_E2400, R_6X0|R_PCIE }, + { DEVICE_ATI_RADEON_HD_3870, R_6X0|R_PCIE }, + { DEVICE_ATI_RV620_LE_AGP, R_6X0 }, + { DEVICE_ATI_RV620_ATI_FIREGL, R_6X0|R_PCIE }, + { DEVICE_ATI_RV620_FIREPRO_2260, R_6X0|R_PCIE }, + { DEVICE_ATI_RV620_FIREPRO_22602, R_6X0|R_PCIE }, + { DEVICE_ATI_RADEON_HD_3200, R_6X0|R_PCIE }, + { DEVICE_ATI_RADEON_3100_GRAPHICS, R_6X0|R_PCIE }, + { DEVICE_ATI_RS780M_RS780MN_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_RS780MC_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_RADEON_HD_3300, R_6X0|R_PCIE }, + { DEVICE_ATI_RV_630_XT, R_6X0|R_PCIE }, + { DEVICE_ATI_RV630_PRO_AGP, R_6X0 }, + { DEVICE_ATI_RV630_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_RV630_RADEON_HD2, R_6X0|R_PCIE }, + { DEVICE_ATI_RV630GL_FIREGL_V5600, R_6X0|R_PCIE }, + { DEVICE_ATI_RV630_FIREGL_V3600, R_6X0|R_PCIE }, + { DEVICE_ATI_RV635_PRO_AGP, R_6X0 }, + { DEVICE_ATI_MOBILITY_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD2, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD3, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD4, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD5, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD6, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD7, R_6X0|R_PCIE }, + { DEVICE_ATI_MOBILITY_RADEON_HD8, R_6X0|R_PCIE }, + { DEVICE_ATI_M76_RADEON_MOBILITY, R_6X0|R_PCIE }, + { DEVICE_ATI_M76XT_MOBILITY_RADEON, R_6X0|R_PCIE }, + { DEVICE_ATI_RV670PRO_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_RV670_RADEON_HD, R_6X0|R_PCIE }, + { DEVICE_ATI_RV670_FIREGL_7700, R_6X0|R_PCIE }, + { DEVICE_ATI_RV670_AGP_RADEON, R_6X0 }, + { DEVICE_ATI_RV670_FIRESTREAM_9170, R_6X0|R_PCIE }, + { DEVICE_ATI_M86GL_MOBILITY_FIREGL, R_6X0|R_PCIE }, + { DEVICE_ATI_M88_XT_MOBILITY, R_6X0|R_PCIE }, + { DEVICE_ATI_R680_RADEON_HD, R_6X0|R_PCIE }, + /* R700 */ + { DEVICE_ATI_R700_RADEON_HD, R_7X0|R_PCIE }, + { DEVICE_ATI_R700_RADEON_HD2, R_7X0|R_PCIE }, + { DEVICE_ATI_RV710_RADEON_HD, R_7X0|R_PCIE }, + { DEVICE_ATI_RV710_RADEON_HD2, R_7X0|R_PCIE }, + { DEVICE_ATI_RV730XT_RADEON_HD, R_7X0|R_PCIE }, + { DEVICE_ATI_RV730_PRO_RADEON, R_7X0|R_PCIE }, + { DEVICE_ATI_RV770_RADEON_HD, R_7X0|R_PCIE }, + { DEVICE_ATI_RV770_RADEON_HD2, R_7X0|R_PCIE }, + { DEVICE_ATI_M96_MOBILITY_RADEON, R_7X0|R_PCIE }, + { DEVICE_ATI_M98L_MOBILITY_RADEON, R_7X0|R_PCIE }, + { DEVICE_ATI_M98_XT_MOBILITY, R_7X0|R_PCIE }, + { DEVICE_ATI_RV770_LE_RADEON, R_7X0|R_PCIE }, +}; + +static void * radeon_mmio_base = 0; +static void * radeon_mem_base = 0; +static int32_t radeon_overlay_off = 0; +static uint32_t radeon_ram_size = 0; + +#define GETREG(TYPE,PTR,OFFZ) (*((volatile TYPE*)((PTR)+(OFFZ)))) +#define SETREG(TYPE,PTR,OFFZ,VAL) (*((volatile TYPE*)((PTR)+(OFFZ))))=VAL + +#define INREG8(addr) GETREG(uint8_t,(uint8_t *)(radeon_mmio_base),addr) +#define OUTREG8(addr,val) SETREG(uint8_t,(uint8_t *)(radeon_mmio_base),addr,val) +static inline uint32_t INREG (uint32_t addr) { + uint32_t tmp = GETREG(uint32_t,(uint8_t *)(radeon_mmio_base),addr); + return le2me_32(tmp); +} +#define OUTREG(addr,val) SETREG(uint32_t,(uint8_t *)(radeon_mmio_base),addr,le2me_32(val)) +#define OUTREGP(addr,val,mask) \ + do { \ + unsigned int _tmp = INREG(addr); \ + _tmp &= (mask); \ + _tmp |= (val); \ + OUTREG(addr, _tmp); \ + } while (0) + + +enum radeon_montype +{ + MT_NONE, + MT_CRT, /* CRT-(cathode ray tube) analog monitor. (15-pin VGA connector) */ + MT_LCD, /* Liquid Crystal Display */ + MT_DFP, /* DFP-digital flat panel monitor. (24-pin DVI-I connector) */ + MT_CTV, /* Composite TV out (not in VE) */ + MT_STV /* S-Video TV out (probably in VE only) */ +}; + +typedef struct radeon_info_s +{ + int crtDispType; + int dviDispType; +}rinfo_t; + +static rinfo_t rinfo; + +static char * GET_MON_NAME(int type) +{ + char *pret; + switch(type) + { + case MT_NONE: pret = "no"; break; + case MT_CRT: pret = "CRT"; break; + case MT_DFP: pret = "DFP"; break; + case MT_LCD: pret = "LCD"; break; + case MT_CTV: pret = "CTV"; break; + case MT_STV: pret = "STV"; break; + default: pret = "Unknown"; + } + return pret; +} + +static void radeon_get_moninfo (rinfo_t *rinfo) +{ + unsigned int tmp; + + tmp = INREG(RHD_BIOS_4_SCRATCH); + /* primary DVI port */ + if (tmp & RADEON_DFP2_ATTACHED) + rinfo->dviDispType = MT_DFP; + else if (tmp & RADEON_CRT2_ATTACHED_MASK) + rinfo->dviDispType = MT_CRT; + + /* secondary CRT port */ + if (tmp & RADEON_CRT1_ATTACHED_MASK) + rinfo->crtDispType = MT_CRT; + else if (tmp & RADEON_LCD1_ATTACHED) + rinfo->crtDispType = MT_LCD; + else if (tmp & RADEON_DFP1_ATTACHED) + rinfo->crtDispType = MT_DFP; + else if (tmp & RADEON_TV1_ATTACHED_COMP) + rinfo->crtDispType = MT_CTV; + else if (tmp & RADEON_TV1_ATTACHED_SVIDEO) + rinfo->crtDispType = MT_STV; +} + +static uint32_t radeon_vid_get_dbpp( void ) +{ + uint32_t dbpp,retval; + dbpp = (INREG(ovl.GRPH_CONTOL))& D1GRPH_DEPTH; + switch(dbpp) + { + case 0: retval = 8; break; + case 1: retval = 16; break; + case 2: retval = 32; break; + case 3: retval = 64; break; + default: retval=32; break; + } + return retval; +} + +static uint32_t radeon_get_xres( void ) +{ + uint32_t xres,h_total; + h_total = INREG(ovl.CRTC_H_TOTAL); + xres = h_total & 0x0fff; + return xres + 1; +} + +static uint32_t radeon_get_yres( void ) +{ + uint32_t yres,v_total; + v_total = INREG(ovl.CRTC_V_TOTAL); + yres = v_total & 0x0fff; + return yres + 1; +} + +static void radeon_vid_make_default(void) +{ + besr.deinterlace_pattern = 0x900AAAAA; + besr.deinterlace_on=1; + besr.double_buff=1; + besr.ckey_on=0; + besr.graphics_key_msk=0; + besr.graphics_key_clr=0; +} + +unsigned VIDIX_NAME(vixGetVersion)( void ) { return VIDIX_VERSION; } + +static int find_chip(unsigned chip_id) +{ + unsigned i; + for(i = 0;i < sizeof(ati_card_ids)/sizeof(ati_card_ids_t);i++) + { + if(chip_id == ati_card_ids[i].id) return i; + } + return -1; +} + +static pciinfo_t pci_info; +static int probed=0; + +vidix_capability_t def_cap = +{ + "BES driver for r600 cards", + "Nick Kurshev", + TYPE_OUTPUT | TYPE_FX, + { 0, 0, 0, 0 }, + 8192, + 8192, + 4, + 4, + -1, + FLAG_UPSCALER | FLAG_DOWNSCALER | FLAG_EQUALIZER, + VENDOR_ATI, + 0, + { 0, 0, 0, 0} +}; + + +int VIDIX_NAME(vixProbe)( int verbose,int force ) +{ + pciinfo_t lst[MAX_PCI_DEVICES]; + unsigned i,num_pci; + int err; + __verbose = verbose; + err = pci_scan(lst,&num_pci); + if(err) + { + printf(RADEON_MSG" Error occurred during pci scan: %s\n",strerror(err)); + return err; + } + else + { + err = ENXIO; + for(i=0;i<num_pci;i++) + { + if(lst[i].vendor == VENDOR_ATI) + { + int idx; + const char *dname; + idx = find_chip(lst[i].device); + if(idx == -1 && force == PROBE_NORMAL) continue; + dname = pci_device_name(VENDOR_ATI,lst[i].device); + dname = dname ? dname : "Unknown chip"; + printf(RADEON_MSG" Found chip: %s\n",dname); +#if 0 + if ((lst[i].command & PCI_COMMAND_IO) == 0) + { + printf("[radeon] Device is disabled, ignoring\n"); + continue; + } +#endif + memset(&besr,0,sizeof(bes_registers_t)); + if(force > PROBE_NORMAL) + { + printf(RADEON_MSG" Driver was forced. Was found %sknown chip\n",idx == -1 ? "un" : ""); + if(idx == -1) + printf(RADEON_MSG" Assuming it as RadeonHD\n"); + } + if(idx != -1) besr.chip_flags=ati_card_ids[idx].flags; + def_cap.device_id = lst[i].device; + err = 0; + memcpy(&pci_info,&lst[i],sizeof(pciinfo_t)); + probed=1; + break; + } + } + } + if(err && verbose) printf(RADEON_MSG" Can't find chip\n"); + return err; +} + +typedef struct saved_regs_s +{ + uint32_t ov0_vid_key_clr; + uint32_t ov0_vid_key_msk; + uint32_t ov0_graphics_key_clr; + uint32_t ov0_graphics_key_msk; + uint32_t ov0_key_cntl; + uint32_t disp_merge_cntl; +}saved_regs_t; +static saved_regs_t savreg; + +static void save_regs( void ) +{ +} + +static void restore_regs( void ) +{ +} + +int VIDIX_NAME(vixInit)( const char *args ) +{ + int err; + + if(__verbose>0) printf("[radeon_vid] version %d args='%s'\n", VIDIX_VERSION, args); + + if(!probed) + { + printf(RADEON_MSG" Driver was not probed but is being initializing\n"); + return EINTR; + } + if((radeon_mmio_base = map_phys_mem(pci_info.base2,0xFFFF))==(void *)-1) return ENOMEM; + radeon_ram_size = INREG(RHD_CONFIG_MEMSIZE); + printf(RADEON_MSG" Video memory = %uMb\n",radeon_ram_size/0x100000); + if(radeon_ram_size>0x10000000UL) { + radeon_ram_size=0x10000000UL; + printf(RADEON_MSG" Will use %uMb only\n",radeon_ram_size/0x100000); + } + if((radeon_mem_base = map_phys_mem(pci_info.base0,radeon_ram_size))==(void *)-1) return ENOMEM; + err = mtrr_set_type(pci_info.base0,radeon_ram_size,MTRR_TYPE_WRCOMB); + if(!err) printf(RADEON_MSG" Set write-combining type of video memory\n"); + radeon_vid_make_default(); + { + memset(&rinfo,0,sizeof(rinfo_t)); + radeon_get_moninfo(&rinfo); + printf(RADEON_MSG" DVI port has %s monitor connected\n",GET_MON_NAME(rinfo.dviDispType)); + printf(RADEON_MSG" CRT port has %s monitor connected\n",GET_MON_NAME(rinfo.crtDispType)); + if(rinfo.dviDispType) route_secondary(); + else route_primary(); + printf(RADEON_MSG" Graphics: %ux%ux%ubpp\n",radeon_get_xres(),radeon_get_yres(),radeon_vid_get_dbpp()); + } +#ifdef RADEON_ENABLE_BM + if(bm_open() == 0) + { + if((dma_phys_addrs = malloc(radeon_ram_size*sizeof(unsigned long)/4096)) != 0) + def_cap.flags |= FLAG_DMA | FLAG_EQ_DMA; + else + printf(RADEON_MSG" Can't allocate temopary buffer for DMA\n"); + } + else + if(__verbose) printf(RADEON_MSG" Can't initialize busmastering: %s\n",strerror(errno)); +#endif + save_regs(); + return 0; +} + +void VIDIX_NAME(vixDestroy)( void ) +{ + restore_regs(); + unmap_phys_mem(radeon_mem_base,radeon_ram_size); + unmap_phys_mem(radeon_mmio_base,0xFFFF); + bm_close(); +} + +int VIDIX_NAME(vixGetCapability)(vidix_capability_t *to) +{ + memcpy(to,&def_cap,sizeof(vidix_capability_t)); + return 0; +} + +/* + Full list of fourcc which are supported by Win2K radeon driver: + YUY2, UYVY, DDES, OGLT, OGL2, OGLS, OGLB, OGNT, OGNZ, OGNS, + IF09, YVU9, IMC4, M2IA, IYUV, VBID, DXT1, DXT2, DXT3, DXT4, DXT5 +*/ +typedef struct fourcc_desc_s +{ + uint32_t fourcc; + unsigned max_srcw; +}fourcc_desc_t; + +fourcc_desc_t supported_fourcc[] = +{ + { IMGFMT_RGB16, 8192 }, + { IMGFMT_BGR16, 8192 }, + { IMGFMT_RGB32, 8192 }, + { IMGFMT_BGR32, 8192 } +}; + +__inline__ static int is_supported_fourcc(uint32_t fourcc) +{ + unsigned i; + for(i=0;i<sizeof(supported_fourcc)/sizeof(fourcc_desc_t);i++) + { + if(fourcc==supported_fourcc[i].fourcc) + return 1; + } + return 0; +} + +int VIDIX_NAME(vixQueryFourcc)(vidix_fourcc_t *to) +{ + if(is_supported_fourcc(to->fourcc)) + { + to->depth = VID_DEPTH_1BPP | VID_DEPTH_2BPP | + VID_DEPTH_4BPP | VID_DEPTH_8BPP | + VID_DEPTH_12BPP| VID_DEPTH_15BPP| + VID_DEPTH_16BPP| VID_DEPTH_24BPP| + VID_DEPTH_32BPP; + to->flags = VID_CAP_EXPAND | VID_CAP_SHRINK | VID_CAP_COLORKEY | + VID_CAP_BLEND; + return 0; + } + else to->depth = to->flags = 0; + return ENOSYS; +} + +static void radeon_vid_stop_video( void ) +{ + OUTREG(ovl.OVL_ENABLE,0); +} + +static void radeon_vid_display_video( void ) +{ + OUTREG(ovl.OVL_ENABLE,1); + OUTREG(ovl.OVL_CONTROL1,besr.control1|D1OVL_ARRAY_LINEAR_ALIGNED); + OUTREG(ovl.OVL_CONTROL2,besr.control2); + OUTREG(ovl.OVL_SWAP_CNTL,besr.swap_cntl); + OUTREG(ovl.OVL_SURFACE_ADDRESS,besr.vid_buf_bas... [truncated message content] |
From: <nic...@us...> - 2008-12-02 16:19:10
|
Revision: 336 http://vidix.svn.sourceforge.net/vidix/?rev=336&view=rev Author: nickols_k Date: 2008-12-02 16:19:06 +0000 (Tue, 02 Dec 2008) Log Message: ----------- compilation fixed on some platforms Modified Paths: -------------- trunk/vidix/libdha/libdha.c Modified: trunk/vidix/libdha/libdha.c =================================================================== --- trunk/vidix/libdha/libdha.c 2008-11-04 08:51:25 UTC (rev 335) +++ trunk/vidix/libdha/libdha.c 2008-12-02 16:19:06 UTC (rev 336) @@ -90,7 +90,11 @@ } } devmem_locks++; - return mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED|MAP_32BIT,devmem_fd,base) ; + return mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED +#ifdef MAP_32BIT + |MAP_32BIT +#endif + ,devmem_fd,base) ; } void unmap_phys_mem(void *ptr, unsigned long size) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2008-11-04 08:51:39
|
Revision: 335 http://vidix.svn.sourceforge.net/vidix/?rev=335&view=rev Author: nickols_k Date: 2008-11-04 08:51:25 +0000 (Tue, 04 Nov 2008) Log Message: ----------- Oops Modified Paths: -------------- trunk/vidix/configure Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2008-11-04 08:42:22 UTC (rev 334) +++ trunk/vidix/configure 2008-11-04 08:51:25 UTC (rev 335) @@ -6,6 +6,10 @@ VERSION_MICRO=0 # The simplest configure for the vidix +log(){ + echo "$@" >>"$TMPLOG" +} + check_cmd(){ log "$@" "$@" >>"$TMPLOG" 2>&1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2008-11-04 08:42:27
|
Revision: 334 http://vidix.svn.sourceforge.net/vidix/?rev=334&view=rev Author: nickols_k Date: 2008-11-04 08:42:22 +0000 (Tue, 04 Nov 2008) Log Message: ----------- supress some HW reboots Modified Paths: -------------- trunk/vidix/vidix/drivers/radeon_vid.c Modified: trunk/vidix/vidix/drivers/radeon_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeon_vid.c 2008-10-30 18:48:21 UTC (rev 333) +++ trunk/vidix/vidix/drivers/radeon_vid.c 2008-11-04 08:42:22 UTC (rev 334) @@ -1505,10 +1505,15 @@ } #endif if((radeon_mem_base = map_phys_mem(pci_info.base0,radeon_ram_size))==(void *)-1) return ENOMEM; - radeon_vid_make_default(); printf(RADEON_MSG" Video memory = %uMb\n",radeon_ram_size/0x100000); err = mtrr_set_type(pci_info.base0,radeon_ram_size,MTRR_TYPE_WRCOMB); if(!err) printf(RADEON_MSG" Set write-combining type of video memory\n"); + if((besr.chip_flags&R_FAMILY)>=R_5X0) { + printf(RADEON_MSG" R500+ chips have perfectly redesigned architecture\n" + RADEON_MSG" and currently are not supported by this driver\n"); + return ENOSYS; + } + radeon_vid_make_default(); #ifndef RAGE128 { memset(&rinfo,0,sizeof(rinfo_t)); @@ -1535,7 +1540,7 @@ if(__verbose) printf(RADEON_MSG" Can't initialize busmastering: %s\n",strerror(errno)); #endif save_regs(); - return 0; + return 0; } void VIDIX_NAME(vixDestroy)( void ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2008-10-30 18:48:27
|
Revision: 333 http://vidix.svn.sourceforge.net/vidix/?rev=333&view=rev Author: nickols_k Date: 2008-10-30 18:48:21 +0000 (Thu, 30 Oct 2008) Log Message: ----------- dual-ABI support Modified Paths: -------------- trunk/vidix/configure trunk/vidix/libdha/Makefile trunk/vidix/vidix/Makefile trunk/vidix/vidix/drivers/Makefile Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2008-10-30 17:20:50 UTC (rev 332) +++ trunk/vidix/configure 2008-10-30 18:48:21 UTC (rev 333) @@ -6,13 +6,16 @@ VERSION_MICRO=0 # The simplest configure for the vidix +check_cmd(){ + log "$@" + "$@" >>"$TMPLOG" 2>&1 +} + cc_check() { echo >> "$TMPLOG" cat "$TMPC" >> "$TMPLOG" echo >> "$TMPLOG" - echo "$_cc $_inc_extra $_ld_static $_ld_extra $TMPC -o $TMPO $@" >> "$TMPLOG" - > "$TMPO" - ( "$_cc" $_inc_extra $_ld_static $_ld_extra "$TMPC" -o "$TMPO" "$@" ) >> "$TMPLOG" 2>&1 + check_cmd $_cc $CFLAGS "$@" -c -o $TMPO $TMPC TMP="$?" echo >> "$TMPLOG" echo "ldd $TMPO" >> "$TMPLOG" @@ -98,6 +101,8 @@ data files [PREFIX/share/vidix] --confdir=DIR use this prefix for installing configuration files [same as datadir] + --libdir=DIR use this prefix for installing shared objects + [same as datadir] Use these options if autodetection fails: --with-extraincdir=DIR extra headers in DIR @@ -132,6 +137,7 @@ TMPS="$I/vidix-conf-$RANDOM-$$.S" _cc=gcc +test "$CC" && _cc="$CC" _prefix="/usr/local" # checking for OS name @@ -252,6 +258,9 @@ --confdir=*) _confdir=`echo $ac_option | cut -d '=' -f 2` ;; + --libdir=*) + _libdir=`echo $ac_option | cut -d '=' -f 2` + ;; --with-extraincdir=*) _inc_extra=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'` ;; Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2008-10-30 17:20:50 UTC (rev 332) +++ trunk/vidix/libdha/Makefile 2008-10-30 18:48:21 UTC (rev 333) @@ -82,24 +82,24 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - -mkdir -p $(prefix)/lib + -mkdir -p $(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) - install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(prefix)/lib/$(LIBNAME_SHARED_VERSION) - ln -sf $(LIBNAME_SHARED_VERSION) $(prefix)/lib/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(prefix)/lib/$(LIBNAME_SHARED_MAJOR) + install -D -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_VERSION) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(prefix)/lib/$(LIBNAME_STATIC) + cp -f $(LIBNAME_STATIC) $(LIBDIR)/$(LIBNAME_STATIC) endif uninstall: ifeq ($(VIDIX_BUILD_SHARED),yes) - rm -f $(prefix)/lib/$(LIBNAME_SHARED)* + rm -f $(LIBDIR)/$(LIBNAME_SHARED)* -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - rm -f $(prefix)/lib/$(LIBNAME_STATIC) + rm -f $(LIBDIR)/$(LIBNAME_STATIC) endif ifneq ($(wildcard .depend),) Modified: trunk/vidix/vidix/Makefile =================================================================== --- trunk/vidix/vidix/Makefile 2008-10-30 17:20:50 UTC (rev 332) +++ trunk/vidix/vidix/Makefile 2008-10-30 18:48:21 UTC (rev 333) @@ -8,7 +8,6 @@ LIBNAME_STATIC = $(NAME).a LIBNAME_WIN32 = $(NAME).dll -LIBDIR = $(prefix)/lib INCDIR = $(prefix)/include/vidix SRCS = vidixlib.c @@ -71,12 +70,12 @@ mkdir -p $(LIBDIR) ifeq ($(VIDIX_BUILD_SHARED),yes) install -m 755 -s -p $(LIBNAME_SHARED_VERSION) $(LIBDIR) - ln -sf $(LIBNAME_SHARED_VERSION) $(prefix)/lib/$(LIBNAME_SHARED) - ln -sf $(LIBNAME_SHARED_VERSION) $(prefix)/lib/$(LIBNAME_SHARED_MAJOR) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED) + ln -sf $(LIBNAME_SHARED_VERSION) $(LIBDIR)/$(LIBNAME_SHARED_MAJOR) -$(LDCONFIG) $(LDCONFIG_FLAGS) endif ifeq ($(VIDIX_BUILD_STATIC),yes) - cp -f $(LIBNAME_STATIC) $(prefix)/lib + cp -f $(LIBNAME_STATIC) $(LIBDIR) endif mkdir -p $(INCDIR) Modified: trunk/vidix/vidix/drivers/Makefile =================================================================== --- trunk/vidix/vidix/drivers/Makefile 2008-10-30 17:20:50 UTC (rev 332) +++ trunk/vidix/vidix/drivers/Makefile 2008-10-30 18:48:21 UTC (rev 333) @@ -1,6 +1,6 @@ include ../../config.mak -LIBDIR = $(prefix)/lib/vidix +DRV_LIBDIR = $(LIBDIR)/vidix OLDLIBDIR = $(prefix)/lib/mplayerxp/vidix VIDIX_LIBS = -L../../libdha -ldha @@ -113,13 +113,13 @@ $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend install: - mkdir -p $(LIBDIR) - install -m 755 -p *.so $(LIBDIR) + mkdir -p $(DRV_LIBDIR) + install -m 755 -p *.so $(DRV_LIBDIR) if test -d $(OLDLIBDIR) ; then rm -f $(OLDLIBDIR)/*.so ; rmdir -p --ignore-fail-on-non-empty $(OLDLIBDIR) ; fi uninstall: - rm -f $(LIBDIR)/*.so - rmdir -p --ignore-fail-on-non-empty $(LIBDIR) + rm -f $(DRV_LIBDIR)/*.so + rmdir -p --ignore-fail-on-non-empty $(DRV_LIBDIR) ifneq ($(wildcard .depend),) include .depend This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2008-10-30 17:21:00
|
Revision: 332 http://vidix.svn.sourceforge.net/vidix/?rev=332&view=rev Author: nickols_k Date: 2008-10-30 17:20:50 +0000 (Thu, 30 Oct 2008) Log Message: ----------- support for new ATI chips and improve x86_64 mode Modified Paths: -------------- trunk/vidix/libdha/libdha.c trunk/vidix/vidix/drivers/radeon.h trunk/vidix/vidix/drivers/radeon_vid.c Removed Paths: ------------- trunk/vidix/libdha/oth/pci.db Modified: trunk/vidix/libdha/libdha.c =================================================================== --- trunk/vidix/libdha/libdha.c 2008-10-29 18:55:43 UTC (rev 331) +++ trunk/vidix/libdha/libdha.c 2008-10-30 17:20:50 UTC (rev 332) @@ -90,7 +90,7 @@ } } devmem_locks++; - return mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED,devmem_fd,base) ; + return mmap(0,size,PROT_READ|PROT_WRITE,MAP_SHARED|MAP_32BIT,devmem_fd,base) ; } void unmap_phys_mem(void *ptr, unsigned long size) Deleted: trunk/vidix/libdha/oth/pci.db =================================================================== --- trunk/vidix/libdha/oth/pci.db 2008-10-29 18:55:43 UTC (rev 331) +++ trunk/vidix/libdha/oth/pci.db 2008-10-30 17:20:50 UTC (rev 332) @@ -1,13042 +0,0 @@ -v 0000 Gammagraphx, Inc. 0 -d 00000080 IC pro 1000 GBit Ethernet NIC 1 Noname GBit NIC, separate Linux Drivers available -v 001a Ascend Communications, Inc. 0 -v 001c PEAK-System Technik GmbH 1 -d 001c0001 PCAN-PCI CAN-Bus controller 1 -v 0033 Paradyne corp. 0 -v 003d Lockheed Martin-Marietta Corp 0 -d 003d0124 1 -v 0059 Tiger Jet Network Inc. (Wrong ID) 0 Real TJN ID is e159, but they got it wrong several times --mj -v 0070 Hauppauge computer works Inc. 0 -d 00700003 WinTV PVR-250 1 -d 00700009 WinTV PVR-150 1 -d 00700801 WinTV PVR-150 1 -d 00700807 WinTV PVR-150 1 -d 00704000 WinTV PVR-350 1 -d 00704001 WinTV PVR-250 (v1) 1 -d 00704009 WinTV PVR-250 1 -d 00704800 WinTV PVR-350 1 -d 00704801 WinTV PVR-250 MCE 1 -d 00704803 WinTV PVR-250 1 -d 00708003 WinTV PVR-150 1 -d 00708801 WinTV PVR-150 1 -d 0070c801 WinTV PVR-150 1 -d 0070e807 WinTV PVR-500 MCE (1st tuner) 1 -d 0070e817 WinTV PVR-500 MCE (2nd tuner) 1 -v 0071 Nebula Electronics Ltd. 0 -v 0095 Silicon Image, Inc. (Wrong ID) 0 -d 00950680 Ultra ATA/133 IDE RAID CONTROLLER CARD 0 -v 00a7 Teles AG (Wrong ID) 0 Wrong ID used in subsystem ID of the TELES.S0/PCI 2.x ISDN adapter -v 00f5 BFG Technologies, Inc. 0 -v 0100 Ncipher Corp Ltd 0 -v 0123 General Dynamics 0 -v 018a LevelOne 0 018a is not LevelOne but there is a board misprogrammed -d 018a0106 FPC-0106TX misprogrammed [RTL81xx] 0 -v 01b7 dell 1 -v 021b Compaq Computer Corporation 0 021b is not Compaq but there is a board misprogrammed -d 021b8139 HNE-300 (RealTek RTL8139c) [iPaq Networking] 0 -v 0270 Hauppauge computer works Inc. (Wrong ID) 0 -v 0291 Davicom Semiconductor, Inc. 0 -d 02918212 DM9102A(DM9102AE, SM9102AF) Ethernet 100/10 MBit(Rev 40) 0 -v 0295 nVidia:GeForce 5950 GT (XFX Creation Inc.) 1 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 0295 (rev a1), Model: G71 -\nIRQ: 11 -\nV -d 02950295 GEForce 7950 GT 1 Made by asus (subsystem) -v 02ac SpeedStream 0 SpeedStream is Efficient Networks, Inc, a Siemens Company -d 02ac1012 1012 PCMCIA 10/100 Ethernet Card [RTL81xx] 0 -v 02e1 Club3D 1 01:00.0 VGA compatible controller: nVidia Corporation Unknown device 02e1 (rev a2) - GeForce 7600GS -v 0315 SK-Electronics Co., Ltd. 0 -v 0357 TTTech AG 0 -d 0357000a TTP-Monitoring Card V2.0 0 -v 0403 1 -v 0403 Future Technology Devices International Ltd 1 -v 0432 SCM Microsystems, Inc. 0 -d 04320001 Pluto2 DVB-T Receiver for PCMCIA [EasyWatch MobilSet] 0 -v 045e Microsoft 0 -d 045e006e MN-510 802.11b wireless USB paddle 0 -d 045e00c2 MN-710 wireless USB paddle 0 -d 045e00f4 Lifecam VX-6000 1 -v 0482 Kyocera 0 -v 04cf Myson Century, Inc 0 -d 04cf8818 CS8818 USB2.0-to-ATAPI Bridge Controller with Embedded PHY 0 -v 04e8 SAMSUNG Electronics Co., Ltd. 1 -d 04e86601 SAMSUNG USB Composite Device 1 -d 04e86640 SAMSUNG USB Composite Device 1 -v 04f9 Brother Industries Ltd 1 Printers, MFC and Fax manufacturer. -v 050d Belkin 0 -d 050d001a FSD7000 802.11g PCI Wireless card 0 -d 050d0109 F5U409-CU USB/Serial Portable Adapter 0 -d 050d7050 F5D7050 802.11g Wireless USB Adapter 0 -d 050d705c F5D7050 v4 1 -v 05a9 OmniVision 0 -d 05a905a9 1 -d 05a98519 OV519 series 0 -v 05e3 CyberDoor 0 -d 05e30701 CBD516 0 -v 066f Sigmatel Inc. 0 -d 066f3410 SMTP3410 0 -d 066f3500 SMTP3500 0 -v 0675 Dynalink 0 -d 06751700 IS64PH ISDN Adapter 0 -d 06751702 IS64PH ISDN Adapter 0 -d 06751703 ISDN Adapter (PCI Bus, DV, W) 0 -d 06751704 ISDN Adapter (PCI Bus, D, C) 0 -v 067b Prolific Technology, Inc. 0 -d 067b2303 PL-2303 USB-to-Serial Converter 0 -d 067b3507 PL-3507 Hi-Speed USB & IEEE 1394 Combo to IDE Bridge Controller 0 -v 069d Hughes Network Systems (HNS) 1 -v 0721 Sapphire, Inc. 0 -v 07ca AVerMedia Technologies Inc. 1 -d 07cab808 AVerTV DVB-T Volar (USB 2.0) 1 -v 07e2 ELMEG Communication Systems GmbH 0 -v 0842 NPG, Personal Grand Tecnology 1 -v 08ff AuthenTec 1 -d 08ffafe4 [Anchor] FingerLoc Sensor Module 1 -d 08ffafe4 [Anchor] AF-S2 FingerLoc Sensor Module 1 -v 0925 VIA Technologies, Inc. (Wrong ID) 0 Wrong ID used in subsystem ID of VIA USB controllers. -v 093a PixArt Imaging Inc. 0 -d 093a010e Innovage Mini Digital Camera 1 -d 093a010f SDC-300 Webcam 1 XDC on packaging, SDC on circuit board, cheap webcam -d 093a2468 CIF Single Chip 1 USB Webcam 640x480 -d 093a2608 Maxell MaxCam RotaWeb 1 -v 09c1 Arris 0 -d 09c10704 CM 200E Cable Modem 0 -v 0a89 BREA Technologies Inc 0 -v 0ace ZyDAS 1 -d 0ace1211 (ZD1211)IEEE 802.11b+g USB Adapter 1 -v 0b0b Rhino Equiment Corp. 0 -d 0b0b0105 Rhino R1T1 0 -d 0b0b0205 Rhino R4FXO 0 -d 0b0b0206 RCB4FXO 1 4 Channel FXO analog telphony card -d 0b0b0305 Rhino R4T1 0 -d 0b0b0405 Rhino R8FXX 0 -d 0b0b0406 RCB8FXX 1 8 Channel modular analog telphony card -d 0b0b0505 Rhino R24FXX 0 -d 0b0b0506 Rhino R2T1 0 -d 0b0b0506 RCB24FXS 1 24 Channel FXS analog telphony card -d 0b0b0605 Rhino R2T1 0 -d 0b0b0705 Rhino R24FXS 0 -d 0b0b0706 RCB24FXO 1 24 Channel FXO analog telphony card -d 0b0b0905 R1T3 1 Single T3 Digital Telephony Card -d 0b0b0906 RCB24FXX 1 24 Channel modular analog telphony card -d 0b0b0a06 RCB672FXX 1 672 Channel modular analog telphony card -v 0b49 ASCII Corporation 0 -d 0b49064f Trance Vibrator 0 -v 0ccd TerraTec Electronic GmbH 0 -d 0ccd0038 Cinergy T^2 DVB-T Receiver 0 -v 0e11 Compaq Computer Corporation 0 -d 0e110001 PCI to EISA Bridge 0 -d 0e110002 PCI to ISA Bridge 0 -d 0e110046 Smart Array 64xx 0 -s 0e1100460e11409a Smart Array 641 0 -s 0e1100460e11409b Smart Array 642 0 -s 0e1100460e11409c Smart Array 6400 0 -s 0e1100460e11409d Smart Array 6400 EM 0 -d 0e110049 NC7132 Gigabit Upgrade Module 0 -d 0e11004a NC6136 Gigabit Server Adapter 0 -d 0e11005a Remote Insight II board - Lights-Out 0 -d 0e11007c NC7770 1000BaseTX 0 -d 0e11007d NC6770 1000BaseTX 0 -d 0e110085 NC7780 1000BaseTX 0 -d 0e1100b1 Remote Insight II board - PCI device 0 -d 0e1100bb NC7760 0 -d 0e1100ca NC7771 0 -d 0e1100cb NC7781 0 -d 0e1100cf NC7772 0 -d 0e1100d0 NC7782 0 -d 0e1100d1 NC7783 0 -d 0e1100e3 NC7761 0 -d 0e110508 Netelligent 4/16 Token Ring 0 -d 0e111000 Triflex/Pentium Bridge, Model 1000 0 -d 0e112000 Triflex/Pentium Bridge, Model 2000 0 -d 0e113032 QVision 1280/p 0 -d 0e113033 QVision 1280/p 0 -d 0e113034 QVision 1280/p 0 -d 0e114000 4000 [Triflex] 0 -d 0e114030 SMART-2/P 0 -d 0e114031 SMART-2SL 0 -d 0e114032 Smart Array 3200 0 -d 0e114033 Smart Array 3100ES 0 -d 0e114034 Smart Array 221 0 -d 0e114040 Integrated Array 0 -d 0e114048 Compaq Raid LC2 0 -d 0e114050 Smart Array 4200 0 -d 0e114051 Smart Array 4250ES 0 -d 0e114058 Smart Array 431 0 -d 0e114070 Smart Array 5300 0 -d 0e114080 Smart Array 5i 0 -d 0e114082 Smart Array 532 0 -d 0e114083 Smart Array 5312 0 -d 0e114091 Smart Array 6i 0 -d 0e11409a Smart Array 641 0 -d 0e11409b Smart Array 642 0 -d 0e11409c Smart Array 6400 0 -d 0e11409d Smart Array 6400 EM 0 -d 0e116010 HotPlug PCI Bridge 6010 0 -d 0e117020 USB Controller 0 -d 0e11a0ec Fibre Channel Host Controller 0 -d 0e11a0f0 Advanced System Management Controller 0 -d 0e11a0f3 Triflex PCI to ISA Bridge 0 -d 0e11a0f7 PCI Hotplug Controller 0 -s 0e11a0f78086002a PCI Hotplug Controller A 0 -s 0e11a0f78086002b PCI Hotplug Controller B 0 -d 0e11a0f8 ZFMicro Chipset USB 0 -d 0e11a0fc FibreChannel HBA Tachyon 0 -d 0e11ae10 Smart-2/P RAID Controller 0 -s 0e11ae100e114030 Smart-2/P Array Controller 0 -s 0e11ae100e114031 Smart-2SL Array Controller 0 -s 0e11ae100e114032 Smart Array Controller 0 -s 0e11ae100e114033 Smart 3100ES Array Controller 0 -d 0e11ae29 MIS-L 0 -d 0e11ae2a MPC 0 -d 0e11ae2b MIS-E 0 -d 0e11ae31 System Management Controller 0 -d 0e11ae32 Netelligent 10/100 TX PCI UTP 0 -d 0e11ae33 Triflex Dual EIDE Controller 0 -d 0e11ae34 Netelligent 10 T PCI UTP 0 -d 0e11ae35 Integrated NetFlex-3/P 0 -d 0e11ae40 Netelligent Dual 10/100 TX PCI UTP 0 -d 0e11ae43 Netelligent Integrated 10/100 TX UTP 0 -d 0e11ae69 CETUS-L 0 -d 0e11ae6c Northstar 0 -d 0e11ae6d NorthStar CPU to PCI Bridge 0 -d 0e11b011 Netelligent 10/100 TX Embedded UTP 0 -d 0e11b012 Netelligent 10 T/2 PCI UTP/Coax 0 -d 0e11b01e NC3120 Fast Ethernet NIC 0 -d 0e11b01f NC3122 Fast Ethernet NIC 0 -d 0e11b02f NC1120 Ethernet NIC 0 -d 0e11b030 Netelligent 10/100 TX UTP 0 -d 0e11b04a 10/100 TX PCI Intel WOL UTP Controller 0 -d 0e11b060 Smart Array 5300 Controller 0 -d 0e11b0c6 NC3161 Fast Ethernet NIC 0 -d 0e11b0c7 NC3160 Fast Ethernet NIC 0 -d 0e11b0d7 NC3121 Fast Ethernet NIC 0 -d 0e11b0dd NC3131 Fast Ethernet NIC 0 -d 0e11b0de NC3132 Fast Ethernet Module 0 -d 0e11b0df NC6132 Gigabit Module 0 -d 0e11b0e0 NC6133 Gigabit Module 0 -d 0e11b0e1 NC3133 Fast Ethernet Module 0 -d 0e11b123 NC6134 Gigabit NIC 0 -d 0e11b134 NC3163 Fast Ethernet NIC 0 -d 0e11b13c NC3162 Fast Ethernet NIC 0 -d 0e11b144 NC3123 Fast Ethernet NIC 0 -d 0e11b163 NC3134 Fast Ethernet NIC 0 -d 0e11b164 NC3165 Fast Ethernet Upgrade Module 0 -d 0e11b178 Smart Array 5i/532 0 -s 0e11b1780e114080 Smart Array 5i 0 -s 0e11b1780e114082 Smart Array 532 0 -s 0e11b1780e114083 Smart Array 5312 0 -d 0e11b1a4 NC7131 Gigabit Server Adapter 0 -d 0e11b200 Memory Hot-Plug Controller 0 -d 0e11b203 Integrated Lights Out Controller 0 -d 0e11b204 Integrated Lights Out Processor 0 -s 0e11b2040e11b203 1 -d 0e11f130 NetFlex-3/P ThunderLAN 1.0 0 -d 0e11f150 NetFlex-3/P ThunderLAN 2.3 0 -v 0e21 Cowon Systems, Inc. 0 -v 0e55 HaSoTec GmbH 0 -v 0eac SHF Communication Technologies AG 0 -v 1000 LSI Logic / Symbios Logic 0 Formerly NCR -d 10000001 53c810 0 -s 1000000110001000 LSI53C810AE PCI to SCSI I/O Processor 0 -d 10000002 53c820 0 -d 10000003 53c825 0 -s 1000000310001000 LSI53C825AE PCI to SCSI I/O Processor (Ultra Wide) 0 -d 10000004 53c815 0 -d 10000005 53c810AP 0 -d 10000006 53c860 0 -s 1000000610001000 LSI53C860E PCI to Ultra SCSI I/O Processor 0 -d 1000000a 53c1510 0 -s 1000000a0e11b143 Integrated Dual Channel Wide Ultra2 SCSI Controller 0 -s 1000000a10001000 LSI53C1510 PCI to Dual Channel Wide Ultra2 SCSI Controller (Nonintelligent mode) 0 -d 1000000b 53C896/897 0 -s 1000000b0e116004 EOB003 Series SCSI host adapter 0 -s 1000000b10001000 LSI53C896/7 PCI to Dual Channel Ultra2 SCSI Multifunction Controller 0 -s 1000000b10001010 LSI22910 PCI to Dual Channel Ultra2 SCSI host adapter 0 -s 1000000b10001020 LSI21002 PCI to Dual Channel Ultra2 SCSI host adapter 0 -s 1000000b13e91000 6221L-4U (Dual U2W SCSI, dual 10/100TX, graphics) 0 -d 1000000c 53c895 0 -s 1000000c10001010 LSI8951U PCI to Ultra2 SCSI host adapter 0 -s 1000000c10001020 LSI8952U PCI to Ultra2 SCSI host adapter 0 -s 1000000c1de13906 DC-390U2B SCSI adapter 0 -s 1000000c1de13907 DC-390U2W 0 -d 1000000d 53c885 0 -d 1000000f 53c875 0 -s 1000000f0e117004 Embedded Ultra Wide SCSI Controller 0 -s 1000000f10001000 LSI53C876/E PCI to Dual Channel SCSI Controller 0 -s 1000000f10001010 LSI22801 PCI to Dual Channel Ultra SCSI host adapter 0 -s 1000000f10001020 LSI22802 PCI to Dual Channel Ultra SCSI host adapter 0 -s 1000000f10928760 FirePort 40 Dual SCSI Controller 0 -s 1000000f177510d0 V5D Single Board Computer Wide Ultra SCSI 0 -s 1000000f177510d1 V5D Single Board Computer Ultra SCSI 0 -s 1000000f1de13904 DC390F/U Ultra Wide SCSI Adapter 0 -s 1000000f4c531000 CC7/CR7/CP7/VC7/VP7/VR7 mainboard 0 -s 1000000f4c531050 CT7 mainboard 0 -d 10000010 53C1510 0 -s 100000100e114040 Integrated Array Controller 0 -s 100000100e114048 RAID LC2 Controller 0 -s 1000001010001000 53C1510 PCI to Dual Channel Wide Ultra2 SCSI Controller (Intelligent mode) 0 -d 10000012 53c895a 0 -s 1000001210001000 LSI53C895A PCI to Ultra2 SCSI Controller 0 -d 10000013 53c875a 0 -s 1000001310001000 LSI53C875A PCI to Ultra SCSI Controller 0 -d 10000020 53c1010 Ultra3 SCSI Adapter 0 -s 1000002010001000 LSI53C1010-33 PCI to Dual Channel Ultra160 SCSI Controller 0 -s 10000020107b1040 Server Onboard 53C1010-33 0 -s 100000201de11020 DC-390U3W 0 -d 10000021 53c1010 66MHz Ultra3 SCSI Adapter 0 -s 1000002110001000 LSI53C1000/1000R/1010R/1010-66 PCI to Ultra160 SCSI Controller 0 -s 1000002110001010 Asus TR-DLS onboard 53C1010-66 0 -s 10000021103c1330 Ultra160 SCSI [A7059A] 0 -s 10000021103c1340 Ultra160 SCSI [A7060A] 0 -s 10000021124b1070 PMC-USCSI3 0 -s 100000214c531080 CT8 mainboard 0 -s 100000214c531300 P017 mezzanine (32-bit PMC) 0 -s 100000214c531310 P017 mezzanine (64-bit PMC) 0 -d 10000030 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI 0 -s 100000300e1100da ProLiant ML 350 0 -s 1000003010280123 PowerEdge 2600 0 -s 100000301028014a PowerEdge 1750 0 -s 100000301028016c PowerEdge 1850 MPT Fusion SCSI/RAID (Perc 4) 0 -s 1000003010280183 PowerEdge 1800 0 -s 1000003010281010 LSI U320 SCSI Controller 0 -s 10000030103c12c5 Ultra320 SCSI [A7173A] 0 -s 10000030124b1170 PMC-USCSI320 0 -s 1000003017341052 Primergy RX300 S2 0 -d 10000031 53c1030ZC PCI-X Fusion-MPT Dual Ultra320 SCSI 0 -d 10000032 53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI 0 -s 1000003210001000 LSI53C1020/1030 PCI-X to Ultra320 SCSI Controller 0 -d 10000033 1030ZC_53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI 0 -d 10000040 53c1035 PCI-X Fusion-MPT Dual Ultra320 SCSI 0 -s 1000004010000033 MegaRAID SCSI 320-2XR 0 -s 1000004010000066 MegaRAID SCSI 320-2XRWS 0 -d 10000041 53C1035ZC PCI-X Fusion-MPT Dual Ultra320 SCSI 0 -d 10000050 SAS1064 PCI-X Fusion-MPT SAS 0 -d 10000054 SAS1068 PCI-X Fusion-MPT SAS 0 -d 10000055 SAS1068 PCI-X Fusion-MPT SAS 1 -s 1000005510338336 NEC subsytem for SAS1068 1 Jumper set to RAID - MegaRAID -d 10000056 SAS1064E PCI-Express Fusion-MPT SAS 0 -d 10000058 SAS1068E PCI-Express Fusion-MPT SAS 0 -d 1000005a SAS1066E PCI-Express Fusion-MPT SAS 0 -d 1000005c SAS1064A PCI-X Fusion-MPT SAS 0 -d 1000005e SAS1066 PCI-X Fusion-MPT SAS 0 -d 10000060 MegaRAID SAS 1078 0 -s 1000006010001006 MegaRAID SAS 8888ELP 1 -s 100000601000100a MegaRAID SAS 8708ELP 1 -s 100000601000100e MegaRAID SAS 8884E 1 -s 100000601000100f MegaRAID SAS 8708E 1 -s 1000006010001010 MegaRAID SATA 350-8ELP 1 -s 1000006010001011 MegaRAID SATA 350-4ELP 1 -s 1000006010001012 MegaRAID SAS 8704ELP 1 -s 1000006010140363 MegaRAID SAS PCI Express? ROMB 1 -s 1000006010140363 MegaRAID SAS PCI Express ROMB 1 Please remove previous entries for 1014:0363 -s 1000006010140364 IBM SystemX MegaRAID SAS 8808E 1 -s 1000006010140364 SystemX MegaRAID SAS 8808E 1 Removing string "IBM" from name -s 1000006010140365 IBM SystemX MegaRAID SAS 8884E 1 -s 1000006010140365 SystemX MegaRAID SAS 8884E 1 Removing string "IBM" from name for 1014:0365 -s 1000006010281f0a PERC 6/E Adapter RAID Controller 0 -s 1000006010281f0b PERC 6/i Adapter RAID Controller 0 -s 1000006010281f0c PERC 6/i Integrated RAID Controller 0 -s 1000006010281f0d PERC 6/i Enhanced RAID Controller 0 -s 1000006010281f0d CERC 6/i Adapter RAID Controller 1 Name changed from PERC to CERC -s 1000006010281f11 CERC 6/i Adapter RAID Controller 1 -s 100000601043824d MegaRAID SAS PCI Express? ROMB 1 -s 100000601043824d MegaRAID SAS PCI Express ROMB 1 Please remove previous entries for 1043:824d -s 100000601170002f MegaRAID SAS PCI Express ROMB 1 -s 10000060808634cc Integrated RAID Controller SROMBSAS28E 1 -s 10000060808634cd Integrated Intel? RAID Controller SROMBSAS28E 1 -s 10000060808634cd Integrated RAID Controller SROMBSAS28E 1 Please remove previuos entries for 8086:34cd -d 10000062 SAS1078 PCI-Express Fusion-MPT SAS 0 -s 1000006210000062 SAS1078 PCI-Express Fusion-MPT SAS 0 -d 1000008f 53c875J 0 -s 1000008f10928000 FirePort 40 SCSI Controller 0 -s 1000008f10928760 FirePort 40 Dual SCSI Host Adapter 0 -d 10000407 MegaRAID 0 -s 1000040710000530 MegaRAID 530 SCSI 320-0X RAID Controller 0 -s 1000040710000531 MegaRAID 531 SCSI 320-4X RAID Controller 0 -s 1000040710000532 MegaRAID 532 SCSI 320-2X RAID Controller 0 -s 1000040710280531 PowerEdge Expandable RAID Controller 4/QC 0 -s 1000040710280533 PowerEdge Expandable RAID Controller 4/QC 0 -s 1000040780860530 MegaRAID Intel RAID Controller SRCZCRX 0 -s 1000040780860532 MegaRAID Intel RAID Controller SRCU42X 0 -d 10000408 MegaRAID 0 -s 1000040810000001 MegaRAID SCSI 320-1E RAID Controller 0 -s 1000040810000002 MegaRAID SCSI 320-2E RAID Controller 0 -s 100004081025004d MegaRAID ACER ROMB-2E RAID Controller 0 -s 1000040810280001 PowerEdge RAID Controller PERC4e/SC 0 -s 1000040810280002 PowerEdge RAID Controller PERC4e/DC 0 -s 1000040810280012 PowerEdge RAID Controller RAC4 1 -s 1000040810280015 PowerEdge RAID Controller PERC5 1 -s 1000040810281f03 PowerEdge RAID Controller PERC5 1 -s 1000040817341065 FSC MegaRAID PCI Express ROMB 0 -s 1000040880860002 MegaRAID Intel RAID Controller SRCU42E 0 -d 10000409 MegaRAID 0 -s 1000040910003004 MegaRAID SATA 300-4X RAID Controller 0 -s 1000040910003008 MegaRAID SATA 300-8X RAID Controller 0 -s 1000040980863008 MegaRAID RAID Controller SRCS28X 0 -s 1000040980863431 MegaRAID RAID Controller Alief SROMBU42E 0 -s 1000040980863499 MegaRAID RAID Controller Harwich SROMBU42E 0 -d 10000411 MegaRAID SAS 0 -s 1000041110001001 MegaRAID SAS 8408E 0 -s 1000041110001002 MegaRAID SAS 8480E 0 -s 1000041110001003 MegaRAID SAS 8344ELP 0 -s 1000041110001004 MegaRAID SAS 8308ELP 0 -s 1000041110001008 MegaRAID SAS 84016E 1 MegaRAID SAS adpater ID -s 100004111000100c MegaRAID SATA 300-12E 0 -s 100004111000100d MegaRAID SATA 300-16E 0 -s 1000041110002004 MegaRAID SATA 300-8ELP 0 -s 1000041110002005 MegaRAID SATA 300-4ELP 0 -s 1000041110338287 MegaRAID SAS PCI Express ROMB 0 -s 1000041110543016 MegaRAID SAS RoMB Server 0 -s 1000041117341081 MegaRAID SAS PCI Express ROMB 0 -s 10000411173410a3 MegaRAID SAS PCI Express ROMB 0 -s 1000041180861001 SRCSAS18E RAID Controller 0 -s 1000041180861001 Intel? RAID Controller SRCSAS18E 1 Name changed -s 1000041180861001 Intel RAID Controller SRCSAS18E 1 Name changed. Please remove previous entries for 8086:1001 -s 1000041180861003 SRCSAS144E RAID Controller 0 -s 1000041180861003 Intel? RAID Controller SRCSAS144E 1 Name changed -s 1000041180861003 Intel RAID Controller SRCSAS144E 1 Name changed. Please remove previous entries for 8086:1003 -s 1000041180863500 SROMBSAS18E RAID Controller 0 -s 1000041180863501 SROMBSAS18E RAID Controller 0 -s 1000041180863504 SROMBSAS18E RAID Controller 0 -d 10000413 MegaRAID SAS Verde ZCR 0 -s 1000041310001005 MegaRAID SAS 8300XLP 0 -d 10000621 FC909 Fibre Channel Adapter 0 -d 10000622 FC929 Fibre Channel Adapter 0 -s 1000062210001020 44929 O Dual Fibre Channel card 0 -d 10000623 FC929 LAN 0 -d 10000624 FC919 Fibre Channel Adapter 0 -d 10000625 FC919 LAN 0 -d 10000626 FC929X Fibre Channel Adapter 0 -s 1000062610001010 7202-XP-LC Dual Fibre Channel card 0 -d 10000627 FC929X LAN 0 -d 10000628 FC919X Fibre Channel Adapter 0 -d 10000629 FC919X LAN 0 -d 10000640 FC949X Fibre Channel Adapter 0 -d 10000642 FC939X Fibre Channel Adapter 0 -d 10000646 FC949ES Fibre Channel Adapter 0 -d 10000701 83C885 NT50 DigitalScape Fast Ethernet 0 -d 10000702 Yellowfin G-NIC gigabit ethernet 0 -s 1000070213180000 PEI100X 0 -d 10000804 SA2010 0 -d 10000805 SA2010ZC 0 -d 10000806 SA2020 0 -d 10000807 SA2020ZC 0 -d 10000901 61C102 0 -d 10001000 63C815 0 -d 10001960 MegaRAID 0 -s 1000196010000518 MegaRAID 518 SCSI 320-2 Controller 0 -s 1000196010000520 MegaRAID 520 SCSI 320-1 Controller 0 -s 1000196010000522 MegaRAID 522 i4 133 RAID Controller 0 -s 1000196010000523 MegaRAID SATA 150-6 RAID Controller 0 -s 1000196010004523 MegaRAID SATA 150-4 RAID Controller 0 -s 100019601000a520 MegaRAID ZCR SCSI 320-0 Controller 0 -s 1000196010280518 MegaRAID 518 DELL PERC 4/DC RAID Controller 0 -s 1000196010280520 MegaRAID 520 DELL PERC 4/SC RAID Controller 0 -s 1000196010280531 PowerEdge Expandable RAID Controller 4/QC 0 -s 1000196010280533 PowerEdge Expandable RAID Controller 4/QC 0 -s 1000196080860520 MegaRAIDRAID Controller SRCU41L 0 -s 1000196080860523 MegaRAID RAID Controller SRCS16 0 -v 1001 Kolter Electronic 0 -d 10010010 PCI 1616 Measurement card with 32 digital I/O lines 0 -d 10010011 OPTO-PCI Opto-Isolated digital I/O board 0 -d 10010012 PCI-AD/DA Analogue I/O board 0 -d 10010013 PCI-OPTO-RELAIS Digital I/O board with relay outputs 0 -d 10010014 PCI-Counter/Timer Counter Timer board 0 -d 10010015 PCI-DAC416 Analogue output board 0 -d 10010016 PCI-MFB Analogue I/O board 0 -d 10010017 PROTO-3 PCI Prototyping board 0 -d 10019100 INI-9100/9100W SCSI Host 0 -v 1002 ATI Technologies Inc 0 -v 1002 1 -d 10023150 M24 1P [Radeon Mobility X600] 0 -d 10023152 M22 [Radeon Mobility X300] 0 -d 10023154 M24 1T [FireGL M24 GL] 0 -d 10023e50 RV380 0x3e50 [Radeon X600] 0 -d 10023e54 RV380 0x3e54 [FireGL V3200] 0 -d 10023e70 RV380 [Radeon X600] Secondary 0 -d 10024136 Radeon IGP 320 M 0 -d 10024137 Radeon IGP330/340/350 0 -d 10024144 R300 AD [Radeon 9500 Pro] 0 -d 10024145 R300 AE [Radeon 9700 Pro] 0 -d 10024146 R300 AF [Radeon 9700 Pro] 0 -d 10024147 R300 AG [FireGL Z1/X1] 0 -d 10024148 R350 AH [Radeon 9800] 0 -d 10024149 R350 AI [Radeon 9800] 0 -d 1002414a R350 AJ [Radeon 9800] 0 -d 1002414b R350 AK [Fire GL X2] 0 -d 10024150 RV350 AP [Radeon 9600] 0 -s 1002415010020002 R9600 Pro primary (Asus OEM for HP) 0 -s 1002415010020003 R9600 Pro secondary (Asus OEM for HP) 0 -s 1002415010024722 All-in-Wonder 2006 AGP Edition 0 -s 1002415014584024 Giga-Byte GV-R96128D Primary 0 -s 10024150148c2064 PowerColor R96A-C3N 0 -s 10024150148c2066 PowerColor R96A-C3N 0 -s 10024150174b7c19 Sapphire Atlantis Radeon 9600 Pro 0 -s 10024150174b7c29 GC-R9600PRO Primary [Sapphire] 0 -s 1002415017ee2002 Radeon 9600 256Mb Primary 0 -s 1002415018bc0101 GC-R9600PRO Primary 0 -d 10024151 RV350 AQ [Radeon 9600] 0 -s 100241511043c004 A9600SE 0 -d 10024152 RV350 AR [Radeon 9600] 0 -s 1002415210020002 Radeon 9600XT 0 -s 1002415210024772 All-in-Wonder 9600 XT 0 -s 100241521043c002 Radeon 9600 XT TVD 0 -s 100241521043c01a A9600XT/TD 0 -s 10024152174b7c29 Sapphire Radeon 9600XT 0 -s 1002415217874002 Radeon 9600 XT 0 -d 10024153 RV350 AS [Radeon 9550] 0 -d 10024153 ATI Radeon 9550/ X1050 Series 1 -s 100241531043010c A9550GE/TD 0 -s 100241531462932c 865PE Neo2-V (MS-6788) mainboard 0 -d 10024154 RV350 AT [Fire GL T2] 0 -d 10024155 RV350 AU [Fire GL T2] 0 -d 10024156 RV350 AV [Fire GL T2] 0 -d 10024157 RV350 AW [Fire GL T2] 0 -d 10024158 68800AX [Mach32] 0 -d 10024164 R300 AD [Radeon 9500 Pro] (Secondary) 0 -d 10024165 R300 AE [Radeon 9700 Pro] (Secondary) 0 -d 10024166 R300 AF [Radeon 9700 Pro] (Secondary) 0 -d 10024168 Radeon R350 [Radeon 9800] (Secondary) 0 -d 10024170 RV350 AP [Radeon 9600] (Secondary) 0 -s 1002417010020003 R9600 Pro secondary (Asus OEM for HP) 0 -s 1002417010024723 All-in-Wonder 2006 AGP Edition (Secondary) 0 -s 1002417014584025 Giga-Byte GV-R96128D Secondary 0 -s 10024170148c2067 PowerColor R96A-C3N (Secondary) 0 -s 10024170174b7c28 GC-R9600PRO Secondary [Sapphire] 0 -s 1002417017ee2003 Radeon 9600 256Mb Secondary 0 -s 1002417018bc0100 GC-R9600PRO Secondary 0 -d 10024171 RV350 AQ [Radeon 9600] (Secondary) 0 -s 100241711043c005 A9600SE (Secondary) 0 -d 10024172 RV350 AR [Radeon 9600] (Secondary) 0 -s 1002417210020003 Radeon 9600XT (Secondary) 0 -s 1002417210024773 All-in-Wonder 9600 XT (Secondary) 0 -s 100241721043c003 A9600XT (Secondary) 0 -s 100241721043c01b A9600XT/TD (Secondary) 0 -s 10024172174b7c28 Sapphire Radeon 9600XT (Secondary) 0 -s 1002417217874003 Radeon 9600 XT (Secondary) 0 -d 10024173 RV350 AS [Radeon 9550] (Secondary) 0 -d 10024173 ATI Radeon 9550/ X1050 Series Secondary 1 -s 100241731043010d A9550GE/TD (Secondary) 0 -d 10024237 Radeon 7000 IGP 0 -d 10024242 R200 BB [Radeon All in Wonder 8500DV] 0 -s 10024242100202aa Radeon 8500 AIW DV Edition 0 -d 10024243 R200 BC [Radeon All in Wonder 8500] 0 -d 10024336 Radeon Mobility U1 0 -s 1002433610024336 Pavilion ze4300 ATI Radeon Mobility U1 (IGP 320 M) 0 -s 10024336103c0024 Pavilion ze4400 builtin Video 0 -s 10024336161f2029 eMachines M5312 builtin Video 0 -d 10024337 Radeon IGP 330M/340M/350M 0 -s 100243371014053a ThinkPad R40e (2684-HVG) builtin VGA controller 0 -s 10024337103c0850 Radeon IGP 345M 0 -d 10024341 IXP150 AC'97 Audio Controller 0 -d 10024345 EHCI USB Controller 0 -d 10024347 OHCI USB Controller #1 0 -d 10024348 OHCI USB Controller #2 0 -d 10024349 ATI Dual Channel Bus Master PCI IDE Controller 0 -d 1002434d IXP AC'97 Modem 0 -d 10024353 ATI SMBus 0 -d 10024354 215CT [Mach64 CT] 0 -d 10024358 210888CX [Mach64 CX] 0 -d 10024363 ATI SMBus 0 -d 1002436e ATI 436E Serial ATA Controller 0 -d 10024370 IXP SB400 AC'97 Audio Controller 0 -s 1002437010250079 Aspire 5024WLMMi 0 -s 10024370103c308b MX6125 0 -s 10024370107b0300 MX6421 0 -d 10024371 IXP SB400 PCI-PCI Bridge 0 -s 10024371103c308b MX6125 0 -d 10024372 IXP SB400 SMBus Controller 0 -s 1002437210250080 Aspire 5024WLMMi 0 -s 10024372103c308b MX6125 0 -d 10024373 IXP SB400 USB2 Host Controller 0 -s 1002437310250080 Aspire 5024WLMMi 0 -s 10024373103c308b MX6125 0 -d 10024374 IXP SB400 USB Host Controller 0 -s 10024374103c308b MX6125 0 -d 10024375 IXP SB400 USB Host Controller 0 -s 1002437510250080 Aspire 5024WLMMi 0 -s 10024375103c308b MX6125 0 -d 10024376 Standard Dual Channel PCI IDE Controller ATI 0 -s 1002437610250080 Aspire 5024WLMMi 0 -s 10024376103c308b MX6125 0 -d 10024377 IXP SB400 PCI-ISA Bridge 0 -s 1002437710250080 Aspire 5024WLMi 0 -s 10024377103c308b MX6125 0 -d 10024378 ATI SB400 - AC'97 Modem Controller 0 -s 1002437810250080 Aspire 5024WLMMi 0 -s 10024378103c308b MX6125 0 -d 10024379 ATI 4379 Serial ATA Controller 0 -d 1002437a ATI 437A Serial ATA Controller 0 -s 1002437a10024379 ATI Technologies Inc ATI 4379 Serial ATA Controller 1 -s 1002437a1002437a ATI Technologies Inc ATI 437A Serial ATA Controller 1 -s 1002437a14f18800 Leadtek WinFast TV2000XP Expert 1 -d 1002437b SB450 HDA Audio 0 -s 1002437b173410b8 Fujitsu Siemens Computer GmbH 1 -d 10024380 SB600 Non-Raid-5 SATA 0 -d 10024381 SB600 Raid-5 SATA 0 -d 10024382 SB600 AC97 Audio 0 -d 10024383 SB600 Azalia 0 -d 10024384 SB600 PCI to PCI Bridge 0 -d 10024385 SB600 SMBus 0 -d 10024386 SB600 USB Controller (EHCI) 0 -d 10024387 SB600 USB (OHCI0) 0 -d 10024388 SB600 USB (OHCI1) 0 -d 10024389 SB600 USB (OHCI2) 0 -d 1002438a SB600 USB (OHCI3) 0 -d 1002438b SB600 USB (OHCI4) 0 -d 1002438c SB600 IDE 0 -d 1002438d SB600 PCI to LPC Bridge 0 -d 1002438e SB600 AC97 Modem 0 -d 10024437 Radeon Mobility 7000 IGP 0 -d 10024554 210888ET [Mach64 ET] 0 -d 10024654 Mach64 VT 0 -d 10024742 3D Rage Pro AGP 1X/2X 0 -s 1002474210020040 Rage Pro Turbo AGP 2X 0 -s 1002474210020044 Rage Pro Turbo AGP 2X 0 -s 1002474210020061 Rage Pro AIW AGP 2X 0 -s 1002474210020062 Rage Pro AIW AGP 2X 0 -s 1002474210020063 Rage Pro AIW AGP 2X 0 -s 1002474210020080 Rage Pro Turbo AGP 2X 0 -s 1002474210020084 Rage Pro Turbo AGP 2X 0 -s 1002474210024742 Rage Pro Turbo AGP 2X 0 -s 1002474210028001 Rage Pro Turbo AGP 2X 0 -s 1002474210280082 Rage Pro Turbo AGP 2X 0 -s 1002474210284082 Optiplex GX1 Onboard Display Adapter 0 -s 1002474210288082 Rage Pro Turbo AGP 2X 0 -s 100247421028c082 Rage Pro Turbo AGP 2X 0 -s 1002474280864152 Xpert 98D AGP 2X 0 -s 100247428086464a Rage Pro Turbo AGP 2X 0 -d 10024744 3D Rage Pro AGP 1X 0 -s 1002474410024744 Rage Pro Turbo AGP 0 -d 10024747 3D Rage Pro 0 -d 10024748 Unidentified ATI All-In-Wonder Based Card 1 no drivers or pci id for this one means no one can identify it -d 10024749 3D Rage Pro 0 -s 1002474910020061 Rage Pro AIW 0 -s 1002474910020062 Rage Pro AIW 0 -d 1002474c Rage XC 0 -d 1002474d Rage XL AGP 2X 0 -s 1002474d10020004 Xpert 98 RXL AGP 2X 0 -s 1002474d10020008 Xpert 98 RXL AGP 2X 0 -s 1002474d10020080 Rage XL AGP 2X 0 -s 1002474d10020084 Xpert 98 AGP 2X 0 -s 1002474d1002474d Rage XL AGP 0 -s 1002474d1033806a Rage XL AGP 0 -d 1002474e Rage XC AGP 0 -s 1002474e1002474e Rage XC AGP 0 -d 1002474f Rage XL 0 -s 1002474f10020008 Rage XL 0 -s 1002474f1002474f Rage XL 0 -d 10024750 3D Rage Pro 215GP 0 -s 1002475010020040 Rage Pro Turbo 0 -s 1002475010020044 Rage Pro Turbo 0 -s 1002475010020080 Rage Pro Turbo 0 -s 1002475010020084 Rage Pro Turbo 0 -s 1002475010024750 Rage Pro Turbo 0 -d 10024751 3D Rage Pro 215GQ 0 -d 10024752 Rage XL 0 -s 100247520e11001e Proliant Rage XL 0 -s 1002475210020008 Rage XL 0 -s 1002475210024752 Proliant Rage XL 0 -s 1002475210028008 Rage XL 0 -s 10024752102800ce PowerEdge 1400 0 -s 10024752102800d1 PowerEdge 2550 0 -s 10024752102800d9 PowerEdge 2500 0 -s 1002475210280134 PowerEdge 600SC 0 -s 10024752103c10e1 NetServer Rage XL 0 -s 10024752107b6400 6400 Server 0 -s 100247521734007a Primergy RX300 0 -s 1002475280863411 SDS2 Mainboard 0 -s 1002475280863427 S875WP1-E mainboard 0 -s 1002475280865744 S845WD1-E mainboard 1 -d 10024753 Rage XC 0 -s 1002475310024753 Rage XC 0 -d 10024754 3D Rage I/II 215GT [Mach64 GT] 0 -d 10024755 3D Rage II+ 215GTB [Mach64 GTB] 0 -d 10024756 3D Rage IIC 215IIC [Mach64 GT IIC] 0 -s 1002475610024756 Rage IIC 0 -d 10024757 3D Rage IIC AGP 0 -s 1002475710024757 Rage IIC AGP 0 -s 1002475710280089 Rage 3D IIC 0 -s 100247571028008e PowerEdge 1300 onboard video 0 -s 1002475710284082 Rage 3D IIC 0 -s 1002475710288082 Rage 3D IIC 0 -s 100247571028c082 Rage 3D IIC 0 -d 10024758 210888GX [Mach64 GX] 0 -d 10024759 3D Rage IIC 0 -d 1002475a 3D Rage IIC AGP 0 -s 1002475a10020084 Rage 3D Pro AGP 2x XPERT 98 0 -s 1002475a10020087 Rage 3D IIC 0 -s 1002475a1002475a Rage IIC AGP 0 -d 10024964 Radeon RV250 Id [Radeon 9000] 0 -d 10024965 Radeon RV250 Ie [Radeon 9000] 0 -d 10024966 Radeon RV250 If [Radeon 9000] 0 -s 1002496610f10002 RV250 If [Tachyon G9000 PRO] 0 -s 10024966148c2039 RV250 If [Radeon 9000 Pro "Evil Commando"] 0 -s 1002496615099a00 RV250 If [Radeon 9000 "AT009"] 0 -s 1002496616810040 RV250 If [3D prophet 9000] 0 -s 10024966174b7176 RV250 If [Sapphire Radeon 9000 Pro] 0 -s 10024966174b7192 RV250 If [Radeon 9000 "Atlantis"] 0 -s 1002496617af2005 RV250 If [Excalibur Radeon 9000 Pro] 0 -s 1002496617af2006 RV250 If [Excalibur Radeon 9000] 0 -d 10024967 Radeon RV250 Ig [Radeon 9000] 0 -d 1002496e Radeon RV250 [Radeon 9000] (Secondary) 0 -d 10024a48 R420 JH [Radeon X800] 0 -d 10024a49 R420 JI [Radeon X800PRO] 0 -d 10024a4a R420 JJ [Radeon X800SE] 0 -d 10024a4b R420 JK [Radeon X800] 0 -d 10024a4c R420 JL [Radeon X800] 0 -d 10024a4d R420 JM [FireGL X3] 0 -d 10024a4e M18 JN [Radeon Mobility 9800] 0 -d 10024a50 R420 JP [Radeon X800XT] 0 -d 10024a54 R420 [Radeon X800 VE] 0 -d 10024a69 R420 [Radeon X800 PRO/GTO] (Secondary) 0 -d 10024a6a R420 [Radeon X800] (Secondary) 0 -d 10024a6b R420 [Radeon X800] (Secondary) 0 -d 10024a70 R420 [X800XT-PE] (Secondary) 0 -d 10024a74 R420 [Radeon X800 VE] (Secondary) 0 -d 10024b49 R480 [Radeon X850XT] 0 -d 10024b4b R480 [Radeon X850Pro] 0 -d 10024b4c R481 [Radeon X850XT-PE] 0 -d 10024b69 R480 [Radeon X850XT] (Secondary) 0 -d 10024b6b R480 [Radeon X850Pro] (Secondary) 0 -d 10024b6c R481 [Radeon X850XT-PE] (Secondary) 0 -d 10024c42 3D Rage LT Pro AGP-133 0 -s 10024c420e11b0e7 Rage LT Pro (Compaq Presario 5240) 0 -s 10024c420e11b0e8 Rage 3D LT Pro 0 -s 10024c420e11b10e 3D Rage LT Pro (Compaq Armada 1750) 0 -s 10024c4210020040 Rage LT Pro AGP 2X 0 -s 10024c4210020044 Rage LT Pro AGP 2X 0 -s 10024c4210024c42 Rage LT Pro AGP 2X 0 -s 10024c4210028001 Rage LT Pro AGP 2X 0 -s 10024c4210280085 Rage 3D LT Pro 0 -d 10024c44 3D Rage LT Pro AGP-66 0 -d 10024c45 Rage Mobility M3 AGP 0 -d 10024c46 Rage Mobility M3 AGP 2x 0 -s 10024c46102800b1 Latitude C600 0 -d 10024c47 3D Rage LT-G 215LG 0 -d 10024c49 3D Rage LT Pro 0 -s 10024c4910020004 Rage LT Pro 0 -s 10024c4910020040 Rage LT Pro 0 -s 10024c4910020044 Rage LT Pro 0 -s 10024c4910024c49 Rage LT Pro 0 -d 10024c4d Rage Mobility P/M AGP 2x 0 -s 10024c4d0e11b111 Armada M700 0 -s 10024c4d0e11b160 Armada E500 0 -s 10024c4d10020084 Xpert 98 AGP 2X (Mobility) 0 -s 10024c4d10140154 ThinkPad A20m/A21m 0 -s 10024c4d102800aa Latitude CPt 0 -s 10024c4d102800bb Latitude CPx 0 -s 10024c4d10e110cf Fujitsu Siemens LifeBook C Series 0 -s 10024c4d1179ff00 Satellite 1715XCDS laptop 0 -s 10024c4d13bd1019 PC-AR10 0 -d 10024c4e Rage Mobility L AGP 2x 0 -d 10024c50 3D Rage LT Pro 0 -s 10024c5010024c50 Rage LT Pro 0 -d 10024c51 3D Rage LT Pro 0 -d 10024c52 Rage Mobility P/M 0 -s 10024c5210338112 Versa Note VXi 0 -d 10024c53 Rage Mobility L 0 -d 10024c54 264LT [Mach64 LT] 0 -d 10024c57 Radeon Mobility M7 LW [Radeon Mobility 7500] 0 -s 10024c5710140517 ThinkPad T30 0 -s 10024c57102800e6 Radeon Mobility M7 LW (Dell Inspiron 8100) 0 -s 10024c571028012a Latitude C640 0 -s 10024c57144dc006 Radeon Mobility M7 LW in vpr Matrix 170B4 0 -d 10024c58 Radeon RV200 LX [Mobility FireGL 7800 M7] 0 -d 10024c59 Radeon Mobility M6 LY 0 -s 10024c590e11b111 Evo N600c 0 -s 10024c5910140235 ThinkPad A30/A30p (2652/2653) 0 -s 10024c5910140239 ThinkPad X22/X23/X24 0 -s 10024c59104d80e7 VAIO PCG-GR214EP/GR214MP/GR215MP/GR314MP/GR315MP 0 -s 10024c59104d8140 PCG-Z1SP laptop 0 -s 10024c5915091930 Medion MD9703 0 -d 10024c5a Radeon Mobility M6 LZ 0 -d 10024c64 Radeon R250 Ld [Radeon Mobility 9000 M9] 0 -d 10024c65 Radeon R250 Le [Radeon Mobility 9000 M9] 0 -d 10024c66 Radeon R250 [Mobility FireGL 9000] 0 -d 10024c67 Radeon R250 Lg [Radeon Mobility 9000 M9] 0 -d 10024c6e Radeon R250 Ln [Radeon Mobility 9000 M9] [Secondary] 0 Secondary chip to the Lf -d 10024d46 Rage Mobility M4 AGP 0 -d 10024d4c Rage Mobility M4 AGP 0 -d 10024d52 ATI Technologies TV Wonder Pro 1 can't get KnoppMyth install to recognize it. -d 10024e44 Radeon R300 ND [Radeon 9700 Pro] 0 -s 10024e441002515e Radeon ES1000 0 -s 10024e4410025965 Radeon ES1000 0 -d 10024e45 Radeon R300 NE [Radeon 9500 Pro] 0 -s 10024e4510020002 Radeon R300 NE [Radeon 9500 Pro] 0 -s 10024e4516810002 Hercules 3D Prophet 9500 PRO [Radeon 9500 Pro] 0 -d 10024e46 RV350 NF [Radeon 9600] 0 -d 10024e47 Radeon R300 NG [FireGL X1] 0 -d 10024e48 Radeon R350 [Radeon 9800 Pro] 0 -d 10024e49 Radeon R350 [Radeon 9800] 0 -d 10024e4a RV350 NJ [Radeon 9800 XT] 0 -d 10024e4b R350 NK [Fire GL X2] 0 -d 10024e50 RV350 [Mobility Radeon 9600 M10] 0 -s 10024e501025005a TravelMate 290 0 -s 10024e50103c088c NC8000 laptop 0 -s 10024e50103c0890 NC6000 laptop 0 -s 10024e5014620311 MSI M510A 0 -s 10024e5017341055 Amilo M1420W 0 -d 10024e51 M10 NQ [Radeon Mobility 9600] 0 -d 10024e52 RV350 [Mobility Radeon 9600 M10] 0 -s 10024e52144dc00c P35 notebook 1 -d 10024e53 M10 NS [Radeon Mobility 9600] 0 -d 10024e54 M10 NT [FireGL Mobility T2] 0 -d 10024e56 M11 NV [FireGL Mobility T2e] 0 -d 10024e64 Radeon R300 [Radeon 9700 Pro] (Secondary) 0 -d 10024e65 Radeon R300 [Radeon 9500 Pro] (Secondary) 0 -s 10024e6510020003 Radeon R300 NE [Radeon 9500 Pro] 0 -s 10024e6516810003 Hercules 3D Prophet 9500 PRO [Radeon 9500 Pro] (Secondary) 0 -d 10024e66 RV350 NF [Radeon 9600] (Secondary) 0 -d 10024e67 Radeon R300 [FireGL X1] (Secondary) 0 -d 10024e68 Radeon R350 [Radeon 9800 Pro] (Secondary) 0 -d 10024e69 Radeon R350 [Radeon 9800] (Secondary) 0 -d 10024e6a RV350 NJ [Radeon 9800 XT] (Secondary) 0 -s 10024e6a10024e71 ATI Technologies Inc M10 NQ [Radeon Mobility 9600] 0 -d 10024e71 M10 NQ [Radeon Mobility 9600] (Secondary) 0 -d 10024f72 RV250 [Radeon 9000 Series] 0 -d 10024f73 Radeon RV250 [Radeon 9000 Series] (Secondary) 0 -d 10025041 Rage 128 PA/PRO 0 -d 10025042 Rage 128 PB/PRO AGP 2x 0 -d 10025043 Rage 128 PC/PRO AGP 4x 0 -d 10025044 Rage 128 PD/PRO TMDS 0 -s 1002504410020028 Rage 128 AIW 0 -s 1002504410020029 Rage 128 AIW 0 -d 10025045 Rage 128 PE/PRO AGP 2x TMDS 0 -d 10025046 Rage 128 PF/PRO AGP 4x TMDS 0 -s 1002504610020004 Rage Fury Pro 0 -s 1002504610020008 Rage Fury Pro/Xpert 2000 Pro 0 -s 1002504610020014 Rage Fury Pro 0 -s 1002504610020018 Rage Fury Pro/Xpert 2000 Pro 0 -s 1002504610020028 Rage 128 Pro AIW AGP 0 -s 100250461002002a Rage 128 Pro AIW AGP 0 -s 1002504610020048 Rage Fury Pro 0 -s 1002504610022000 Rage Fury MAXX AGP 4x (TMDS) (VGA device) 0 -s 1002504610022001 Rage Fury MAXX AGP 4x (TMDS) (Extra device?!) 0 -d 10025047 Rage 128 PG/PRO 0 -d 10025048 Rage 128 PH/PRO AGP 2x 0 -d 10025049 Rage 128 PI/PRO AGP 4x 0 -d 1002504a Rage 128 PJ/PRO TMDS 0 -d 1002504b Rage 128 PK/PRO AGP 2x TMDS 0 -d 1002504c Rage 128 PL/PRO AGP 4x TMDS 0 -d 1002504d Rage 128 PM/PRO 0 -d 1002504e Rage 128 PN/PRO AGP 2x 0 -d 1002504f Rage 128 PO/PRO AGP 4x 0 -d 10025050 Rage 128 PP/PRO TMDS [Xpert 128] 0 -s 1002505010020008 Xpert 128 0 -d 10025051 Rage 128 PQ/PRO AGP 2x TMDS 0 -d 10025052 Rage 128 PR/PRO AGP 4x TMDS 0 -d 10025053 Rage 128 PS/PRO 0 -d 10025054 Rage 128 PT/PRO AGP 2x 0 -d 10025055 Rage 128 PU/PRO AGP 4x 0 -d 10025056 Rage 128 PV/PRO TMDS 0 -d 10025057 Rage 128 PW/PRO AGP 2x TMDS 0 -d 10025058 Rage 128 PX/PRO AGP 4x TMDS 0 -d 10025144 Radeon R100 QD [Radeon 7200] 0 -s 1002514410020008 Radeon 7000/Radeon VE 0 -s 1002514410020009 Radeon 7000/Radeon 0 -s 100251441002000a Radeon 7000/Radeon 0 -s 100251441002001a Radeon 7000/Radeon 0 -s 1002514410020029 Radeon AIW 0 -s 1002514410020038 Radeon 7000/Radeon 0 -s 1002514410020039 Radeon 7000/Radeon 0 -s 100251441002008a Radeon 7000/Radeon 0 -s 10025144100200ba Radeon 7000/Radeon 0 -s 1002514410020139 Radeon 7000/Radeon 0 -s 100251441002028a Radeon 7000/Radeon 0 -s 10025144100202aa Radeon AIW 0 -s 100251441002053a Radeon 7000/Radeon 0 -d 10025145 Radeon R100 QE 0 -d 10025146 Radeon R100 QF 0 -d 10025147 Radeon R100 QG 0 -d 10025148 Radeon R200 QH [Radeon 8500] 0 -s 100251481002010a FireGL 8800 64Mb 0 -s 1002514810020152 FireGL 8800 128Mb 0 -s 1002514810020162 FireGL 8700 32Mb 0 -s 1002514810020172 FireGL 8700 64Mb 0 -d 10025149 Radeon R200 QI 0 -d 1002514a Radeon R200 QJ 0 -d 1002514b Radeon R200 QK 0 -d 1002514c Radeon R200 QL [Radeon 8500 LE] 0 -s 1002514c1002003a Radeon R200 QL [Radeon 8500 LE] 0 -s 1002514c1002013a Radeon 8500 0 -s 1002514c148c2026 R200 QL [Radeon 8500 Evil Master II Multi Display Edition] 0 -s 1002514c16810010 Radeon 8500 [3D Prophet 8500 128Mb] 0 -s 1002514c174b7149 Radeon R200 QL [Sapphire Radeon 8500 LE] 0 -d 1002514d Radeon R200 QM [Radeon 9100] 0 -d 1002514e Radeon R200 QN [Radeon 8500LE] 0 -d 1002514f Radeon R200 QO [Radeon 8500LE] 0 -d 10025154 R200 QT [Radeon 8500] 0 -d 10025155 R200 QU [Radeon 9100] 0 -d 10025157 Radeon RV200 QW [Radeon 7500] 0 -s 100251571002013a Radeon 7500 0 -s 100251571002103a Dell Optiplex GX260 0 -s 1002515710027140 1 -s 1002515714584000 RV200 QW [RADEON 7500 PRO MAYA AR] 0 -s 10025157148c2024 RV200 QW [Radeon 7500LE Dual Display] 0 -s 10025157148c2025 RV200 QW [Radeon 7500 Evil Master Multi Display Edition] 0 -s 10025157148c2036 RV200 QW [Radeon 7500 PCI Dual Display] 0 -s 10025157174b7146 RV200 QW [Radeon 7500 LE] 0 -s 10025157174b7147 RV200 QW [Sapphire Radeon 7500LE] 0 -s 10025157174b7161 Radeon RV200 QW [Radeon 7500 LE] 0 -s 1002515717af0202 RV200 QW [Excalibur Radeon 7500LE] 0 -d 10025158 Radeon RV200 QX [Radeon 7500] 0 -d 10025159 Radeon RV100 QY [Radeon 7000/VE] 0 -s 100251591002000a Radeon 7000/Radeon VE 0 -s 100251591002000b Radeon 7000 0 -s 1002515910020038 Radeon 7000/Radeon VE 0 -s 100251591002003a Radeon 7000/Radeon VE 0 -s 10025159100200ba Radeon 7000/Radeon VE 0 -s 100251591002013a Radeon 7000/Radeon VE 0 -s 1002515910020908 XVR-100 (supplied by Sun) 0 -s 100251591014029a Remote Supervisor Adapter II (RSA2) 0 The IBM card doubles as an ATI PCI video adapter -s 10025159101402c8 IBM eServer xSeries server mainboard 0 -s 100251591028019a PowerEdge SC1425 0 -s 10025159103c1292 Radeon 7000 0 -s 1002515914584002 RV100 QY [RADEON 7000 PRO MAYA AV Series] 0 -s 10025159148c2003 RV100 QY [Radeon 7000 Multi-Display Edition] 0 -s 10025159148c2023 RV100 QY [Radeon 7000 Evil Master Multi-Display] 0 -s 10025159174b7112 RV100 QY [Sapphire Radeon VE 7000] 0 -s 10025159174b7c28 Sapphire Radeon VE 7000 DDR 0 -s 1002515917870202 RV100 QY [Excalibur Radeon 7000] 0 -s 1002515917ee1001 Radeon 7000 64MB DDR + DVI 0 -d 1002515a Radeon RV100 QZ [Radeon 7000/VE] 0 -d 1002515e ES1000 0 -d 1002515f ES1000 0 -d 10025168 Radeon R200 Qh 0 -d 10025169 Radeon R200 Qi 0 -d 1002516a Radeon R200 Qj 0 -d 1002516b Radeon R200 Qk 0 -d 1002516c Radeon R200 Ql 0 This one is not in ATI documentation, but is in XFree86 source code -d 10025245 Rage 128 RE/SG 0 -s 1002524510020008 Xpert 128 0 -s 1002524510020028 Rage 128 AIW 0 -s 1002524510020029 Rage 128 AIW 0 -s 1002524510020068 Rage 128 AIW 0 -d 10025246 Rage 128 RF/SG AGP 0 -s 1002524610020004 Magnum/Xpert 128/Xpert 99 0 -s 1002524610020008 Magnum/Xpert128/X99/Xpert2000 0 -s 1002524610020028 Rage 128 AIW AGP 0 -s 1002524610020044 Rage Fury/Xpert 128/Xpert 2000 0 -s 1002524610020068 Rage 128 AIW AGP 0 -s 1002524610020448 Rage Fury 0 -d 10025247 Rage 128 RG 0 -d 1002524b Rage 128 RK/VR 0 -d 1002524c Rage 128 RL/VR AGP 0 -s 1002524c10020008 Xpert 99/Xpert 2000 0 -s 1002524c10020088 Xpert 99 0 -d 10025345 Rage 128 SE/4x 0 -d 10025346 Rage 128 SF/4x AGP 2x 0 -s 1002534610020048 RAGE 128 16MB VGA TVOUT AMC PAL 0 -d 10025347 Rage 128 SG/4x AGP 4x 0 -d 10025348 Rage 128 SH 0 -d 1002534b Rage 128 SK/4x 0 -d 1002534c Rage 128 SL/4x AGP 2x 0 -d 1002534d Rage 128 SM/4x AGP 4x 0 -s 1002534d10020008 Xpert 99/Xpert 2000 0 -s 1002534d10020018 Xpert 2000 0 -d 1002534e Rage 128 4x 0 -d 10025354 Mach 64 VT 0 -s 1002535410025654 Mach 64 reference 0 -d 10025446 Rage 128 Pro Ultra TF 0 -s 1002544610020004 Rage Fury Pro 0 -s 1002544610020008 Rage Fury Pro/Xpert 2000 Pro 0 -s 1002544610020018 Rage Fury Pro/Xpert 2000 Pro 0 -s 1002544610020028 Rage 128 AIW Pro AGP 0 -s 1002544610020029 Rage 128 AIW 0 -s 100254461002002a Rage 128 AIW Pro AGP 0 -s 100254461002002b Rage 128 AIW 0 -s 1002544610020048 Xpert 2000 Pro 0 -d 1002544c Rage 128 Pro Ultra TL 0 -d 10025452 Rage 128 Pro Ultra TR 0 -s 100254521002001c Rage 128 Pro 4XL 0 -s 10025452103c1279 Rage 128 Pro 4XL 0 -d 10025453 Rage 128 Pro Ultra TS 0 -d 10025454 Rage 128 Pro Ultra TT 0 -d 10025455 Rage 128 Pro Ultra TU 0 -d 10025460 M22 [Radeon Mobility M300] 0 -d 10025462 M24 [Radeon Mobility X600] 0 -d 10025464 M22 [FireGL GL] 0 -d 10025548 R423 UH [Radeon X800 (PCIE)] 0 -d 10025549 R423 UI [Radeon X800PRO (PCIE)] 0 -d 1002554a R423 UJ [Radeon X800LE (PCIE)] 0 -d 1002554b R423 UK [Radeon X800SE (PCIE)] 0 -d 1002554d R430 [Radeon X800 XL] (PCIe) 0 -d 1002554f R430 [Radeon X800 (PCIE)] 0 -d 10025550 R423 [Fire GL V7100] 0 -d 10025551 R423 UQ [FireGL V7200 (PCIE)] 0 -d 10025551 R423 [ FireGL V5100 (PCIE)] 1 -d 10025552 R423 UR [FireGL V5100 (PCIE)] 0 -d 10025554 R423 UT [FireGL V7100 (PCIE)] 0 -d 10025569 R423 UI [Radeon X800PRO (PCIE)] Secondary 0 -d 1002556b Radeon R423 UK (PCIE) [X800 SE] (Secondary) 0 -d 1002556d R430 [Radeon X800 XL] (PCIe) Secondary 0 -d 1002556f R430 [Radeon X800 (PCIE) Secondary] 0 -d 10025571 R423GL-SE ATI FIREGL V5100 PCI-EX Secondary 0 -d 1002564a M26 [Mobility FireGL V5000] 0 -d 1002564b M26 [Mobility FireGL V5000] 0 -d 1002564f M26 [Radeon Mobility X700 XL] (PCIE) 0 -d 10025652 M26 [Radeon Mobility X700] 0 -d 10025653 Radeon Mobility X700 (PCIE) 0 -s 1002565310250080 Aspire 5024WLMi 0 -s 1002565314620361 Micro-Star International (MSI) PCI-Express Subsystem 1 -d 10025654 264VT [Mach64 VT] 0 -s 1002565410025654 Mach64VT Reference 0 -d 10025655 264VT3 [Mach64 VT3] 0 -d 10025656 264VT4 [Mach64 VT4] 0 -d 10025830 RS300 Host Bridge 0 -d 10025831 RS300 Host Bridge 0 -d 10025832 RS300 Host Bridge 0 -d 10025833 Radeon 9100 IGP Host Bridge 0 -d 10025834 Radeon 9100 IGP 0 -d 10025835 RS300M AGP [Radeon Mobility 9100IGP] 0 -d 10025838 Radeon 9100 IGP AGP Bridge 0 -d 10025940 RV280 [Radeon 9200 PRO] (Secondary) 0 -d 10025941 RV280 [Radeon 9200] (Secondary) 0 -s 1002594114584019 Gigabyte Radeon 9200 0 -s 10025941174b7c12 Sapphire Radeon 9200 0 -s 1002594117af200d Excalibur Radeon 9200 0 -s 1002594118bc0050 GeXcube GC-R9200-C3 (Secondary) 0 -d 10025944 RV280 [Radeon 9200 SE (PCI)] 0 -d 10025950 RS480 Host Bridge 0 -s 1002595010250080 Aspire 5024WLMMi 0 -s 10025950103c308b MX6125 0 -d 10025951 ATI Radeon Xpress 200 (RS480/RS482/RX480/RX482) Chipset - Host bridge 0 -d 10025954 RS480 [Radeon Xpress 200G Series] 0 -s 1002595410025954 RV370 [Radeon Xpress 200G Series] 0 -d 10025955 ATI Radeon XPRESS 200M 5955 (PCIE) 0 -s 1002595510025955 RS480 0x5955 [ATI Radeon XPRESS 200M 5955 (PCIE)] 0 -s 10025955103c308b MX6125 0 -s 10025955104c8094 1 -s 1002595514e44318 1 -d 10025960 RV280 [Radeon 9200 PRO] 0 -d 10025961 RV280 [Radeon 9200] 0 -s 1002596110022f72 All-in-Wonder 9200 Series 0 -s 1002596110194c30 Radeon 9200 VIVO 0 -s 1002596112ab5961 YUAN SMARTVGA Radeon 9200 0 -s 1002596114584018 Gigabyte Radeon 9200 0 -s 10025961174b7c13 Sapphire Radeon 9200 0 -s 1002596117af200c Excalibur Radeon 9200 0 -s 1002596118bc0050 Radeon 9200 Game Buster 0 -s 1002596118bc0051 GeXcube GC-R9200-C3 0 -s 1002596118bc0053 Radeon 9200 Game Buster VIVO 0 -d 10025962 RV280 [Radeon 9200] 0 -d 10025964 RV280 [Radeon 9200 SE] 0 -s 1002596410025964 1 -s 100259641043c006 ASUS Radeon 9200 SE / TD / 128M 0 -s 1002596414584018 Radeon 9200 SE 0 -s 1002596414584032 Radeon 9200 SE 128MB 0 -s 10025964147b6191 R9200SE-DT 0 -s 10025964148c2073 CN-AG92E 0 -s 10025964174b7c13 Sapphire Radeon 9200 SE 0 -s 1002596417875964 Excalibur 9200SE VIVO 128M 0 -s 1002596417af2012 Radeon 9200 SE Excalibur 0 -s 1002596418bc0170 Sapphire Radeon 9200 SE 128MB Game Buster 0 -s 1002596418bc0173 GC-R9200L(SE)-C3H [Radeon 9200 Game Buster] 0 -s 10025964320e1787 1 -d 10025969 ES1000 0 -d 10025974 RS482 [Radeon Xpress 200] 0 -d 10025975 RS482 [Radeon Xpress 200M] 0 -d 10025a33 Radeon Xpress 200 Host Bridge 0 -d 10025a34 RS480 PCI-X Root Port 0 -d 10025a36 RS480 PCI Bridge 0 Comes in pair with 5a3f -d 10025a38 RS480 PCI Bridge 0 -d 10025a39 RS480 PCI Bridge 0 Comes in pair with 5a38 -d 10025a3f RS480 PCI Bridge 0 -d 10025a41 RS400 [Radeon Xpress 200] 0 -d 10025a42 RS400 [Radeon Xpress 200M] 0 -d 10025a61 RC410 [Radeon Xpress 200] 0 -d 10025a62 RC410 [Radeon Xpress 200M] 0 -d 10025b60 RV370 5B60 [Radeon X300 (PCIE)] 0 -s 10025b6010221103 1 -s 10025b601043002a Extreme AX300SE-X 0 -s 10025b601043032e Extreme AX300/TD 0 -s 10025b6010de0059 1 -s 10025b6010de005e 1 -s 10025b6010de005e Memory 1 -s 10025b6014620400 RX300SE-TD128E (MS-8940 REV:200) 0 -s 10025b6014620402 RX300SE-TD128E (MS-8940) 0 -s 10025b60196d1086 X300SE HM 0 -d 10025b62 RV380 [Radeon X600 (PCIE)] 0 -d 10025b63 RV370 [Sapphire X550 Silent] 0 -d 10025b64 RV370 5B64 [FireGL V3100 (PCIE)] 0 -d 10025b65 RV370 5B65 [FireGL D1100 (PCIE)] 0 -d 10025b70 RV370 [Radeon X300SE] 0 -s 10025b7014620403 RX300SE-TD128E (MS-8940) (secondary display) 0 -s 10025b70196d1087 X300SE HM 0 -d 10025b72 RV380 [Radeon X600] 0 -d 10025b73 RV370 secondary [Sapphire X550 Silent] 0 -d 10025b74 RV370 5B64 [FireGL V3100 (PCIE)] (Secondary) 0 -d 10025c61 M9+ 5C61 [Radeon Mobility 9200 (AGP)] 0 -d 10025c63 M9+ 5C63 [Radeon Mobility 9200 (AGP)] 0 -s 10025c6310025c63 Apple iBook G4 2004 0 -s 10025c63144dc00c P30 notebook 1 -d 10025d44 RV280 [Radeon 9200 SE] (Secondary) 0 -s 10025d4414584019 Radeon 9200 SE (Secondary) 0 -s 10025d4414584032 Radeon 9200 SE 128MB 0 -s 10025d44174b7c12 Sapphire Radeon 9200 SE (Secondary) 0 -s 10025d4417875965 Excalibur 9200SE VIVO 128M (Secondary) 0 -s 10025d4417af2013 Radeon 9200 SE Excalibur (Secondary) 0 -s 10025d4418bc0171 Radeon 9200 SE 128MB Game Buster (Secondary) 0 -s 10025d4418bc0172 GC-R9200L(SE)-C3H [Radeon 9200 Game Buster] 0 -d 10025d48 M28 [Radeon Mobility X800XT] 0 -d 10025d49 M28 [Mobility FireGL V5100] 0 -d 10025d4a Mobility Radeon X800 0 -d 10025d4d R480 [Radeon X850XT Platinum (PCIE)] 0 -d 10025d4f R480 [Radeon X800 GTO (PCIE)] 0 -d 10025d52 R480 [Radeon X850XT (PCIE)] (Primary) 0 -s 10025d5210020b12 PowerColor X850XT PCIe Primary 0 -s 10025d5210020b13 PowerColor X850XT PCIe Secondary 0 -d 10025d57 R423 5F57 [Radeon X800XT (PCIE)] 0 -d 10025d6d R480 [Radeon X850XT Platinum (PCIE)] (Secondary) 0 -d 10025d6f R480 [Radeon X800 GTO (PCIE)] (Secondary) 0 -d 10025d72 R480 [Radeon X850XT (PCIE)] (Secondary) 0 -d 10025d77 R423 5F57 [Radeon X800XT (PCIE)] (Secondary) 0 -d 10025e48 RV410 [FireGL V5000] 0 -d 10025e49 RV410 [FireGL V3300] 0 -d 10025e49 1 -d 10025e4a RV410 [Radeon X700XT] 0 -d 10025e4b RV410 [Radeon X700 Pro (PCIE)] 0 -d 10025e4c RV410 [Radeon X700SE] 0 -d 10025e4d RV410 [Radeon X700 (PCIE)] 0 -s 10025e4d148c2116 PowerColor Bravo X700 0 -d 10025e4f RV410 [Radeon X700] 0 -d 10025e4f x550xt 1 -d 10025e6b RV410 [Radeon X700 Pro (PCIE)] Secondary 0 -d 10025e6d RV410 [Radeon X700 (PCIE)] (Secondary) 0 -s 10025e6d148c2117 PowerColor Bravo X700 0 -d 10025f57 R423 [Radeon X800XT (PCIE)] 0 -d 1002700f PCI Bridge [IGP 320M] 0 -d 10027010 PCI Bridge [IGP 340M] 0 -d 10027100 R520 [Radeon X1800] 0 -d 10027102 M58 [Radeon Mobility X1800] 0 -d 10027103 M58 [Mobility FireGL V7200] 0 -d 10027104 R520 GL ATI FireGL V7200 Primary 0 -d 10027105 R520 [FireGL] 0 -d 10027106 M58 [Mobility FireGL V7100] 0 -d 10027108 M58 [Radeon Mobility X1800] 0 -d 10027109 R520 [Radeon X1800] 0 -s 1002710910020322 All-in-Wonder X1800XL 0 -s 1002710910020d02 Radeon X1800 CrossFire Edition 0 -d 1002710a R520 [Radeon X1800] 0 -d 1002710b R520 [Radeon X1800] 0 -d 1002710c R520 [Radeon X1800] 0 -d 10027120 R520 [Radeon X1800] (Secondary) 0 -d 10027124 R520 GL ATI FireGL V7200 Secondary 0 -d 10027129 R520 [Radeon X1800] (Secondary) 0 -s 1002712910020323 All-in-Wonder X1800XL (Secondary) 0 -s 1002712910020d03 Radeon X1800 CrossFire Edition (Secondary) 0 -d 10027140 RV515 [Radeon X1600] 0 -d 10027142 RV515 [Radeon X1300] 0 -d 10027142 ATI Radeon X1300/X1550 Series 1 -d 10027142 RV515 PRO [ATI Radeon X1300/X1550 Series] 1 -s 1002714210020322 All-in-Wonder 2006 PCI-E Edition 0 -d 10027143 Radeon X1550 Series 1 -d 10027143 RV505 [Radeon X1550 Series] 1 -d 10027145 Radeon Mobility X1400 0 -d 10027146 RV515 [Radeon X1300] 0 -s 1002714610020322 All-in-Wonder 2006 PCI-E Edition 0 -d 10027147 RV505 [Radeon X1550 64-bit] 1 -d 10027149 M52 [ATI Mobility Radeon X1300] 0 -d 1002714a M52 [ATI Mobility Radeon X1300] 0 -d 1002714b M52 [ATI Mobility Radeon X1300] 0 -d 1002714c M52 [ATI Mobility Radeon X1300] 0 -d 1002714d RV515 [Radeon X1300] 0 -d 1002714e RV515 [Radeon X1300] 0 -d 10027152 RV515 GL ATI FireGL V3300 Primary 0 -d 10027153 RV515GL [FireGL V3350] 1 -d 1002715e RV515 [Radeon X1300] 0 -d 1002715f RV505 CE [Radeon X1550 64-bit] 1 -d 10027162 RV515 [Radeon X1300] (Secondary) 0 -d 10027162 ATI Radeon X1300/X1550 Series Secondary 1 -d 10027162 RV515 PRO [ATI Radeon X1300/X1550 Series Secondary] 1 -s 1002716210020323 All-in-Wonder 2006 PCI-E Edition (Secondary) 0 -d 10027166 RV515 [Radeon X1300] (Secondary) 0 -s 1002716610020323 All-in-Wonder 2006 PCI-E Edition (Secondary) 0 -d 10027172 RV515 GL ATI FireGL V3300 Secondary 0 -d 10027173 RV515GL [FireGL V3350 Secondary] 1 -d 10027180 RV516 Radeon X1300 Series Primary 0 -d 10027180 RV516 [ATI Radeon X1300/X1550 Series Secondary] 1 -d 10027180 RV516 [ATI Radeon X1300/X1550 Series] 1 -d 10027181 RV516 XT Radeon X1600 Series Primary 0 -d 10027183 RV516 Radeon X1300 Pro 1 Mine is a 256 MB ATI Radeon X1300 Pro PCI Express -d 10027183 RV516 [ATI Radeon X1300/X1550 Series] 1 -d 10027187 RV516 [ATI Radeon X1300/X1550 Series] 1 -d 10027188 M64-S [ATI Mobility Radeon X2300] 1 -d 1002718a ATI Mobility Radeon X2300 1 -d 1002718c M62CSP64 [ATI Mobility Radeon X1350] 1 -d 1002718d M64CSP128 [ATI Mobility Radeon X1450] 1 -d 10027193 RV516[Radeon X1550 Series] 1 -d 1002719b FireMV 2250 1 -d 1002719f Radeon X1550 64-bit 1 -d 1002719f RV505 [Radeon X1550 64-bit] 1 -d 1002719f RV516LE [Radeon X1550 64-bit] 1 -d 100271a0 RV516 Radeon X1300 Series Secondary 0 -d 100271a0 RV516 [ATI Radeon X1300/X1550 Series Secondary] 1 -d 100271a1 RV516 XT Radeon X1600 Series Secondary 0 -d 100271a3 RV516 Radeon X1300 Pro (Secondary) 1 Mine is a 256 MB ATI Radeon X1300 Pro PCI Express by Dell -d 100271a3 RV516 [ATI Radeon X1300/X1550 Series Secondary] 1 -d 100271a7 RV516 [ATI Radeon X1300/X1550 Series Secondary] 1 -d 100271bb FireMV 2250 Secondary 1 -d 100271c0 RV530 [Radeon X1600] 0 -d 100271c2 RV530 [Radeon X1600] 0 -d 100271c4 M56GL [ATI Mobility FireGL V5200] 0 -s 100271c417aa2007 ThinkPad T60p 0 -d 100271c5 M56P [Radeon Mobility X1600] 0 -d 100271c6 RV530LE [Radeon X1600] 0 -d 100271c7 RV535 [Radeon X1650 Series] 1 -d 100271ce RV530LE [Radeon X1600] 0 -d 100271d5 M66-P ATI Mobility Radeon X1700 0 -d 100271d6 M66-XT ATI Mobility Radeon X1700 0 -d 100271de RV530LE [Radeon X1600] 0 -d 100271e0 RV530 [Radeon X1600] (Secondary) 0 -d 100271e2 RV530 [Radeon X1600] (Secondary) 0 -d 100271e7 RV535 [Radeon X1650 Series] 1 -d 10027210 M71 [ ATI Mobility radeon X2100] 1 -d 10027210 M71 [ ATI Mobility Radeon X2100 ] 1 -d 10027211 M71 [ ATI Mobility Radeon X2100 Secondary] 1 -d 10027240 R580 [Radeon X1900] 0 -d 10027241 R580 [Radeon X1900] 0 -d 10027242 R580 [Radeon X1900] 0 -d 10027243 R580 [Radeon X1900] 0 -d 10027244 R580 [Radeon X1900] 0 -d 10027245 R580 [Radeon X1900] 0 -d 10027246 R580 [Radeon X1900] 0 -d 10027247 R580 [Radeon X1900] 0 -d 10027248 R580 [Radeon X1900] 0 -d 10027249 R580 [Radeon X1900 XT] Primary 0 -d 1002724a R580 [Radeon X1900] 0 -d 1002724b R580 [Radeon X1900] 0 -s 1002724b10020b12 Primary Display Device 1 -s 1002724b10020b13 Secondary Display Device 1 -d 1002724c R580 [Radeon X1900] 0 -d 1002724d R580 [Radeon X1900] 0 -d 1002724e R580 [FireGL V7300/V7350] Primary (PCIE) 0 -d 1002724e ATI FireStream 2U 1 Changing marketing name to this DID. Correct name is ATI FireStream 2U. -d 10027269 R580 [Radeon X1900 XT] Secondary 0 -d 1002726b R580 [Radeon X1900] 1 -d 1002726e ATI FireStream 2U Secondary 1 -d 1002726e R580 [FireGL V7300/V7350] Secondary (PCIE) 0 -d 1002726e ATI FireStream 2U Secondary 1 Changing marketing name to this DID. Correct name is ATI FireStream 2U Secondary. -d 10027288 ATI Radeon X1950 GT 1 -d 10027293 Radeon X1650 Series 1 -d 100272a8 ATI Radeon X1950 GT Secondary 1 -d 100272b3 Radeon X1650 Series Secondary 1 -d 10027833 Radeon 9100 IGP Host Bridge 0 -d 10027834 Radeon 9100 PRO IGP 0 -d 10027835 Radeon Mobility 9200 IGP 0 -d 10027838 Radeon 9100 IGP PCI/AGP Bridge 0 -d 1002791e ATI Radeon Xpress 1200 Series 1 -d 1002791f ATI Radeon Xpress 1200 Series 1 -d 1002793f ATI Radeon Xpress 1200 Series Secondary 1 -d 10027c37 RV350 AQ [Radeon 9600 SE] 0 -d 1002cab0 AGP Bridge [IGP 320M] 0 -d 1002cab2 RS200/RS200M AGP Bridge [IGP 340M] 0 -d 1002cab3 R200 AGP Bridge [Mobility Radeon 7000 IGP] 0 -d 1002cbb2 RS200/RS200M AGP Bridge [IGP 340M] 0 -v 1003 ULSI Systems 0 -d 10030201 US201 0 -v 1004 VLSI Technology Inc 0 -d 10040005 82C592-FC1 0 -d 10040006 82C593-FC1 0 -d 10040007 82C594-AFC2 0 -d 10040008 82C596/7 [Wildcat] 0 -d 10040009 82C597-AFC2 0 -d 1004000c 82C541 [Lynx] 0 -d 1004000d 82C543 [Lynx] 0 -d 10040101 82C532 0 -d 10040102 82C534 [Eagle] 0 -d 10040103 82C538 0 -d 10040104 82C535 0 -d 10040105 82C147 0 -d 10040200 82C975 0 -d 10040280 82C925 0 -d 10040304 QSound ThunderBird PCI Audio 0 -s 1004030410040304 QSound ThunderBird PCI Audio 0 -s 10040304122d1206 DSP368 Audio 0 -s 1004030414835020 XWave Thunder 3D Audio 0 -d 10040305 QSound ThunderBird PCI Audio Gameport 0 -s 1004030510040305 QSound ThunderBird PCI Audio Gameport 0 -s 10040305122d1207 DSP368 Audio Gameport 0 -s 1004030514835021 XWave Thunder 3D Audio Gameport 0 -d 10040306 QSound ThunderBird PCI Audio Support Registers 0 -s 1004030610040306 QSound ThunderBird PCI Audio Support Registers 0 -s 10040306122d1208 DSP368 Audio Support Registers 0 -s 1004030614835022 XWave Thunder 3D Audio Support Registers 0 -d 10040307 Thunderbird 0 -d 10040308 Thunderbird 0 -d 10040702 VAS96011 [Golden Gate II] 0 -d 10040703 Tollgate 0 -v 1005 Avance Logic Inc. [ALI] 0 -d 10052064 ALG2032/2064 0 -d 10052128 ALG2364A 0 -d 10052301 ALG2301 0 -d 10052302 ALG2302 0 -d 10052364 ALG2364 0 -d 10052464 ALG2364A 0 -d 10052501 ALG2564A/25128A 0 -v 1006 Reply Group 0 -v 1007 NetFrame Systems Inc 0 -v 1008 Epson 0 -v 100a Phoenix Technologies 0 -v 100b National Semiconductor Corporation 0 -d 100b0001 DP83810 0 -d 100b0002 87415/87560 IDE 0 -d 100b000e 87560 Legacy I/O 0 -d 100b000f FireWire Controller 0 -d 100b0011 NS87560 National PCI System I/O 0 -d 100b0012 USB Controller 0 -d 100b0020 DP83815 (MacPhyter) Ethernet Controller 0 -s 100b0020103c0024 Pavilion ze4400 builtin Network 0 -s 100b002012d9000c Aculab E1/T1 PMXc cPCI carrier card 0 -s 100b00201385f311 FA311 / FA312 (FA311 with WoL HW) 0 -d 100b0021 PC87200 PCI to ISA Bridge 0 -d 100b0022 DP83820 10/100/1000 Ethernet Controller 0 -d 100b0028 Geode GX2 Host Bridge 0 -d 100b002a CS5535 South Bridge 0 -d 100b002b CS5535 ISA bridge 0 -d 100b002d CS5535 IDE 0 -d 100b002e CS5535 Audio 0 -d 100b002f CS5535 USB 0 -d 100b0030 Geode GX2 Graphics Processor 0 -d 100b0035 DP83065 [Saturn] 10/100/1000 Ethernet Controller 0 -d 100b0500 SCx200 Bridge 0 -d 100b0501 SCx200 SMI 0 -d 100b0502 SCx200 IDE 0 -d 100b0503 SCx200 Audio 0 -d 100b0504 SCx200 Video 0 -d 100b0505 SCx200 XBus 0 -d 100b0510 SC1100 Bridge 0 -d 100b0511 SC1100 SMI 0 -d 100b0515 SC1100 XBus 0 -d 100bd001 87410 IDE 0 -v 100c Tseng Labs Inc 0 -d 100c3202 ET4000/W32p rev A 0 -d 100c3205 ET4000/W32p rev B 0 -d 100c3206 ET4000/W32p rev C 0 -d 100c3207 ET4000/W32p rev D 0 -d 100c3208 ET6000 0 -d 100c4702 ET6300 0 -v 100d AST Research Inc 0 -v 100e Weitek 0 -d 100e9000 P9000 Viper 0 -d 100e9001 P9000 Viper 0 -d 100e9002 P9000 Viper 0 -d 100e9100 P9100 Viper Pro/SE 0 -v 1010 Video Logic, Ltd. 0 -v 1011 Digital Equipment Corporation 0 -d 10110001 DECchip 21050 0 -d 10110002 DECchip 21040 [Tulip] 0 -d 10110004 DECchip 21030 [TGA] 0 -d 10110007 NVRAM [Zephyr NVRAM] 0 -d 10110008 KZPSA [KZPSA] 0 -d 10110009 DECchip 21140 [FasterNet] 0 -s 1011000910250310 21140 Fast Ethernet 0 -s 1011000910b82001 SMC9332BDT EtherPower 10/100 0 -s 1011000910b82002 SMC9332BVT EtherPower T4 10/100 0 -s 1011000910b82003 SMC9334BDT EtherPower 10/100 (1-port) 0 -s 1011000911092400 ANA-6944A/TX Fast Ethernet 0 -s 1011000911122300 RNS2300 Fast Ethernet 0 -s 1011000911122320 RNS2320 Fast Ethernet 0 -s 1011000911122340 RNS2340 Fast Ethernet 0 -s 1011000911131207 EN-1207-TX Fast Ethernet 0 -s 1011000911861100 DFE-500TX Fast Ethernet 0 -s 1011000911861112 DFE-570TX Fast Ethernet 0 -s 1011000911861140 DFE-660 Cardbus Ethernet 10/100 0 -s 1011000911861142 DFE-660 Cardbus Ethernet 10/100 0 -s 1011000911f60503 Freedomline Fast Ethernet 0 -s 1011000912829100 AEF-380TXD Fast Ethernet 0 -s 1011000913851100 FA310TX Fast Ethernet 0 -s 1011000926460001 KNE100TX Fast Ethernet 0 -d 1011000a 21230 Video Codec 0 -d 1011000d PBXGB [TGA2] 0 -d 1011000f PCI-to-PDQ Interface Chip [PFI] 0 -s 1011000f1011def1 FDDI controller (DEFPA) 0 -s 1011000f103cdef1 FDDI controller (3X-DEFPA) 0 -d 10110014 DECchip 21041 [Tulip Pass 3] 0 -s 1011001411860100 DE-530+ 0 -d 10110016 DGLPB [OPPO] 0 -d 10110017 PV-PCI Graphics Controller (ZLXp-L) 0 -d 10110019 DECchip 21142/43 0 -s 101100191011500a DE500A Fast Ethernet 0 -s 101100191011500b DE500B Fast Ethernet 0 -s ... [truncated message content] |
From: <nic...@us...> - 2008-10-29 18:55:46
|
Revision: 331 http://vidix.svn.sourceforge.net/vidix/?rev=331&view=rev Author: nickols_k Date: 2008-10-29 18:55:43 +0000 (Wed, 29 Oct 2008) Log Message: ----------- modify defines Modified Paths: -------------- trunk/vidix/vidix/drivers/nvidia_vid.c trunk/vidix/vidix/drivers/radeon_vid.c trunk/vidix/vidix/drivers/unichrome_vid.c Modified: trunk/vidix/vidix/drivers/nvidia_vid.c =================================================================== --- trunk/vidix/vidix/drivers/nvidia_vid.c 2008-10-29 18:08:38 UTC (rev 330) +++ trunk/vidix/vidix/drivers/nvidia_vid.c 2008-10-29 18:55:43 UTC (rev 331) @@ -104,8 +104,7 @@ {DEVICE_NVIDIA_NV10DDR_GEFORCE_256,NV_ARCH_10}, {DEVICE_NVIDIA_NV10GL_QUADRO,NV_ARCH_10}, {DEVICE_NVIDIA_NV11_GEFORCE2_MX_MX,NV_ARCH_10}, - {DEVICE_NVIDIA_NV11DDR_GEFORCE2_MX,NV_ARCH_10}, - {DEVICE_NVIDIA_NV11DDR_GEFORCE2_MX,NV_ARCH_10}, + {DEVICE_NVIDIA_NV11DDR_GEFORCE2_MX200,NV_ARCH_10}, {DEVICE_NVIDIA_NV11_GEFORCE2_GO,NV_ARCH_10}, {DEVICE_NVIDIA_NV11GL_QUADRO2_MXR_EX_GO,NV_ARCH_10}, {DEVICE_NVIDIA_NV15_GEFORCE2_GTS_PRO,NV_ARCH_10}, @@ -121,8 +120,8 @@ {DEVICE_NVIDIA_NV17_GEFORCE4_4202,NV_ARCH_10}, {DEVICE_NVIDIA_NV17_GEFORCE4_460,NV_ARCH_10}, {DEVICE_NVIDIA_NV17GL_QUADRO4_550,NV_ARCH_10}, - {DEVICE_NVIDIA_NV17_GEFORCE4_4203,NV_ARCH_10}, - {DEVICE_NVIDIA_NV17GL_QUADRO4_200_400,NV_ARCH_10}, + {DEVICE_NVIDIA_NV17_GEFORCE4_4402,NV_ARCH_10}, + {DEVICE_NVIDIA_NV17GL_QUADRO_NVS,NV_ARCH_10}, {DEVICE_NVIDIA_NV17GL_QUADRO4_5502,NV_ARCH_10}, {DEVICE_NVIDIA_NV17GL_QUADRO4_550,NV_ARCH_10}, {DEVICE_NVIDIA_NV17_GEFORCE4_410,NV_ARCH_10}, @@ -133,13 +132,13 @@ {DEVICE_NVIDIA_NV18_GEFORCE4_MX5,NV_ARCH_10}, {DEVICE_NVIDIA_NV18M_GEFORCE4_448,NV_ARCH_10}, {DEVICE_NVIDIA_NV18M_GEFORCE4_488,NV_ARCH_10}, - {DEVICE_NVIDIA_NV18GL_QUADRO_FX,NV_ARCH_10}, +// {DEVICE_NVIDIA_NV18GL_QUADRO_FX,NV_ARCH_10}, {DEVICE_NVIDIA_NV18GL_QUADRO4_580,NV_ARCH_10}, - {DEVICE_NVIDIA_NV18GL_QUADRO4_NVS,NV_ARCH_10}, + {DEVICE_NVIDIA_NV18GL_QUADRO_NVS,NV_ARCH_10}, {DEVICE_NVIDIA_NV18GL_QUADRO4_380,NV_ARCH_10}, {DEVICE_NVIDIA_NV18M_GEFORCE4_4482,NV_ARCH_10}, {DEVICE_NVIDIA_NVCRUSH11_GEFORCE2_MX,NV_ARCH_10}, - {DEVICE_NVIDIA_NFORCE2_AGP_DIFFERENT,NV_ARCH_10}, + {DEVICE_NVIDIA_NFORCE2_IGP2,NV_ARCH_10}, {DEVICE_NVIDIA_NFORCE2_AGP,NV_ARCH_10}, {DEVICE_NVIDIA_NV18_GEFORCE4_MX5,NV_ARCH_10}, {DEVICE_NVIDIA_NV18_GEFORCE_PCX,NV_ARCH_10}, @@ -161,7 +160,7 @@ {DEVICE_NVIDIA_NV28_GEFORCE4_TI4,NV_ARCH_20}, {DEVICE_NVIDIA_NV28GL_QUADRO4_980,NV_ARCH_20}, {DEVICE_NVIDIA_NV28GL_QUADRO4_780,NV_ARCH_20}, - {DEVICE_NVIDIA_NV28GLM_QUADRO4_700,NV_ARCH_20}, + {DEVICE_NVIDIA_NV28GLM_QUADRO4_GO700,NV_ARCH_20}, /*NV30*/ {DEVICE_NVIDIA_NV30_GEFORCE_FX,NV_ARCH_30}, {DEVICE_NVIDIA_NV30_GEFORCE_FX2,NV_ARCH_30}, @@ -176,7 +175,7 @@ {DEVICE_NVIDIA_NV31M_PRO,NV_ARCH_30}, {DEVICE_NVIDIA_NV31M_GEFORCE_FX,NV_ARCH_30}, {DEVICE_NVIDIA_NV31M_GEFORCE_FX2,NV_ARCH_30}, - {DEVICE_NVIDIA_NVIDIA_QUADRO_FX,NV_ARCH_30}, + {DEVICE_NVIDIA_QUADRO_FX_GO700,NV_ARCH_30}, {DEVICE_NVIDIA_NV31GLM,NV_ARCH_30}, {DEVICE_NVIDIA_NV31GLM_PRO,NV_ARCH_30}, {DEVICE_NVIDIA_NV31GLM_PRO2,NV_ARCH_30}, @@ -219,13 +218,13 @@ {DEVICE_NVIDIA_NV36_GEFORCE_PCX,NV_ARCH_30}, {DEVICE_NVIDIA_NV35_GEFORCE_PCX,NV_ARCH_30}, {DEVICE_NVIDIA_NV37GL_QUADRO_FX,NV_ARCH_30}, - {DEVICE_NVIDIA_NV37GL_QUADRO_FX2,NV_ARCH_30}, + {DEVICE_NVIDIA_NV37GL_QUADRO_PCI_E,NV_ARCH_30}, {DEVICE_NVIDIA_NV38GL_QUADRO_FX,NV_ARCH_30}, /* FIXME are they different? */ {DEVICE_NVIDIA_NV40_GEFORCE_6800,NV_ARCH_30}, {DEVICE_NVIDIA_NV40_GEFORCE_68002,NV_ARCH_30}, {DEVICE_NVIDIA_NV40_2_GEFORCE_6800,NV_ARCH_30}, - {DEVICE_NVIDIA_NV40_3,NV_ARCH_30}, + {DEVICE_NVIDIA_NV40_3_GEFORCE_6800,NV_ARCH_30}, {DEVICE_NVIDIA_NV40_GEFORCE_68003,NV_ARCH_30}, {DEVICE_NVIDIA_NV40_GEFORCE_68004,NV_ARCH_30}, {DEVICE_NVIDIA_NV40_GEFORCE_68005,NV_ARCH_30}, @@ -249,9 +248,9 @@ {DEVICE_NVIDIA_NV41_QUADRO_FX2,NV_ARCH_30}, {DEVICE_NVIDIA_NV41GL_QUADRO_FX,NV_ARCH_30}, {DEVICE_NVIDIA_NV41GL_QUADRO_FX,NV_ARCH_30}, - {DEVICE_NVIDIA_NV40_GEFORCE_6800_GEFORCE,NV_ARCH_30}, - {DEVICE_NVIDIA_NV43_GEFORCE_6600_GEFORCE,NV_ARCH_30}, - {DEVICE_NVIDIA_NV43_GEFORCE_6600_GEFORCE2,NV_ARCH_30}, + {DEVICE_NVIDIA_NV40_GEFORCE_68008,NV_ARCH_30}, + {DEVICE_NVIDIA_NV43_GEFORCE_6600,NV_ARCH_30}, + {DEVICE_NVIDIA_NV43_GEFORCE_66002,NV_ARCH_30}, {DEVICE_NVIDIA_NV43_GEFORCE_6200,NV_ARCH_30}, {DEVICE_NVIDIA_NV43_GEFORCE_62002,NV_ARCH_30}, {DEVICE_NVIDIA_NV43_GEFORCE_6600,NV_ARCH_30}, @@ -267,45 +266,45 @@ {DEVICE_NVIDIA_NV43_GEFORCE_GO6,NV_ARCH_30}, {DEVICE_NVIDIA_NV43_GEFORCE_6610,NV_ARCH_30}, {DEVICE_NVIDIA_NV43GL_QUADRO_FX,NV_ARCH_30}, + {DEVICE_NVIDIA_GEFORCE_6150SE_NFORCE,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_6100_NFORCE,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_6100_NFORCE2,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_6100_NFORCE3,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_6100_NFORCE4,NV_ARCH_30}, {DEVICE_NVIDIA_C51G_GEFORCE_6100,NV_ARCH_30}, {DEVICE_NVIDIA_C51PV_GEFORCE_6150,NV_ARCH_30}, {DEVICE_NVIDIA_NV44_GEFORCE_6200,NV_ARCH_30}, + {DEVICE_NVIDIA_NV44_GEFORCE_6200SE,NV_ARCH_30}, {DEVICE_NVIDIA_NV44_GEFORCE_62002,NV_ARCH_30}, - {DEVICE_NVIDIA_NV44_GEFORCE_62003,NV_ARCH_30}, {DEVICE_NVIDIA_NV44_GEFORCE_GO,NV_ARCH_30}, {DEVICE_NVIDIA_NV44_QUADRO_NVS,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_GO_6200,NV_ARCH_30}, + {DEVICE_NVIDIA_NV43_GEFORCE_GO6,NV_ARCH_30}, {DEVICE_NVIDIA_NV44A_GEFORCE_6200,NV_ARCH_30}, {DEVICE_NVIDIA_NV45GL_QUADRO_FX,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_GO_7200,NV_ARCH_30}, - {DEVICE_NVIDIA_QUADRO_NVS_110M,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_GO_7400,NV_ARCH_30}, - {DEVICE_NVIDIA_QUADRO_NVS_110M2,NV_ARCH_30}, - {DEVICE_NVIDIA_QUADRO_FX_350,NV_ARCH_30}, + {DEVICE_NVIDIA_G72M_QUADRO_NVS,NV_ARCH_30}, + {DEVICE_NVIDIA_G72M_GEFORCE_GO,NV_ARCH_30}, + {DEVICE_NVIDIA_G72M_QUADRO_NVS2,NV_ARCH_30}, + {DEVICE_NVIDIA_G72GL_QUADRO_FX2,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_7300,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_7300_GS,NV_ARCH_30}, + {DEVICE_NVIDIA_G71_GEFORCE_7300,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_7600,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_76002,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_7600_GS,NV_ARCH_30}, + {DEVICE_NVIDIA_G73_GEFORCE_7600,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_GO,NV_ARCH_30}, - {DEVICE_NVIDIA_QUADRO_FX_560,NV_ARCH_30}, + {DEVICE_NVIDIA_G73GL_QUADRO_FX,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_7800,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_78002,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_78003,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_78004,NV_ARCH_30}, {DEVICE_NVIDIA_G70_GEFORCE_78005,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_GO_7800,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_7900_GTX,NV_ARCH_30}, - {DEVICE_NVIDIA_GEFORCE_7900_GT,NV_ARCH_30}, + {DEVICE_NVIDIA_G70_GEFORCE_GO,NV_ARCH_30}, + {DEVICE_NVIDIA_G71_GEFORCE_7900,NV_ARCH_30}, + {DEVICE_NVIDIA_G71_GEFORCE_79002,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_7900_GS,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_GO_7900,NV_ARCH_30}, {DEVICE_NVIDIA_GEFORCE_GO_79002,NV_ARCH_30}, - {DEVICE_NVIDIA_GE_FORCE_GO,NV_ARCH_30}, - {DEVICE_NVIDIA_G70GL_QUADRO_FX4500,NV_ARCH_30}, + {DEVICE_NVIDIA_G70_GEFORCE_GO2,NV_ARCH_30}, + {DEVICE_NVIDIA_G70GL_QUADRO_FX,NV_ARCH_30}, {DEVICE_NVIDIA_G71_QUADRO_FX,NV_ARCH_30}, {DEVICE_NVIDIA_G71_QUADRO_FX2,NV_ARCH_30} }; Modified: trunk/vidix/vidix/drivers/radeon_vid.c =================================================================== --- trunk/vidix/vidix/drivers/radeon_vid.c 2008-10-29 18:08:38 UTC (rev 330) +++ trunk/vidix/vidix/drivers/radeon_vid.c 2008-10-29 18:55:43 UTC (rev 331) @@ -386,10 +386,10 @@ { DEVICE_ATI_RADEON_RV250_IE, R_250|R_OVL_SHIFT }, { DEVICE_ATI_RADEON_RV250_IF, R_250|R_OVL_SHIFT }, { DEVICE_ATI_RADEON_RV250_IG, R_250|R_OVL_SHIFT }, - { DEVICE_ATI_RADEON_R250_LD, R_250|R_OVL_SHIFT }, - { DEVICE_ATI_RADEON_R250_LE, R_250|R_OVL_SHIFT }, - { DEVICE_ATI_RADEON_R250_MOBILITY, R_250|R_OVL_SHIFT }, - { DEVICE_ATI_RADEON_R250_LG, R_250|R_OVL_SHIFT }, + { DEVICE_ATI_RADEON_RV250_LD, R_250|R_OVL_SHIFT }, + { DEVICE_ATI_RADEON_RV250_LE, R_250|R_OVL_SHIFT }, + { DEVICE_ATI_RADEON_RV250_MOBILITY, R_250|R_OVL_SHIFT }, + { DEVICE_ATI_RADEON_RV250_LG, R_250|R_OVL_SHIFT }, { DEVICE_ATI_RV250_RADEON_9000, R_250|R_OVL_SHIFT }, { DEVICE_ATI_RADEON_RV250_RADEON2, R_250|R_OVL_SHIFT }, { DEVICE_ATI_RV280_RADEON_9200, R_280 }, @@ -414,19 +414,19 @@ { DEVICE_ATI_R350_AH_RADEON, R_350 }, { DEVICE_ATI_R350_AI_RADEON, R_350 }, { DEVICE_ATI_R350_AJ_RADEON, R_350 }, - { DEVICE_ATI_R350_AK_FIRE, R_350 }, + { DEVICE_ATI_R350_AK_FIREGL, R_350 }, { DEVICE_ATI_RADEON_R350_RADEON2, R_350 }, { DEVICE_ATI_RADEON_R350_RADEON3, R_350 }, { DEVICE_ATI_RV350_NJ_RADEON, R_350 }, - { DEVICE_ATI_R350_NK_FIRE, R_350 }, + { DEVICE_ATI_R350_NK_FIREGL, R_350 }, { DEVICE_ATI_RV350_AP_RADEON, R_350 }, { DEVICE_ATI_RV350_AQ_RADEON, R_350 }, { DEVICE_ATI_RV350_AR_RADEON, R_350 }, { DEVICE_ATI_RV350_AS_RADEON, R_350 }, - { DEVICE_ATI_RV350_AT_FIRE, R_350 }, - { DEVICE_ATI_RV350_AU_FIRE, R_350 }, - { DEVICE_ATI_RV350_AV_FIRE, R_350 }, - { DEVICE_ATI_RV350_AW_FIRE, R_350 }, + { DEVICE_ATI_RV350_AT_FIREGL, R_350 }, + { DEVICE_ATI_RV350_AU_FIREGL, R_350 }, + { DEVICE_ATI_RV350_AV_FIREGL, R_350 }, + { DEVICE_ATI_RV350_AW_FIREGL, R_350 }, { DEVICE_ATI_RV350_MOBILITY_RADEON, R_350 }, { DEVICE_ATI_RV350_NF_RADEON, R_300 }, { DEVICE_ATI_RV350_NJ_RADEON, R_300 }, @@ -443,7 +443,7 @@ { DEVICE_ATI_RV370_5B65_FIREGL, R_370|R_PCIE }, { DEVICE_ATI_M24_1P_RADEON, R_370 }, { DEVICE_ATI_M22_RADEON_MOBILITY, R_370 }, - { DEVICE_ATI_M24_1T_FIREGL, R_370 }, + { DEVICE_ATI_M24GL_MOBILITY_FIREGL, R_370 }, { DEVICE_ATI_M24_RADEON_MOBILITY, R_370 }, { DEVICE_ATI_RV370_RADEON_X300SE, R_370 }, { DEVICE_ATI_RV370_SECONDARY_SAPPHIRE, R_370 }, @@ -487,12 +487,12 @@ { DEVICE_ATI_R423_UI_RADEON, R_420|R_PCIE }, { DEVICE_ATI_R423_UJ_RADEON, R_420|R_PCIE }, { DEVICE_ATI_R423_UK_RADEON, R_420|R_PCIE }, - { DEVICE_ATI_R423_FIRE_GL, R_420|R_PCIE }, - { DEVICE_ATI_R423_UQ_FIREGL, R_420|R_PCIE }, + { DEVICE_ATI_R423_FIREGL_V7100, R_420|R_PCIE }, + { DEVICE_ATI_R423_FIREGL_V5100, R_420|R_PCIE }, { DEVICE_ATI_R423_UR_FIREGL, R_420|R_PCIE }, { DEVICE_ATI_R423_UT_FIREGL, R_420|R_PCIE }, { DEVICE_ATI_R423_UI_RADEON2, R_420|R_PCIE }, - { DEVICE_ATI_R423GL_SE_ATI_FIREGL, R_420|R_PCIE }, + { DEVICE_ATI_R423GL_SE_FIREGL_V5100, R_420|R_PCIE }, { DEVICE_ATI_R423_RADEON_X800XT, R_420|R_PCIE }, { DEVICE_ATI_RADEON_R423_UK, R_420|R_PCIE }, { DEVICE_ATI_M28_RADEON_MOBILITY, R_420 }, Modified: trunk/vidix/vidix/drivers/unichrome_vid.c =================================================================== --- trunk/vidix/vidix/drivers/unichrome_vid.c 2008-10-29 18:08:38 UTC (rev 330) +++ trunk/vidix/vidix/drivers/unichrome_vid.c 2008-10-29 18:55:43 UTC (rev 331) @@ -106,8 +106,8 @@ static unsigned short uc_card_ids[] = { - DEVICE_VIA2_VT8623_APOLLO_CLE266, - DEVICE_VIA2_VT8378_S3_UNICHROME + DEVICE_VIA_VT8623_APOLLO_CLE266, + DEVICE_VIA_KM400_KN400_P4M800_S3_UNICHROME }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nic...@us...> - 2008-10-29 18:08:41
|
Revision: 330 http://vidix.svn.sourceforge.net/vidix/?rev=330&view=rev Author: nickols_k Date: 2008-10-29 18:08:38 +0000 (Wed, 29 Oct 2008) Log Message: ----------- prefer gawk as more accurate generator Modified Paths: -------------- trunk/vidix/configure trunk/vidix/libdha/Makefile Modified: trunk/vidix/configure =================================================================== --- trunk/vidix/configure 2008-10-29 18:01:30 UTC (rev 329) +++ trunk/vidix/configure 2008-10-29 18:08:38 UTC (rev 330) @@ -316,7 +316,7 @@ _awk= _awk_verc_fail=yes echo ${_echo_n} "Checking for "awk" ... ${_echo_c}" -for _awk in mawk gawk nawk awk; do +for _awk in gawk nawk awk mawk; do if ( $_awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then _awk_verc_fail=no break Modified: trunk/vidix/libdha/Makefile =================================================================== --- trunk/vidix/libdha/Makefile 2008-10-29 18:01:30 UTC (rev 329) +++ trunk/vidix/libdha/Makefile 2008-10-29 18:08:38 UTC (rev 330) @@ -64,7 +64,7 @@ all: $(LIB_TARGETS) -pci_names.c: oth/pci.db +pci_names.c: oth/pci.ids LC_ALL=C $(AWK) -f pci_db2c.awk $< test: pci_names.c $(LIBNAME) $(SHORTNAME) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |