xref: /dragonfly/sys/dev/drm/radeon/radeon_drv.c (revision 5de36205)
1 /* radeon_drv.c -- ATI Radeon driver -*- linux-c -*-
2  * Created: Wed Feb 14 17:10:04 2001 by gareth@valinux.com
3  *
4  * Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California.
5  * All Rights Reserved.
6  *
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  *
14  * The above copyright notice and this permission notice (including the next
15  * paragraph) shall be included in all copies or substantial portions of the
16  * Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
21  * VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
22  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
23  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
24  * OTHER DEALINGS IN THE SOFTWARE.
25  *
26  * Authors:
27  *    Gareth Hughes <gareth@valinux.com>
28  *
29  * $FreeBSD: src/sys/dev/drm/radeon_drv.c,v 1.6.2.1 2003/04/26 07:05:29 anholt Exp $
30  * $DragonFly: src/sys/dev/drm/radeon/Attic/radeon_drv.c,v 1.7 2005/01/03 06:45:23 asmodai Exp $
31  */
32 
33 #include "radeon.h"
34 #include "dev/drm/drmP.h"
35 #include "dev/drm/drm.h"
36 #include "radeon_drm.h"
37 #include "radeon_drv.h"
38 #if __REALLY_HAVE_SG
39 #include "dev/drm/ati_pcigart.h"
40 #endif
41 
42 drm_chipinfo_t DRM(devicelist)[] = {
43 	{0x1002, 0x4152, 1, "ATI Radeon 9600XT"},
44 	{0x1002, 0x4172, 1, "ATI Radeon 9600XT - Secondary"},
45 	{0x1002, 0x4242, 1, "ATI Radeon BB R200 AIW 8500DV"},
46 	{0x1002, 0x4336, 1, "ATI Radeon Mobility U1"},
47 	{0x1002, 0x4964, 1, "ATI Radeon Id R250 9000"},
48 	{0x1002, 0x4965, 1, "ATI Radeon Ie R250 9000"},
49 	{0x1002, 0x4966, 1, "ATI Radeon If R250 9000"},
50 	{0x1002, 0x4967, 1, "ATI Radeon Ig R250 9000"},
51 	{0x1002, 0x4C57, 1, "ATI Radeon LW Mobility 7500 M7"},
52 	{0x1002, 0x4C58, 1, "ATI Radeon LX RV200 Mobility FireGL 7800 M7"},
53 	{0x1002, 0x4C59, 1, "ATI Radeon LY Mobility M6"},
54 	{0x1002, 0x4C5A, 1, "ATI Radeon LZ Mobility M6"},
55 	{0x1002, 0x4C64, 1, "ATI Radeon Ld R250 Mobility 9000 M9"},
56 	{0x1002, 0x4C65, 1, "ATI Radeon Le R250 Mobility 9000 M9"},
57 	{0x1002, 0x4C66, 1, "ATI Radeon Lf R250 Mobility 9000 M9"},
58 	{0x1002, 0x4C67, 1, "ATI Radeon Lg R250 Mobility 9000 M9"},
59 	{0x1002, 0x5144, 1, "ATI Radeon QD R100"},
60 	{0x1002, 0x5145, 1, "ATI Radeon QE R100"},
61 	{0x1002, 0x5146, 1, "ATI Radeon QF R100"},
62 	{0x1002, 0x5147, 1, "ATI Radeon QG R100"},
63 	{0x1002, 0x5148, 1, "ATI Radeon QH FireGL 8x00"},
64 	{0x1002, 0x5149, 1, "ATI Radeon QI R200"},
65 	{0x1002, 0x514A, 1, "ATI Radeon QJ R200"},
66 	{0x1002, 0x514B, 1, "ATI Radeon QK R200"},
67 	{0x1002, 0x514C, 1, "ATI Radeon QL R200 8500 LE"},
68 	{0x1002, 0x514D, 1, "ATI Radeon QM R200 9100"},
69 	{0x1002, 0x514E, 1, "ATI Radeon QN R200 8500 LE"},
70 	{0x1002, 0x514F, 1, "ATI Radeon QO R200 8500 LE"},
71 	{0x1002, 0x5157, 1, "ATI Radeon QW RV200 7500"},
72 	{0x1002, 0x5158, 1, "ATI Radeon QX RV200 7500"},
73 	{0x1002, 0x5159, 1, "ATI Radeon QY RV100 VE"},
74 	{0x1002, 0x515A, 1, "ATI Radeon QZ RV100 VE"},
75 	{0x1002, 0x5168, 1, "ATI Radeon Qh R200"},
76 	{0x1002, 0x5169, 1, "ATI Radeon Qi R200"},
77 	{0x1002, 0x516A, 1, "ATI Radeon Qj R200"},
78 	{0x1002, 0x516B, 1, "ATI Radeon Qk R200"},
79 	{0x1002, 0x516C, 1, "ATI Radeon Ql R200"},
80 	{0x1002, 0x5961, 1, "ATI Radeon RV280 9200"},
81 	{0x1002, 0x5964, 1, "ATI Radeon RV280 9200SE"},
82 	{0, 0, 0, NULL}
83 };
84 
85 #include "dev/drm/drm_agpsupport.h"
86 #include "dev/drm/drm_auth.h"
87 #include "dev/drm/drm_bufs.h"
88 #include "dev/drm/drm_context.h"
89 #include "dev/drm/drm_dma.h"
90 #include "dev/drm/drm_drawable.h"
91 #include "dev/drm/drm_drv.h"
92 #include "dev/drm/drm_fops.h"
93 #include "dev/drm/drm_ioctl.h"
94 #include "dev/drm/drm_lock.h"
95 #include "dev/drm/drm_memory.h"
96 #include "dev/drm/drm_vm.h"
97 #include "dev/drm/drm_sysctl.h"
98 #if __HAVE_SG
99 #include "dev/drm/drm_scatter.h"
100 #endif
101 
102 #if defined(__DragonFly__) || defined(__FreeBSD__)
103 DRIVER_MODULE(DRIVER_NAME, pci, DRM(driver), DRM(devclass), 0, 0);
104 #elif defined(__NetBSD__)
105 CFDRIVER_DECL(radeon, DV_TTY, NULL);
106 #endif /* __FreeBSD__ */
107