1de2362d3Smrg/* 2de2362d3Smrg * Copyright 2000 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 "radeon_probe.h" 28de2362d3Smrg#include "radeon_version.h" 29de2362d3Smrg 30de2362d3Smrg#include "xf86.h" 31de2362d3Smrg 32de2362d3Smrg/* Module loader interface for subsidiary driver module */ 33de2362d3Smrg 34de2362d3Smrgstatic XF86ModuleVersionInfo RADEONVersionRec = 35de2362d3Smrg{ 36de2362d3Smrg RADEON_DRIVER_NAME, 37de2362d3Smrg MODULEVENDORSTRING, 38de2362d3Smrg MODINFOSTRING1, 39de2362d3Smrg MODINFOSTRING2, 40de2362d3Smrg XORG_VERSION_CURRENT, 41de2362d3Smrg RADEON_VERSION_MAJOR, RADEON_VERSION_MINOR, RADEON_VERSION_PATCH, 42de2362d3Smrg ABI_CLASS_VIDEODRV, 43de2362d3Smrg ABI_VIDEODRV_VERSION, 44de2362d3Smrg MOD_CLASS_VIDEODRV, 45de2362d3Smrg {0, 0, 0, 0} 46de2362d3Smrg}; 47de2362d3Smrg 48de2362d3Smrg/* 49de2362d3Smrg * RADEONSetup -- 50de2362d3Smrg * 51de2362d3Smrg * This function is called every time the module is loaded. 52de2362d3Smrg */ 53de2362d3Smrgstatic pointer 54de2362d3SmrgRADEONSetup 55de2362d3Smrg( 56de2362d3Smrg pointer Module, 57de2362d3Smrg pointer Options, 58de2362d3Smrg int *ErrorMajor, 59de2362d3Smrg int *ErrorMinor 60de2362d3Smrg) 61de2362d3Smrg{ 62de2362d3Smrg static Bool Inited = FALSE; 63de2362d3Smrg 64de2362d3Smrg if (!Inited) { 65de2362d3Smrg Inited = TRUE; 66de2362d3Smrg xf86AddDriver(&RADEON, Module, HaveDriverFuncs); 67de2362d3Smrg } 68de2362d3Smrg 69de2362d3Smrg return (pointer)TRUE; 70de2362d3Smrg} 71de2362d3Smrg 72de2362d3Smrg/* The following record must be called radeonModuleData */ 73de2362d3Smrg_X_EXPORT XF86ModuleData radeonModuleData = 74de2362d3Smrg{ 75de2362d3Smrg &RADEONVersionRec, 76de2362d3Smrg RADEONSetup, 77de2362d3Smrg NULL 78de2362d3Smrg}; 79