diff options
Diffstat (limited to 'include/drm/drm_irq.h')
-rw-r--r-- | include/drm/drm_irq.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/include/drm/drm_irq.h b/include/drm/drm_irq.h index cf0be6594c8c..569ca86d4e1f 100644 --- a/include/drm/drm_irq.h +++ b/include/drm/drm_irq.h | |||
@@ -121,6 +121,18 @@ struct drm_vblank_crtc { | |||
121 | * drm_calc_timestamping_constants(). | 121 | * drm_calc_timestamping_constants(). |
122 | */ | 122 | */ |
123 | int linedur_ns; | 123 | int linedur_ns; |
124 | |||
125 | /** | ||
126 | * @hwmode: | ||
127 | * | ||
128 | * Cache of the current hardware display mode. Only valid when @enabled | ||
129 | * is set. This is used by helpers like | ||
130 | * drm_calc_vbltimestamp_from_scanoutpos(). We can't just access the | ||
131 | * hardware mode by e.g. looking at &drm_crtc_state.adjusted_mode, | ||
132 | * because that one is really hard to get from interrupt context. | ||
133 | */ | ||
134 | struct drm_display_mode hwmode; | ||
135 | |||
124 | /** | 136 | /** |
125 | * @enabled: Tracks the enabling state of the corresponding &drm_crtc to | 137 | * @enabled: Tracks the enabling state of the corresponding &drm_crtc to |
126 | * avoid double-disabling and hence corrupting saved state. Needed by | 138 | * avoid double-disabling and hence corrupting saved state. Needed by |
@@ -153,11 +165,10 @@ void drm_crtc_vblank_on(struct drm_crtc *crtc); | |||
153 | void drm_vblank_cleanup(struct drm_device *dev); | 165 | void drm_vblank_cleanup(struct drm_device *dev); |
154 | u32 drm_accurate_vblank_count(struct drm_crtc *crtc); | 166 | u32 drm_accurate_vblank_count(struct drm_crtc *crtc); |
155 | 167 | ||
156 | int drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev, | 168 | bool drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev, |
157 | unsigned int pipe, int *max_error, | 169 | unsigned int pipe, int *max_error, |
158 | struct timeval *vblank_time, | 170 | struct timeval *vblank_time, |
159 | unsigned flags, | 171 | bool in_vblank_irq); |
160 | const struct drm_display_mode *mode); | ||
161 | void drm_calc_timestamping_constants(struct drm_crtc *crtc, | 172 | void drm_calc_timestamping_constants(struct drm_crtc *crtc, |
162 | const struct drm_display_mode *mode); | 173 | const struct drm_display_mode *mode); |
163 | 174 | ||