1de2362d3Smrg/* 2de2362d3Smrg * Copyright 1997 through 2004 by Marc Aurele La France (TSI @ UQV), tsi@xfree86.org 3de2362d3Smrg * 4de2362d3Smrg * Permission to use, copy, modify, distribute, and sell this software and its 5de2362d3Smrg * documentation for any purpose is hereby granted without fee, provided that 6de2362d3Smrg * the above copyright notice appear in all copies and that both that copyright 7de2362d3Smrg * notice and this permission notice appear in supporting documentation, and 8de2362d3Smrg * that the name of Marc Aurele La France not be used in advertising or 9de2362d3Smrg * publicity pertaining to distribution of the software without specific, 10de2362d3Smrg * written prior permission. Marc Aurele La France makes no representations 11de2362d3Smrg * about the suitability of this software for any purpose. It is provided 12de2362d3Smrg * "as-is" without express or implied warranty. 13de2362d3Smrg * 14de2362d3Smrg * MARC AURELE LA FRANCE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15de2362d3Smrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO 16de2362d3Smrg * EVENT SHALL MARC AURELE LA FRANCE BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17de2362d3Smrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 18de2362d3Smrg * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 19de2362d3Smrg * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 20de2362d3Smrg * PERFORMANCE OF THIS SOFTWARE. 21de2362d3Smrg */ 22de2362d3Smrg 23de2362d3Smrg#ifdef HAVE_CONFIG_H 24de2362d3Smrg#include "config.h" 25de2362d3Smrg#endif 26de2362d3Smrg 27de2362d3Smrg#include "ati.h" 28de2362d3Smrg#include "ativersion.h" 29de2362d3Smrg 30de2362d3Smrg/* Module loader interface */ 31de2362d3Smrg 32de2362d3Smrgstatic XF86ModuleVersionInfo ATIVersionRec = 33de2362d3Smrg{ 34de2362d3Smrg ATI_DRIVER_NAME, 35de2362d3Smrg MODULEVENDORSTRING, 36de2362d3Smrg MODINFOSTRING1, 37de2362d3Smrg MODINFOSTRING2, 38de2362d3Smrg XORG_VERSION_CURRENT, 39de2362d3Smrg ATI_VERSION_MAJOR, ATI_VERSION_MINOR, ATI_VERSION_PATCH, 40de2362d3Smrg ABI_CLASS_VIDEODRV, 41de2362d3Smrg ABI_VIDEODRV_VERSION, 42de2362d3Smrg MOD_CLASS_VIDEODRV, 43de2362d3Smrg {0, 0, 0, 0} 44de2362d3Smrg}; 45de2362d3Smrg 46de2362d3Smrg/* 47de2362d3Smrg * ATISetup -- 48de2362d3Smrg * 49de2362d3Smrg * This function is called every time the module is loaded. 50de2362d3Smrg */ 51de2362d3Smrgstatic pointer 52de2362d3SmrgATISetup 53de2362d3Smrg( 54de2362d3Smrg pointer Module, 55de2362d3Smrg pointer Options, 56de2362d3Smrg int *ErrorMajor, 57de2362d3Smrg int *ErrorMinor 58de2362d3Smrg) 59de2362d3Smrg{ 60de2362d3Smrg static Bool Inited = FALSE; 61de2362d3Smrg 62de2362d3Smrg if (!Inited) 63de2362d3Smrg { 64de2362d3Smrg Inited = TRUE; 65de2362d3Smrg ati_gdev_subdriver(Options); 66de2362d3Smrg } 67de2362d3Smrg 68de2362d3Smrg return (pointer)1; 69de2362d3Smrg} 70de2362d3Smrg 71de2362d3Smrg/* The following record must be called atiModuleData */ 72de2362d3Smrg_X_EXPORT XF86ModuleData atiModuleData = 73de2362d3Smrg{ 74de2362d3Smrg &ATIVersionRec, 75de2362d3Smrg ATISetup, 76de2362d3Smrg NULL 77de2362d3Smrg}; 78