1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef DRM_ATI_PCIGART_H 3*4882a593Smuzhiyun #define DRM_ATI_PCIGART_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #include <drm/drm_legacy.h> 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun /* location of GART table */ 8*4882a593Smuzhiyun #define DRM_ATI_GART_MAIN 1 9*4882a593Smuzhiyun #define DRM_ATI_GART_FB 2 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #define DRM_ATI_GART_PCI 1 12*4882a593Smuzhiyun #define DRM_ATI_GART_PCIE 2 13*4882a593Smuzhiyun #define DRM_ATI_GART_IGP 3 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun struct drm_ati_pcigart_info { 16*4882a593Smuzhiyun int gart_table_location; 17*4882a593Smuzhiyun int gart_reg_if; 18*4882a593Smuzhiyun void *addr; 19*4882a593Smuzhiyun dma_addr_t bus_addr; 20*4882a593Smuzhiyun dma_addr_t table_mask; 21*4882a593Smuzhiyun struct drm_dma_handle *table_handle; 22*4882a593Smuzhiyun struct drm_local_map mapping; 23*4882a593Smuzhiyun int table_size; 24*4882a593Smuzhiyun }; 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun extern int drm_ati_pcigart_init(struct drm_device *dev, 27*4882a593Smuzhiyun struct drm_ati_pcigart_info * gart_info); 28*4882a593Smuzhiyun extern int drm_ati_pcigart_cleanup(struct drm_device *dev, 29*4882a593Smuzhiyun struct drm_ati_pcigart_info * gart_info); 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #endif 32