aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu.h')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index cbcb6a153aba..5afaf6016b4a 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -66,6 +66,7 @@
66#include "amdgpu_vce.h" 66#include "amdgpu_vce.h"
67#include "amdgpu_vcn.h" 67#include "amdgpu_vcn.h"
68#include "amdgpu_mn.h" 68#include "amdgpu_mn.h"
69#include "amdgpu_dm.h"
69 70
70#include "gpu_scheduler.h" 71#include "gpu_scheduler.h"
71#include "amdgpu_virt.h" 72#include "amdgpu_virt.h"
@@ -101,6 +102,8 @@ extern int amdgpu_vm_fragment_size;
101extern int amdgpu_vm_fault_stop; 102extern int amdgpu_vm_fault_stop;
102extern int amdgpu_vm_debug; 103extern int amdgpu_vm_debug;
103extern int amdgpu_vm_update_mode; 104extern int amdgpu_vm_update_mode;
105extern int amdgpu_dc;
106extern int amdgpu_dc_log;
104extern int amdgpu_sched_jobs; 107extern int amdgpu_sched_jobs;
105extern int amdgpu_sched_hw_submission; 108extern int amdgpu_sched_hw_submission;
106extern int amdgpu_no_evict; 109extern int amdgpu_no_evict;
@@ -1535,6 +1538,7 @@ struct amdgpu_device {
1535 /* display */ 1538 /* display */
1536 bool enable_virtual_display; 1539 bool enable_virtual_display;
1537 struct amdgpu_mode_info mode_info; 1540 struct amdgpu_mode_info mode_info;
1541 /* For pre-DCE11. DCE11 and later are in "struct amdgpu_device->dm" */
1538 struct work_struct hotplug_work; 1542 struct work_struct hotplug_work;
1539 struct amdgpu_irq_src crtc_irq; 1543 struct amdgpu_irq_src crtc_irq;
1540 struct amdgpu_irq_src pageflip_irq; 1544 struct amdgpu_irq_src pageflip_irq;
@@ -1590,6 +1594,9 @@ struct amdgpu_device {
1590 /* GDS */ 1594 /* GDS */
1591 struct amdgpu_gds gds; 1595 struct amdgpu_gds gds;
1592 1596
1597 /* display related functionality */
1598 struct amdgpu_display_manager dm;
1599
1593 struct amdgpu_ip_block ip_blocks[AMDGPU_MAX_IP_NUM]; 1600 struct amdgpu_ip_block ip_blocks[AMDGPU_MAX_IP_NUM];
1594 int num_ip_blocks; 1601 int num_ip_blocks;
1595 struct mutex mn_lock; 1602 struct mutex mn_lock;
@@ -1653,6 +1660,9 @@ void amdgpu_mm_wdoorbell(struct amdgpu_device *adev, u32 index, u32 v);
1653u64 amdgpu_mm_rdoorbell64(struct amdgpu_device *adev, u32 index); 1660u64 amdgpu_mm_rdoorbell64(struct amdgpu_device *adev, u32 index);
1654void amdgpu_mm_wdoorbell64(struct amdgpu_device *adev, u32 index, u64 v); 1661void amdgpu_mm_wdoorbell64(struct amdgpu_device *adev, u32 index, u64 v);
1655 1662
1663bool amdgpu_device_asic_has_dc_support(enum amd_asic_type asic_type);
1664bool amdgpu_device_has_dc_support(struct amdgpu_device *adev);
1665
1656/* 1666/*
1657 * Registers read & write functions. 1667 * Registers read & write functions.
1658 */ 1668 */
@@ -1911,5 +1921,11 @@ int amdgpu_cs_find_mapping(struct amdgpu_cs_parser *parser,
1911 uint64_t addr, struct amdgpu_bo **bo, 1921 uint64_t addr, struct amdgpu_bo **bo,
1912 struct amdgpu_bo_va_mapping **mapping); 1922 struct amdgpu_bo_va_mapping **mapping);
1913 1923
1924#if defined(CONFIG_DRM_AMD_DC)
1925int amdgpu_dm_display_resume(struct amdgpu_device *adev );
1926#else
1927static inline int amdgpu_dm_display_resume(struct amdgpu_device *adev) { return 0; }
1928#endif
1929
1914#include "amdgpu_object.h" 1930#include "amdgpu_object.h"
1915#endif 1931#endif