| 1 | /* SPDX-License-Identifier: GPL-2.0 */ | 
|---|
| 2 | /* Common header for intel-gtt.ko and i915.ko */ | 
|---|
| 3 |  | 
|---|
| 4 | #ifndef _DRM_INTEL_GTT_H | 
|---|
| 5 | #define	_DRM_INTEL_GTT_H | 
|---|
| 6 |  | 
|---|
| 7 | #include <linux/types.h> | 
|---|
| 8 |  | 
|---|
| 9 | struct agp_bridge_data; | 
|---|
| 10 | struct pci_dev; | 
|---|
| 11 | struct sg_table; | 
|---|
| 12 |  | 
|---|
| 13 | void intel_gmch_gtt_get(u64 *gtt_total, | 
|---|
| 14 | phys_addr_t *mappable_base, | 
|---|
| 15 | resource_size_t *mappable_end); | 
|---|
| 16 |  | 
|---|
| 17 | int intel_gmch_probe(struct pci_dev *bridge_pdev, struct pci_dev *gpu_pdev, | 
|---|
| 18 | struct agp_bridge_data *bridge); | 
|---|
| 19 | void intel_gmch_remove(void); | 
|---|
| 20 |  | 
|---|
| 21 | bool intel_gmch_enable_gtt(void); | 
|---|
| 22 |  | 
|---|
| 23 | void intel_gmch_gtt_flush(void); | 
|---|
| 24 | void intel_gmch_gtt_insert_page(dma_addr_t addr, | 
|---|
| 25 | unsigned int pg, | 
|---|
| 26 | unsigned int flags); | 
|---|
| 27 | void intel_gmch_gtt_insert_sg_entries(struct sg_table *st, | 
|---|
| 28 | unsigned int pg_start, | 
|---|
| 29 | unsigned int flags); | 
|---|
| 30 | void intel_gmch_gtt_clear_range(unsigned int first_entry, unsigned int num_entries); | 
|---|
| 31 | dma_addr_t intel_gmch_gtt_read_entry(unsigned int pg, | 
|---|
| 32 | bool *is_present, bool *is_local); | 
|---|
| 33 |  | 
|---|
| 34 | /* Special gtt memory types */ | 
|---|
| 35 | #define AGP_DCACHE_MEMORY	1 | 
|---|
| 36 | #define AGP_PHYS_MEMORY		2 | 
|---|
| 37 |  | 
|---|
| 38 | /* flag for GFDT type */ | 
|---|
| 39 | #define AGP_USER_CACHED_MEMORY_GFDT (1 << 3) | 
|---|
| 40 |  | 
|---|
| 41 | #endif | 
|---|
| 42 |  | 
|---|