diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2018-11-06 14:44:29 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-11-07 17:05:58 -0500 |
commit | 79d197f31b3008c782e2ce3da8d24b5d8de48c75 (patch) | |
tree | 779fc3a012883a6a7adcf199da21d9af5b789fb1 /drivers/gpu | |
parent | 593f79a236e11fbc570db509242c2b4ef0526c5d (diff) |
drm/amdgpu: add DC feature mask module parameter
Similar to ppfeaturemask. Allows you to selectively enable/disable
DC features.
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 11 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/include/amd_shared.h | 4 |
3 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 9dbdda66c318..42f882c633ee 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h | |||
@@ -152,6 +152,7 @@ extern int amdgpu_compute_multipipe; | |||
152 | extern int amdgpu_gpu_recovery; | 152 | extern int amdgpu_gpu_recovery; |
153 | extern int amdgpu_emu_mode; | 153 | extern int amdgpu_emu_mode; |
154 | extern uint amdgpu_smu_memory_pool_size; | 154 | extern uint amdgpu_smu_memory_pool_size; |
155 | extern uint amdgpu_dc_feature_mask; | ||
155 | extern struct amdgpu_mgpu_info mgpu_info; | 156 | extern struct amdgpu_mgpu_info mgpu_info; |
156 | 157 | ||
157 | #ifdef CONFIG_DRM_AMDGPU_SI | 158 | #ifdef CONFIG_DRM_AMDGPU_SI |
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c index 943dbf3c5da1..8de55f7f1a3a 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | |||
@@ -127,6 +127,9 @@ int amdgpu_compute_multipipe = -1; | |||
127 | int amdgpu_gpu_recovery = -1; /* auto */ | 127 | int amdgpu_gpu_recovery = -1; /* auto */ |
128 | int amdgpu_emu_mode = 0; | 128 | int amdgpu_emu_mode = 0; |
129 | uint amdgpu_smu_memory_pool_size = 0; | 129 | uint amdgpu_smu_memory_pool_size = 0; |
130 | /* FBC (bit 0) disabled by default*/ | ||
131 | uint amdgpu_dc_feature_mask = 0; | ||
132 | |||
130 | struct amdgpu_mgpu_info mgpu_info = { | 133 | struct amdgpu_mgpu_info mgpu_info = { |
131 | .mutex = __MUTEX_INITIALIZER(mgpu_info.mutex), | 134 | .mutex = __MUTEX_INITIALIZER(mgpu_info.mutex), |
132 | }; | 135 | }; |
@@ -631,6 +634,14 @@ module_param(halt_if_hws_hang, int, 0644); | |||
631 | MODULE_PARM_DESC(halt_if_hws_hang, "Halt if HWS hang is detected (0 = off (default), 1 = on)"); | 634 | MODULE_PARM_DESC(halt_if_hws_hang, "Halt if HWS hang is detected (0 = off (default), 1 = on)"); |
632 | #endif | 635 | #endif |
633 | 636 | ||
637 | /** | ||
638 | * DOC: dcfeaturemask (uint) | ||
639 | * Override display features enabled. See enum DC_FEATURE_MASK in drivers/gpu/drm/amd/include/amd_shared.h. | ||
640 | * The default is the current set of stable display features. | ||
641 | */ | ||
642 | MODULE_PARM_DESC(dcfeaturemask, "all stable DC features enabled (default))"); | ||
643 | module_param_named(dcfeaturemask, amdgpu_dc_feature_mask, uint, 0444); | ||
644 | |||
634 | static const struct pci_device_id pciidlist[] = { | 645 | static const struct pci_device_id pciidlist[] = { |
635 | #ifdef CONFIG_DRM_AMDGPU_SI | 646 | #ifdef CONFIG_DRM_AMDGPU_SI |
636 | {0x1002, 0x6780, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_TAHITI}, | 647 | {0x1002, 0x6780, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_TAHITI}, |
diff --git a/drivers/gpu/drm/amd/include/amd_shared.h b/drivers/gpu/drm/amd/include/amd_shared.h index 2083c308007c..470d7b89071a 100644 --- a/drivers/gpu/drm/amd/include/amd_shared.h +++ b/drivers/gpu/drm/amd/include/amd_shared.h | |||
@@ -133,6 +133,10 @@ enum PP_FEATURE_MASK { | |||
133 | PP_AVFS_MASK = 0x40000, | 133 | PP_AVFS_MASK = 0x40000, |
134 | }; | 134 | }; |
135 | 135 | ||
136 | enum DC_FEATURE_MASK { | ||
137 | DC_FBC_MASK = 0x1, | ||
138 | }; | ||
139 | |||
136 | /** | 140 | /** |
137 | * struct amd_ip_funcs - general hooks for managing amdgpu IP Blocks | 141 | * struct amd_ip_funcs - general hooks for managing amdgpu IP Blocks |
138 | */ | 142 | */ |