diff options
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r-- | drivers/gpu/drm/i915/i915_drv.h | 30 |
1 files changed, 7 insertions, 23 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index 108e1ec2fa4b..388c028e223c 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h | |||
@@ -242,18 +242,6 @@ struct intel_ddi_plls { | |||
242 | #define WATCH_LISTS 0 | 242 | #define WATCH_LISTS 0 |
243 | #define WATCH_GTT 0 | 243 | #define WATCH_GTT 0 |
244 | 244 | ||
245 | #define I915_GEM_PHYS_CURSOR_0 1 | ||
246 | #define I915_GEM_PHYS_CURSOR_1 2 | ||
247 | #define I915_GEM_PHYS_OVERLAY_REGS 3 | ||
248 | #define I915_MAX_PHYS_OBJECT (I915_GEM_PHYS_OVERLAY_REGS) | ||
249 | |||
250 | struct drm_i915_gem_phys_object { | ||
251 | int id; | ||
252 | struct page **page_list; | ||
253 | drm_dma_handle_t *handle; | ||
254 | struct drm_i915_gem_object *cur_obj; | ||
255 | }; | ||
256 | |||
257 | struct opregion_header; | 245 | struct opregion_header; |
258 | struct opregion_acpi; | 246 | struct opregion_acpi; |
259 | struct opregion_swsci; | 247 | struct opregion_swsci; |
@@ -1187,9 +1175,6 @@ struct i915_gem_mm { | |||
1187 | /** Bit 6 swizzling required for Y tiling */ | 1175 | /** Bit 6 swizzling required for Y tiling */ |
1188 | uint32_t bit_6_swizzle_y; | 1176 | uint32_t bit_6_swizzle_y; |
1189 | 1177 | ||
1190 | /* storage for physical objects */ | ||
1191 | struct drm_i915_gem_phys_object *phys_objs[I915_MAX_PHYS_OBJECT]; | ||
1192 | |||
1193 | /* accounting, useful for userland debugging */ | 1178 | /* accounting, useful for userland debugging */ |
1194 | spinlock_t object_stat_lock; | 1179 | spinlock_t object_stat_lock; |
1195 | size_t object_memory; | 1180 | size_t object_memory; |
@@ -1769,7 +1754,7 @@ struct drm_i915_gem_object { | |||
1769 | struct drm_file *pin_filp; | 1754 | struct drm_file *pin_filp; |
1770 | 1755 | ||
1771 | /** for phy allocated objects */ | 1756 | /** for phy allocated objects */ |
1772 | struct drm_i915_gem_phys_object *phys_obj; | 1757 | drm_dma_handle_t *phys_handle; |
1773 | }; | 1758 | }; |
1774 | 1759 | ||
1775 | #define to_intel_bo(x) container_of(x, struct drm_i915_gem_object, base) | 1760 | #define to_intel_bo(x) container_of(x, struct drm_i915_gem_object, base) |
@@ -2204,10 +2189,12 @@ void i915_gem_vma_destroy(struct i915_vma *vma); | |||
2204 | #define PIN_MAPPABLE 0x1 | 2189 | #define PIN_MAPPABLE 0x1 |
2205 | #define PIN_NONBLOCK 0x2 | 2190 | #define PIN_NONBLOCK 0x2 |
2206 | #define PIN_GLOBAL 0x4 | 2191 | #define PIN_GLOBAL 0x4 |
2192 | #define PIN_OFFSET_BIAS 0x8 | ||
2193 | #define PIN_OFFSET_MASK (~4095) | ||
2207 | int __must_check i915_gem_object_pin(struct drm_i915_gem_object *obj, | 2194 | int __must_check i915_gem_object_pin(struct drm_i915_gem_object *obj, |
2208 | struct i915_address_space *vm, | 2195 | struct i915_address_space *vm, |
2209 | uint32_t alignment, | 2196 | uint32_t alignment, |
2210 | unsigned flags); | 2197 | uint64_t flags); |
2211 | int __must_check i915_vma_unbind(struct i915_vma *vma); | 2198 | int __must_check i915_vma_unbind(struct i915_vma *vma); |
2212 | int i915_gem_object_put_pages(struct drm_i915_gem_object *obj); | 2199 | int i915_gem_object_put_pages(struct drm_i915_gem_object *obj); |
2213 | void i915_gem_release_all_mmaps(struct drm_i915_private *dev_priv); | 2200 | void i915_gem_release_all_mmaps(struct drm_i915_private *dev_priv); |
@@ -2334,13 +2321,8 @@ i915_gem_object_pin_to_display_plane(struct drm_i915_gem_object *obj, | |||
2334 | u32 alignment, | 2321 | u32 alignment, |
2335 | struct intel_ring_buffer *pipelined); | 2322 | struct intel_ring_buffer *pipelined); |
2336 | void i915_gem_object_unpin_from_display_plane(struct drm_i915_gem_object *obj); | 2323 | void i915_gem_object_unpin_from_display_plane(struct drm_i915_gem_object *obj); |
2337 | int i915_gem_attach_phys_object(struct drm_device *dev, | 2324 | int i915_gem_object_attach_phys(struct drm_i915_gem_object *obj, |
2338 | struct drm_i915_gem_object *obj, | ||
2339 | int id, | ||
2340 | int align); | 2325 | int align); |
2341 | void i915_gem_detach_phys_object(struct drm_device *dev, | ||
2342 | struct drm_i915_gem_object *obj); | ||
2343 | void i915_gem_free_all_phys_object(struct drm_device *dev); | ||
2344 | int i915_gem_open(struct drm_device *dev, struct drm_file *file); | 2326 | int i915_gem_open(struct drm_device *dev, struct drm_file *file); |
2345 | void i915_gem_release(struct drm_device *dev, struct drm_file *file); | 2327 | void i915_gem_release(struct drm_device *dev, struct drm_file *file); |
2346 | 2328 | ||
@@ -2465,6 +2447,8 @@ int __must_check i915_gem_evict_something(struct drm_device *dev, | |||
2465 | int min_size, | 2447 | int min_size, |
2466 | unsigned alignment, | 2448 | unsigned alignment, |
2467 | unsigned cache_level, | 2449 | unsigned cache_level, |
2450 | unsigned long start, | ||
2451 | unsigned long end, | ||
2468 | unsigned flags); | 2452 | unsigned flags); |
2469 | int i915_gem_evict_vm(struct i915_address_space *vm, bool do_idle); | 2453 | int i915_gem_evict_vm(struct i915_address_space *vm, bool do_idle); |
2470 | int i915_gem_evict_everything(struct drm_device *dev); | 2454 | int i915_gem_evict_everything(struct drm_device *dev); |