Commit e3ebfcfa authored by Jérome Glisse's avatar Jérome Glisse Committed by Alex Deucher

drm/radeon: add a vce flag to know if need to initialize vce or not.

This will later on serve for module option to disable vce.
Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
Signed-off-by: default avatarJérôme Glisse <jglisse@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Christian König <christian.koenig@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent bc48a15a
...@@ -2423,6 +2423,7 @@ struct radeon_device { ...@@ -2423,6 +2423,7 @@ struct radeon_device {
int num_crtc; /* number of crtcs */ int num_crtc; /* number of crtcs */
struct mutex dc_hw_i2c_mutex; /* display controller hw i2c mutex */ struct mutex dc_hw_i2c_mutex; /* display controller hw i2c mutex */
bool has_uvd; bool has_uvd;
bool has_vce;
struct r600_audio audio; /* audio stuff */ struct r600_audio audio; /* audio stuff */
struct notifier_block acpi_nb; struct notifier_block acpi_nb;
/* only one userspace can use Hyperz features or CMASK at a time */ /* only one userspace can use Hyperz features or CMASK at a time */
......
...@@ -2324,6 +2324,7 @@ int radeon_asic_init(struct radeon_device *rdev) ...@@ -2324,6 +2324,7 @@ int radeon_asic_init(struct radeon_device *rdev)
rdev->num_crtc = 2; rdev->num_crtc = 2;
rdev->has_uvd = false; rdev->has_uvd = false;
rdev->has_vce = false;
switch (rdev->family) { switch (rdev->family) {
case CHIP_R100: case CHIP_R100:
...@@ -2454,6 +2455,7 @@ int radeon_asic_init(struct radeon_device *rdev) ...@@ -2454,6 +2455,7 @@ int radeon_asic_init(struct radeon_device *rdev)
/* set num crtcs */ /* set num crtcs */
rdev->num_crtc = 4; rdev->num_crtc = 4;
rdev->has_uvd = true; rdev->has_uvd = true;
rdev->has_vce = true;
rdev->cg_flags = rdev->cg_flags =
RADEON_CG_SUPPORT_VCE_MGCG; RADEON_CG_SUPPORT_VCE_MGCG;
break; break;
...@@ -2470,10 +2472,13 @@ int radeon_asic_init(struct radeon_device *rdev) ...@@ -2470,10 +2472,13 @@ int radeon_asic_init(struct radeon_device *rdev)
rdev->num_crtc = 2; rdev->num_crtc = 2;
else else
rdev->num_crtc = 6; rdev->num_crtc = 6;
if (rdev->family == CHIP_HAINAN) if (rdev->family == CHIP_HAINAN) {
rdev->has_uvd = false; rdev->has_uvd = false;
else rdev->has_vce = false;
} else {
rdev->has_uvd = true; rdev->has_uvd = true;
rdev->has_vce = true;
}
switch (rdev->family) { switch (rdev->family) {
case CHIP_TAHITI: case CHIP_TAHITI:
rdev->cg_flags = rdev->cg_flags =
...@@ -2578,6 +2583,7 @@ int radeon_asic_init(struct radeon_device *rdev) ...@@ -2578,6 +2583,7 @@ int radeon_asic_init(struct radeon_device *rdev)
rdev->asic = &ci_asic; rdev->asic = &ci_asic;
rdev->num_crtc = 6; rdev->num_crtc = 6;
rdev->has_uvd = true; rdev->has_uvd = true;
rdev->has_vce = true;
if (rdev->family == CHIP_BONAIRE) { if (rdev->family == CHIP_BONAIRE) {
rdev->cg_flags = rdev->cg_flags =
RADEON_CG_SUPPORT_GFX_MGCG | RADEON_CG_SUPPORT_GFX_MGCG |
...@@ -2678,6 +2684,7 @@ int radeon_asic_init(struct radeon_device *rdev) ...@@ -2678,6 +2684,7 @@ int radeon_asic_init(struct radeon_device *rdev)
RADEON_PG_SUPPORT_SAMU;*/ RADEON_PG_SUPPORT_SAMU;*/
} }
rdev->has_uvd = true; rdev->has_uvd = true;
rdev->has_vce = true;
break; break;
default: default:
/* FIXME: not supported yet */ /* FIXME: not supported yet */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment