mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	drm: Move vblank related module options into drm_irq.c
This allows us to drop 2 header declarations from drmP.h. The 3rd one is also used in drm_ioctl.c, so for that create a new drm_internal.h header for non-legacy non-kms (since we have internal headers for those parts already) declarations private to drm.ko. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
		
							parent
							
								
									7610a04c00
								
							
						
					
					
						commit
						1888299571
					
				
					 5 changed files with 40 additions and 17 deletions
				
			
		| 
						 | 
				
			
			@ -39,16 +39,6 @@
 | 
			
		|||
unsigned int drm_debug = 0;	/* 1 to enable debug output */
 | 
			
		||||
EXPORT_SYMBOL(drm_debug);
 | 
			
		||||
 | 
			
		||||
int drm_vblank_offdelay = 5000;    /* Default to 5000 msecs. */
 | 
			
		||||
 | 
			
		||||
unsigned int drm_timestamp_precision = 20;  /* Default to 20 usecs. */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Default to use monotonic timestamps for wait-for-vblank and page-flip
 | 
			
		||||
 * complete events.
 | 
			
		||||
 */
 | 
			
		||||
unsigned int drm_timestamp_monotonic = 1;
 | 
			
		||||
 | 
			
		||||
MODULE_AUTHOR(CORE_AUTHOR);
 | 
			
		||||
MODULE_DESCRIPTION(CORE_DESC);
 | 
			
		||||
MODULE_LICENSE("GPL and additional rights");
 | 
			
		||||
| 
						 | 
				
			
			@ -58,9 +48,6 @@ MODULE_PARM_DESC(timestamp_precision_usec, "Max. error on timestamps [usecs]");
 | 
			
		|||
MODULE_PARM_DESC(timestamp_monotonic, "Use monotonic timestamps");
 | 
			
		||||
 | 
			
		||||
module_param_named(debug, drm_debug, int, 0600);
 | 
			
		||||
module_param_named(vblankoffdelay, drm_vblank_offdelay, int, 0600);
 | 
			
		||||
module_param_named(timestamp_precision_usec, drm_timestamp_precision, int, 0600);
 | 
			
		||||
module_param_named(timestamp_monotonic, drm_timestamp_monotonic, int, 0600);
 | 
			
		||||
 | 
			
		||||
static DEFINE_SPINLOCK(drm_minor_lock);
 | 
			
		||||
static struct idr drm_minors_idr;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										24
									
								
								drivers/gpu/drm/drm_internal.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								drivers/gpu/drm/drm_internal.h
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,24 @@
 | 
			
		|||
/*
 | 
			
		||||
 * Copyright © 2014 Intel Corporation
 | 
			
		||||
 *   Daniel Vetter <daniel.vetter@ffwll.ch>
 | 
			
		||||
 *
 | 
			
		||||
 * Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
 * copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
 * to deal in the Software without restriction, including without limitation
 | 
			
		||||
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
 * and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
 * Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
 *
 | 
			
		||||
 * The above copyright notice and this permission notice shall be included in
 | 
			
		||||
 * all copies or substantial portions of the Software.
 | 
			
		||||
 *
 | 
			
		||||
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
			
		||||
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
 * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
 | 
			
		||||
 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
 | 
			
		||||
 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 | 
			
		||||
 * OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
extern unsigned int drm_timestamp_monotonic;
 | 
			
		||||
| 
						 | 
				
			
			@ -31,6 +31,7 @@
 | 
			
		|||
#include <drm/drmP.h>
 | 
			
		||||
#include <drm/drm_core.h>
 | 
			
		||||
#include "drm_legacy.h"
 | 
			
		||||
#include "drm_internal.h"
 | 
			
		||||
 | 
			
		||||
#include <linux/pci.h>
 | 
			
		||||
#include <linux/export.h>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -34,6 +34,7 @@
 | 
			
		|||
 | 
			
		||||
#include <drm/drmP.h>
 | 
			
		||||
#include "drm_trace.h"
 | 
			
		||||
#include "drm_internal.h"
 | 
			
		||||
 | 
			
		||||
#include <linux/interrupt.h>	/* For task queue support */
 | 
			
		||||
#include <linux/slab.h>
 | 
			
		||||
| 
						 | 
				
			
			@ -59,6 +60,20 @@ static bool
 | 
			
		|||
drm_get_last_vbltimestamp(struct drm_device *dev, int crtc,
 | 
			
		||||
			  struct timeval *tvblank, unsigned flags);
 | 
			
		||||
 | 
			
		||||
static unsigned int drm_timestamp_precision = 20;  /* Default to 20 usecs. */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Default to use monotonic timestamps for wait-for-vblank and page-flip
 | 
			
		||||
 * complete events.
 | 
			
		||||
 */
 | 
			
		||||
unsigned int drm_timestamp_monotonic = 1;
 | 
			
		||||
 | 
			
		||||
static int drm_vblank_offdelay = 5000;    /* Default to 5000 msecs. */
 | 
			
		||||
 | 
			
		||||
module_param_named(vblankoffdelay, drm_vblank_offdelay, int, 0600);
 | 
			
		||||
module_param_named(timestamp_precision_usec, drm_timestamp_precision, int, 0600);
 | 
			
		||||
module_param_named(timestamp_monotonic, drm_timestamp_monotonic, int, 0600);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * drm_update_vblank_count - update the master vblank counter
 | 
			
		||||
 * @dev: DRM device
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1207,10 +1207,6 @@ extern void drm_put_dev(struct drm_device *dev);
 | 
			
		|||
extern void drm_unplug_dev(struct drm_device *dev);
 | 
			
		||||
extern unsigned int drm_debug;
 | 
			
		||||
 | 
			
		||||
extern int drm_vblank_offdelay;
 | 
			
		||||
extern unsigned int drm_timestamp_precision;
 | 
			
		||||
extern unsigned int drm_timestamp_monotonic;
 | 
			
		||||
 | 
			
		||||
extern struct class *drm_class;
 | 
			
		||||
 | 
			
		||||
				/* Debugfs support */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue