aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_drv.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_drv.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_drv.c34
1 files changed, 31 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
index 7f50fb864af8..b3749d47be7b 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.c
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
@@ -40,9 +40,13 @@
40 40
41/* 41/*
42 * KMS wrapper. 42 * KMS wrapper.
43 * - 2.0.0 - initial interface
44 * - 2.1.0 - add square tiling interface
45 * - 2.2.0 - add r6xx/r7xx const buffer support
46 * - 2.3.0 - add MSPOS + 3D texture + r500 VAP regs
43 */ 47 */
44#define KMS_DRIVER_MAJOR 2 48#define KMS_DRIVER_MAJOR 2
45#define KMS_DRIVER_MINOR 0 49#define KMS_DRIVER_MINOR 3
46#define KMS_DRIVER_PATCHLEVEL 0 50#define KMS_DRIVER_PATCHLEVEL 0
47int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags); 51int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags);
48int radeon_driver_unload_kms(struct drm_device *dev); 52int radeon_driver_unload_kms(struct drm_device *dev);
@@ -86,6 +90,11 @@ int radeon_benchmarking = 0;
86int radeon_testing = 0; 90int radeon_testing = 0;
87int radeon_connector_table = 0; 91int radeon_connector_table = 0;
88int radeon_tv = 1; 92int radeon_tv = 1;
93int radeon_new_pll = -1;
94int radeon_dynpm = -1;
95int radeon_audio = 1;
96int radeon_disp_priority = 0;
97int radeon_hw_i2c = 0;
89 98
90MODULE_PARM_DESC(no_wb, "Disable AGP writeback for scratch registers"); 99MODULE_PARM_DESC(no_wb, "Disable AGP writeback for scratch registers");
91module_param_named(no_wb, radeon_no_wb, int, 0444); 100module_param_named(no_wb, radeon_no_wb, int, 0444);
@@ -120,6 +129,21 @@ module_param_named(connector_table, radeon_connector_table, int, 0444);
120MODULE_PARM_DESC(tv, "TV enable (0 = disable)"); 129MODULE_PARM_DESC(tv, "TV enable (0 = disable)");
121module_param_named(tv, radeon_tv, int, 0444); 130module_param_named(tv, radeon_tv, int, 0444);
122 131
132MODULE_PARM_DESC(new_pll, "Select new PLL code");
133module_param_named(new_pll, radeon_new_pll, int, 0444);
134
135MODULE_PARM_DESC(dynpm, "Disable/Enable dynamic power management (1 = enable)");
136module_param_named(dynpm, radeon_dynpm, int, 0444);
137
138MODULE_PARM_DESC(audio, "Audio enable (0 = disable)");
139module_param_named(audio, radeon_audio, int, 0444);
140
141MODULE_PARM_DESC(disp_priority, "Display Priority (0 = auto, 1 = normal, 2 = high)");
142module_param_named(disp_priority, radeon_disp_priority, int, 0444);
143
144MODULE_PARM_DESC(hw_i2c, "hw i2c engine enable (0 = disable)");
145module_param_named(hw_i2c, radeon_hw_i2c, int, 0444);
146
123static int radeon_suspend(struct drm_device *dev, pm_message_t state) 147static int radeon_suspend(struct drm_device *dev, pm_message_t state)
124{ 148{
125 drm_radeon_private_t *dev_priv = dev->dev_private; 149 drm_radeon_private_t *dev_priv = dev->dev_private;
@@ -188,10 +212,11 @@ static struct drm_driver driver_old = {
188 .owner = THIS_MODULE, 212 .owner = THIS_MODULE,
189 .open = drm_open, 213 .open = drm_open,
190 .release = drm_release, 214 .release = drm_release,
191 .ioctl = drm_ioctl, 215 .unlocked_ioctl = drm_ioctl,
192 .mmap = drm_mmap, 216 .mmap = drm_mmap,
193 .poll = drm_poll, 217 .poll = drm_poll,
194 .fasync = drm_fasync, 218 .fasync = drm_fasync,
219 .read = drm_read,
195#ifdef CONFIG_COMPAT 220#ifdef CONFIG_COMPAT
196 .compat_ioctl = radeon_compat_ioctl, 221 .compat_ioctl = radeon_compat_ioctl,
197#endif 222#endif
@@ -276,10 +301,11 @@ static struct drm_driver kms_driver = {
276 .owner = THIS_MODULE, 301 .owner = THIS_MODULE,
277 .open = drm_open, 302 .open = drm_open,
278 .release = drm_release, 303 .release = drm_release,
279 .ioctl = drm_ioctl, 304 .unlocked_ioctl = drm_ioctl,
280 .mmap = radeon_mmap, 305 .mmap = radeon_mmap,
281 .poll = drm_poll, 306 .poll = drm_poll,
282 .fasync = drm_fasync, 307 .fasync = drm_fasync,
308 .read = drm_read,
283#ifdef CONFIG_COMPAT 309#ifdef CONFIG_COMPAT
284 .compat_ioctl = radeon_kms_compat_ioctl, 310 .compat_ioctl = radeon_kms_compat_ioctl,
285#endif 311#endif
@@ -331,6 +357,7 @@ static int __init radeon_init(void)
331 driver = &kms_driver; 357 driver = &kms_driver;
332 driver->driver_features |= DRIVER_MODESET; 358 driver->driver_features |= DRIVER_MODESET;
333 driver->num_ioctls = radeon_max_kms_ioctl; 359 driver->num_ioctls = radeon_max_kms_ioctl;
360 radeon_register_atpx_handler();
334 } 361 }
335 /* if the vga console setting is enabled still 362 /* if the vga console setting is enabled still
336 * let modprobe override it */ 363 * let modprobe override it */
@@ -340,6 +367,7 @@ static int __init radeon_init(void)
340static void __exit radeon_exit(void) 367static void __exit radeon_exit(void)
341{ 368{
342 drm_exit(driver); 369 drm_exit(driver);
370 radeon_unregister_atpx_handler();
343} 371}
344 372
345module_init(radeon_init); 373module_init(radeon_init);