diff options
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 5 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/vi.c | 7 |
3 files changed, 19 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c index d3ca73090e39..172571968c9e 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | |||
@@ -48,6 +48,7 @@ | |||
48 | #endif | 48 | #endif |
49 | #define FIRMWARE_TONGA "amdgpu/tonga_vce.bin" | 49 | #define FIRMWARE_TONGA "amdgpu/tonga_vce.bin" |
50 | #define FIRMWARE_CARRIZO "amdgpu/carrizo_vce.bin" | 50 | #define FIRMWARE_CARRIZO "amdgpu/carrizo_vce.bin" |
51 | #define FIRMWARE_FIJI "amdgpu/fiji_vce.bin" | ||
51 | 52 | ||
52 | #ifdef CONFIG_DRM_AMDGPU_CIK | 53 | #ifdef CONFIG_DRM_AMDGPU_CIK |
53 | MODULE_FIRMWARE(FIRMWARE_BONAIRE); | 54 | MODULE_FIRMWARE(FIRMWARE_BONAIRE); |
@@ -58,6 +59,7 @@ MODULE_FIRMWARE(FIRMWARE_MULLINS); | |||
58 | #endif | 59 | #endif |
59 | MODULE_FIRMWARE(FIRMWARE_TONGA); | 60 | MODULE_FIRMWARE(FIRMWARE_TONGA); |
60 | MODULE_FIRMWARE(FIRMWARE_CARRIZO); | 61 | MODULE_FIRMWARE(FIRMWARE_CARRIZO); |
62 | MODULE_FIRMWARE(FIRMWARE_FIJI); | ||
61 | 63 | ||
62 | static void amdgpu_vce_idle_work_handler(struct work_struct *work); | 64 | static void amdgpu_vce_idle_work_handler(struct work_struct *work); |
63 | 65 | ||
@@ -101,6 +103,9 @@ int amdgpu_vce_sw_init(struct amdgpu_device *adev, unsigned long size) | |||
101 | case CHIP_CARRIZO: | 103 | case CHIP_CARRIZO: |
102 | fw_name = FIRMWARE_CARRIZO; | 104 | fw_name = FIRMWARE_CARRIZO; |
103 | break; | 105 | break; |
106 | case CHIP_FIJI: | ||
107 | fw_name = FIRMWARE_FIJI; | ||
108 | break; | ||
104 | 109 | ||
105 | default: | 110 | default: |
106 | return -EINVAL; | 111 | return -EINVAL; |
diff --git a/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c b/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c index 5a5a40c331cf..4349658081ff 100644 --- a/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c +++ b/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | |||
@@ -205,6 +205,13 @@ static unsigned vce_v3_0_get_harvest_config(struct amdgpu_device *adev) | |||
205 | u32 tmp; | 205 | u32 tmp; |
206 | unsigned ret; | 206 | unsigned ret; |
207 | 207 | ||
208 | /* Fiji is single pipe */ | ||
209 | if (adev->asic_type == CHIP_FIJI) { | ||
210 | ret = AMDGPU_VCE_HARVEST_VCE1; | ||
211 | return ret; | ||
212 | } | ||
213 | |||
214 | /* Tonga and CZ are dual or single pipe */ | ||
208 | if (adev->flags & AMD_IS_APU) | 215 | if (adev->flags & AMD_IS_APU) |
209 | tmp = (RREG32_SMC(ixVCE_HARVEST_FUSE_MACRO__ADDRESS) & | 216 | tmp = (RREG32_SMC(ixVCE_HARVEST_FUSE_MACRO__ADDRESS) & |
210 | VCE_HARVEST_FUSE_MACRO__MASK) >> | 217 | VCE_HARVEST_FUSE_MACRO__MASK) >> |
diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c b/drivers/gpu/drm/amd/amdgpu/vi.c index 7815ac7d446f..552d9e75ad1b 100644 --- a/drivers/gpu/drm/amd/amdgpu/vi.c +++ b/drivers/gpu/drm/amd/amdgpu/vi.c | |||
@@ -1223,6 +1223,13 @@ static const struct amdgpu_ip_block_version fiji_ip_blocks[] = | |||
1223 | .rev = 0, | 1223 | .rev = 0, |
1224 | .funcs = &uvd_v6_0_ip_funcs, | 1224 | .funcs = &uvd_v6_0_ip_funcs, |
1225 | }, | 1225 | }, |
1226 | { | ||
1227 | .type = AMD_IP_BLOCK_TYPE_VCE, | ||
1228 | .major = 3, | ||
1229 | .minor = 0, | ||
1230 | .rev = 0, | ||
1231 | .funcs = &vce_v3_0_ip_funcs, | ||
1232 | }, | ||
1226 | }; | 1233 | }; |
1227 | 1234 | ||
1228 | static const struct amdgpu_ip_block_version cz_ip_blocks[] = | 1235 | static const struct amdgpu_ip_block_version cz_ip_blocks[] = |