Rev 2967 | Rev 3192 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2967 | Rev 3031 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | /* Common header for intel-gtt.ko and i915.ko */ |
1 | /* Common header for intel-gtt.ko and i915.ko */ |
Line 2... | Line 2... | ||
2 | 2 | ||
3 | #ifndef _DRM_INTEL_GTT_H |
3 | #ifndef _DRM_INTEL_GTT_H |
Line -... | Line 4... | ||
- | 4 | #define _DRM_INTEL_GTT_H |
|
- | 5 | ||
4 | #define _DRM_INTEL_GTT_H |
6 | struct agp_bridge_data; |
5 | 7 | ||
6 | const struct intel_gtt { |
8 | const struct intel_gtt { |
7 | /* Size of memory reserved for graphics by the BIOS */ |
9 | /* Size of memory reserved for graphics by the BIOS */ |
8 | unsigned int stolen_size; |
10 | unsigned int stolen_size; |
Line 13... | Line 15... | ||
13 | unsigned int gtt_mappable_entries; |
15 | unsigned int gtt_mappable_entries; |
14 | /* Whether i915 needs to use the dmar apis or not. */ |
16 | /* Whether i915 needs to use the dmar apis or not. */ |
15 | unsigned int needs_dmar : 1; |
17 | unsigned int needs_dmar : 1; |
16 | /* Whether we idle the gpu before mapping/unmapping */ |
18 | /* Whether we idle the gpu before mapping/unmapping */ |
17 | unsigned int do_idle_maps : 1; |
19 | unsigned int do_idle_maps : 1; |
- | 20 | /* Share the scratch page dma with ppgtts. */ |
|
- | 21 | dma_addr_t scratch_page_dma; |
|
- | 22 | /* for ppgtt PDE access */ |
|
- | 23 | u32 __iomem *gtt; |
|
- | 24 | /* needed for ioremap in drm/i915 */ |
|
- | 25 | phys_addr_t gma_bus_addr; |
|
18 | } *intel_gtt_get(void); |
26 | } *intel_gtt_get(void); |
Line -... | Line 27... | ||
- | 27 | ||
- | 28 | int intel_gmch_probe(struct pci_dev *bridge_pdev, struct pci_dev *gpu_pdev, |
|
- | 29 | struct agp_bridge_data *bridge); |
|
- | 30 | void intel_gmch_remove(void); |
|
- | 31 | ||
- | 32 | bool intel_enable_gtt(void); |
|
19 | 33 | ||
20 | void intel_gtt_chipset_flush(void); |
- | |
21 | void intel_gtt_unmap_memory(struct scatterlist *sg_list, int num_sg); |
- | |
22 | void intel_gtt_clear_range(unsigned int first_entry, unsigned int num_entries); |
- | |
23 | int intel_gtt_map_memory(struct page **pages, unsigned int num_entries, |
- | |
24 | struct scatterlist **sg_list, int *num_sg); |
34 | void intel_gtt_chipset_flush(void); |
25 | void intel_gtt_insert_sg_entries(struct scatterlist *sg_list, |
- | |
26 | unsigned int sg_len, |
- | |
27 | unsigned int pg_start, |
35 | void intel_gtt_insert_sg_entries(struct pagelist *st, unsigned int pg_start, |
28 | unsigned int flags); |
36 | unsigned int flags); |
29 | void intel_gtt_insert_pages(unsigned int first_entry, unsigned int num_entries, |
- | |
Line 30... | Line 37... | ||
30 | struct page **pages, unsigned int flags); |
37 | void intel_gtt_clear_range(unsigned int first_entry, unsigned int num_entries); |
31 | 38 | ||
32 | /* Special gtt memory types */ |
39 | /* Special gtt memory types */ |
Line 38... | Line 45... | ||
38 | #define AGP_USER_UNCACHED_MEMORY (AGP_USER_TYPES + 4) |
45 | #define AGP_USER_UNCACHED_MEMORY (AGP_USER_TYPES + 4) |
Line 39... | Line 46... | ||
39 | 46 | ||
40 | /* flag for GFDT type */ |
47 | /* flag for GFDT type */ |
Line -... | Line 48... | ||
- | 48 | #define AGP_USER_CACHED_MEMORY_GFDT (1 << 3) |
|
- | 49 | ||
- | 50 | #ifdef CONFIG_INTEL_IOMMU |
|
- | 51 | extern int intel_iommu_gfx_mapped; |
|
41 | #define AGP_USER_CACHED_MEMORY_GFDT (1 << 3) |
52 | #endif |