Subversion Repositories Kolibri OS

Rev

Rev 2338 | Rev 2340 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2338 Rev 2339
Line 1... Line -...
1
/* i915_drv.c -- i830,i845,i855,i865,i915 driver -*- linux-c -*-
-
 
2
 */
1
/* i915_drv.c -- i830,i845,i855,i865,i915 driver -*- linux-c -*-
3
/*
2
 */
4
 *
3
/*
5
 * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas.
4
 *
6
 * All Rights Reserved.
5
 * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas.
Line 72... Line 71...
72
    .subvendor = PCI_ANY_ID,                \
71
    .device = id,                           \
73
    .subdevice = PCI_ANY_ID,                \
72
    .subvendor = PCI_ANY_ID,                \
74
    .driver_data = (unsigned long) info }
73
    .subdevice = PCI_ANY_ID,                \
75
 
74
    .driver_data = (unsigned long) info }
Line -... Line 75...
-
 
75
 
-
 
76
static const struct intel_device_info intel_i830_info = {
-
 
77
	.gen = 2, .is_mobile = 1, .cursor_needs_physical = 1,
-
 
78
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
79
};
-
 
80
 
-
 
81
static const struct intel_device_info intel_845g_info = {
-
 
82
	.gen = 2,
-
 
83
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
84
};
-
 
85
 
-
 
86
static const struct intel_device_info intel_i85x_info = {
-
 
87
	.gen = 2, .is_i85x = 1, .is_mobile = 1,
-
 
88
	.cursor_needs_physical = 1,
-
 
89
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
90
};
-
 
91
 
-
 
92
static const struct intel_device_info intel_i865g_info = {
-
 
93
	.gen = 2,
-
 
94
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
95
};
-
 
96
 
-
 
97
static const struct intel_device_info intel_i915g_info = {
-
 
98
	.gen = 3, .is_i915g = 1, .cursor_needs_physical = 1,
-
 
99
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
100
};
-
 
101
static const struct intel_device_info intel_i915gm_info = {
-
 
102
	.gen = 3, .is_mobile = 1,
-
 
103
	.cursor_needs_physical = 1,
-
 
104
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
105
	.supports_tv = 1,
-
 
106
};
-
 
107
static const struct intel_device_info intel_i945g_info = {
-
 
108
	.gen = 3, .has_hotplug = 1, .cursor_needs_physical = 1,
-
 
109
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
110
};
-
 
111
static const struct intel_device_info intel_i945gm_info = {
-
 
112
	.gen = 3, .is_i945gm = 1, .is_mobile = 1,
-
 
113
	.has_hotplug = 1, .cursor_needs_physical = 1,
-
 
114
	.has_overlay = 1, .overlay_needs_physical = 1,
-
 
115
	.supports_tv = 1,
-
 
116
};
-
 
117
 
-
 
118
static const struct intel_device_info intel_i965g_info = {
-
 
119
	.gen = 4, .is_broadwater = 1,
-
 
120
	.has_hotplug = 1,
-
 
121
	.has_overlay = 1,
-
 
122
};
-
 
123
 
-
 
124
static const struct intel_device_info intel_i965gm_info = {
-
 
125
	.gen = 4, .is_crestline = 1,
-
 
126
	.is_mobile = 1, .has_fbc = 1, .has_hotplug = 1,
-
 
127
	.has_overlay = 1,
-
 
128
	.supports_tv = 1,
-
 
129
};
-
 
130
 
-
 
131
static const struct intel_device_info intel_g33_info = {
-
 
132
	.gen = 3, .is_g33 = 1,
-
 
133
	.need_gfx_hws = 1, .has_hotplug = 1,
-
 
134
	.has_overlay = 1,
-
 
135
};
-
 
136
 
-
 
137
static const struct intel_device_info intel_g45_info = {
-
 
138
	.gen = 4, .is_g4x = 1, .need_gfx_hws = 1,
-
 
139
	.has_pipe_cxsr = 1, .has_hotplug = 1,
-
 
140
	.has_bsd_ring = 1,
-
 
141
};
-
 
142
 
-
 
143
static const struct intel_device_info intel_gm45_info = {
-
 
144
	.gen = 4, .is_g4x = 1,
-
 
145
	.is_mobile = 1, .need_gfx_hws = 1, .has_fbc = 1,
-
 
146
	.has_pipe_cxsr = 1, .has_hotplug = 1,
-
 
147
	.supports_tv = 1,
-
 
148
	.has_bsd_ring = 1,
-
 
149
};
-
 
150
 
-
 
151
static const struct intel_device_info intel_pineview_info = {
-
 
152
	.gen = 3, .is_g33 = 1, .is_pineview = 1, .is_mobile = 1,
-
 
153
	.need_gfx_hws = 1, .has_hotplug = 1,
-
 
154
	.has_overlay = 1,
-
 
155
};
-
 
156
 
-
 
157
static const struct intel_device_info intel_ironlake_d_info = {
-
 
158
	.gen = 5,
-
 
159
	.need_gfx_hws = 1, .has_pipe_cxsr = 1, .has_hotplug = 1,
-
 
160
	.has_bsd_ring = 1,
-
 
161
};
-
 
162
 
-
 
163
static const struct intel_device_info intel_ironlake_m_info = {
-
 
164
	.gen = 5, .is_mobile = 1,
-
 
165
	.need_gfx_hws = 1, .has_hotplug = 1,
-
 
166
	.has_fbc = 1,
-
 
167
	.has_bsd_ring = 1,
-
 
168
};
76
static const struct intel_device_info intel_sandybridge_d_info = {
169
 
77
    .gen = 6,
170
static const struct intel_device_info intel_sandybridge_d_info = {
78
	.need_gfx_hws = 1, .has_hotplug = 1,
171
    .gen = 6,
79
    .has_bsd_ring = 1,
172
	.need_gfx_hws = 1, .has_hotplug = 1,
80
    .has_blt_ring = 1,
173
    .has_bsd_ring = 1,
Line 87... Line 180...
87
    .has_bsd_ring = 1,
180
    .has_fbc      = 1,
88
    .has_blt_ring = 1,
181
    .has_bsd_ring = 1,
89
};
182
    .has_blt_ring = 1,
90
 
183
};
Line -... Line 184...
-
 
184
 
-
 
185
static const struct intel_device_info intel_ivybridge_d_info = {
-
 
186
	.is_ivybridge = 1, .gen = 7,
-
 
187
	.need_gfx_hws = 1, .has_hotplug = 1,
-
 
188
	.has_bsd_ring = 1,
-
 
189
	.has_blt_ring = 1,
-
 
190
};
-
 
191
 
-
 
192
static const struct intel_device_info intel_ivybridge_m_info = {
-
 
193
	.is_ivybridge = 1, .gen = 7, .is_mobile = 1,
-
 
194
	.need_gfx_hws = 1, .has_hotplug = 1,
-
 
195
	.has_fbc = 0,	/* FBC is not enabled on Ivybridge mobile yet */
