Rev 3192 | Rev 3391 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3192 | Rev 3262 | ||
---|---|---|---|
Line 242... | Line 242... | ||
242 | unsigned num_clips); |
242 | unsigned num_clips); |
243 | }; |
243 | }; |
Line 244... | Line 244... | ||
244 | 244 | ||
245 | struct drm_framebuffer { |
245 | struct drm_framebuffer { |
- | 246 | struct drm_device *dev; |
|
- | 247 | /* |
|
- | 248 | * Note that the fb is refcounted for the benefit of driver internals, |
|
- | 249 | * for example some hw, disabling a CRTC/plane is asynchronous, and |
|
- | 250 | * scanout does not actually complete until the next vblank. So some |
|
- | 251 | * cleanup (like releasing the reference(s) on the backing GEM bo(s)) |
|
- | 252 | * should be deferred. In cases like this, the driver would like to |
|
- | 253 | * hold a ref to the fb even though it has already been removed from |
|
- | 254 | * userspace perspective. |
|
- | 255 | */ |
|
246 | struct drm_device *dev; |
256 | struct kref refcount; |
247 | struct list_head head; |
257 | struct list_head head; |
248 | struct drm_mode_object base; |
258 | struct drm_mode_object base; |
249 | const struct drm_framebuffer_funcs *funcs; |
259 | const struct drm_framebuffer_funcs *funcs; |
250 | unsigned int pitches[4]; |
260 | unsigned int pitches[4]; |