Subversion Repositories Kolibri OS

Rev

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

Rev 5270 Rev 6082
Line 41... Line 41...
41
 */
41
 */
42
struct drm_modeset_acquire_ctx {
42
struct drm_modeset_acquire_ctx {
Line 43... Line 43...
43
 
43
 
Line 44... Line 44...
44
	struct ww_acquire_ctx ww_ctx;
44
	struct ww_acquire_ctx ww_ctx;
45
 
45
 
46
	/**
46
	/*
47
	 * Contended lock: if a lock is contended you should only call
47
	 * Contended lock: if a lock is contended you should only call
48
	 * drm_modeset_backoff() which drops locks and slow-locks the
48
	 * drm_modeset_backoff() which drops locks and slow-locks the
49
	 * contended lock.
49
	 * contended lock.
Line 50... Line 50...
50
	 */
50
	 */
51
	struct drm_modeset_lock *contended;
51
	struct drm_modeset_lock *contended;
52
 
52
 
53
	/**
53
	/*
Line 54... Line 54...
54
	 * list of held locks (drm_modeset_lock)
54
	 * list of held locks (drm_modeset_lock)
55
	 */
55
	 */
56
	struct list_head locked;
56
	struct list_head locked;
57
 
57
 
58
	/**
58
	/*
Line 68... Line 68...
68
 *    part of an atomic update
68
 *    part of an atomic update
69
 *
69
 *
70
 * Used for locking CRTCs and other modeset resources.
70
 * Used for locking CRTCs and other modeset resources.
71
 */
71
 */
72
struct drm_modeset_lock {
72
struct drm_modeset_lock {
73
	/**
73
	/*
74
	 * modeset lock
74
	 * modeset lock
75
	 */
75
	 */
76
	struct ww_mutex mutex;
76
	struct ww_mutex mutex;
Line 77... Line 77...
77
 
77
 
78
	/**
78
	/*
79
	 * Resources that are locked as part of an atomic update are added
79
	 * Resources that are locked as part of an atomic update are added
80
	 * to a list (so we know what to unlock at the end).
80
	 * to a list (so we know what to unlock at the end).
81
	 */
81
	 */
82
	struct list_head head;
82
	struct list_head head;
Line 128... Line 128...
128
struct drm_device;
128
struct drm_device;
129
struct drm_crtc;
129
struct drm_crtc;
130
struct drm_plane;
130
struct drm_plane;
Line 131... Line 131...
131
 
131
 
132
void drm_modeset_lock_all(struct drm_device *dev);
-
 
133
int __drm_modeset_lock_all(struct drm_device *dev, bool trylock);
132
void drm_modeset_lock_all(struct drm_device *dev);
134
void drm_modeset_unlock_all(struct drm_device *dev);
133
void drm_modeset_unlock_all(struct drm_device *dev);
135
void drm_modeset_lock_crtc(struct drm_crtc *crtc,
134
void drm_modeset_lock_crtc(struct drm_crtc *crtc,
136
			   struct drm_plane *plane);
135
			   struct drm_plane *plane);
137
void drm_modeset_unlock_crtc(struct drm_crtc *crtc);
136
void drm_modeset_unlock_crtc(struct drm_crtc *crtc);