-
 
196
	.has_bsd_ring = 1,
-
 
197
	.has_blt_ring = 1,
Line 91... Line 198...
91
 
198
};
-
 
199
 
-
 
200
static const struct pci_device_id pciidlist[] = {       /* aka */
-
 
201
	INTEL_VGA_DEVICE(0x2582, &intel_i915g_info),		/* I915_G */
-
 
202
	INTEL_VGA_DEVICE(0x258a, &intel_i915g_info),		/* E7221_G */
-
 
203
	INTEL_VGA_DEVICE(0x2592, &intel_i915gm_info),		/* I915_GM */
-
 
204
	INTEL_VGA_DEVICE(0x2772, &intel_i945g_info),		/* I945_G */
-
 
205
	INTEL_VGA_DEVICE(0x27a2, &intel_i945gm_info),		/* I945_GM */
-
 
206
	INTEL_VGA_DEVICE(0x27ae, &intel_i945gm_info),		/* I945_GME */
-
 
207
	INTEL_VGA_DEVICE(0x2972, &intel_i965g_info),		/* I946_GZ */
-
 
208
	INTEL_VGA_DEVICE(0x2982, &intel_i965g_info),		/* G35_G */
-
 
209
	INTEL_VGA_DEVICE(0x2992, &intel_i965g_info),		/* I965_Q */
-
 
210
	INTEL_VGA_DEVICE(0x29a2, &intel_i965g_info),		/* I965_G */
-
 
211
	INTEL_VGA_DEVICE(0x29b2, &intel_g33_info),		/* Q35_G */
-
 
212
	INTEL_VGA_DEVICE(0x29c2, &intel_g33_info),		/* G33_G */
-
 
213
	INTEL_VGA_DEVICE(0x29d2, &intel_g33_info),		/* Q33_G */
-
 
214
	INTEL_VGA_DEVICE(0x2a02, &intel_i965gm_info),		/* I965_GM */
-
 
215
	INTEL_VGA_DEVICE(0x2a12, &intel_i965gm_info),		/* I965_GME */
-
 
216
	INTEL_VGA_DEVICE(0x2a42, &intel_gm45_info),		/* GM45_G */
-
 
217
	INTEL_VGA_DEVICE(0x2e02, &intel_g45_info),		/* IGD_E_G */
-
 
218
	INTEL_VGA_DEVICE(0x2e12, &intel_g45_info),		/* Q45_G */
-
 
219
	INTEL_VGA_DEVICE(0x2e22, &intel_g45_info),		/* G45_G */
-
 
220
	INTEL_VGA_DEVICE(0x2e32, &intel_g45_info),		/* G41_G */
-
 
221
	INTEL_VGA_DEVICE(0x2e42, &intel_g45_info),		/* B43_G */
-
 
222
	INTEL_VGA_DEVICE(0x2e92, &intel_g45_info),		/* B43_G.1 */
-
 
223
	INTEL_VGA_DEVICE(0xa001, &intel_pineview_info),
-
 
224
	INTEL_VGA_DEVICE(0xa011, &intel_pineview_info),
92
static const struct pci_device_id pciidlist[] = {       /* aka */
225
	INTEL_VGA_DEVICE(0x0042, &intel_ironlake_d_info),
93
    INTEL_VGA_DEVICE(0x0102, &intel_sandybridge_d_info),
226
	INTEL_VGA_DEVICE(0x0046, &intel_ironlake_m_info),
94
    INTEL_VGA_DEVICE(0x0112, &intel_sandybridge_d_info),
227
    INTEL_VGA_DEVICE(0x0102, &intel_sandybridge_d_info),
95
    INTEL_VGA_DEVICE(0x0122, &intel_sandybridge_d_info),
228
    INTEL_VGA_DEVICE(0x0112, &intel_sandybridge_d_info),
96
    INTEL_VGA_DEVICE(0x0106, &intel_sandybridge_m_info),
229
    INTEL_VGA_DEVICE(0x0122, &intel_sandybridge_d_info),
97
    INTEL_VGA_DEVICE(0x0116, &intel_sandybridge_m_info),
230
    INTEL_VGA_DEVICE(0x0106, &intel_sandybridge_m_info),
98
    INTEL_VGA_DEVICE(0x0126, &intel_sandybridge_m_info),
231
    INTEL_VGA_DEVICE(0x0116, &intel_sandybridge_m_info),
-
 
232
    INTEL_VGA_DEVICE(0x0126, &intel_sandybridge_m_info),
-
 
233
    INTEL_VGA_DEVICE(0x010A, &intel_sandybridge_d_info),
-
 
234
	INTEL_VGA_DEVICE(0x0156, &intel_ivybridge_m_info), /* GT1 mobile */
-
 
235
	INTEL_VGA_DEVICE(0x0166, &intel_ivybridge_m_info), /* GT2 mobile */
-
 
236
	INTEL_VGA_DEVICE(0x0152, &intel_ivybridge_d_info), /* GT1 desktop */
99
    INTEL_VGA_DEVICE(0x010A, &intel_sandybridge_d_info),
237
	INTEL_VGA_DEVICE(0x0162, &intel_ivybridge_d_info), /* GT2 desktop */
100
    {0, 0, 0}
238
	INTEL_VGA_DEVICE(0x015a, &intel_ivybridge_d_info), /* GT1 server */
Line 101... Line 239...
101
};
239
    {0, 0, 0}
102
 
240
};