radeon/vce: disable VCE dual instance for harvest part
Signed-off-by: Leo Liu <leo.liu@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
This commit is contained in:
parent
09def7e1e0
commit
0654a9ca17
|
@ -408,7 +408,9 @@ struct pipe_video_codec *rvce_create_encoder(struct pipe_context *context,
|
||||||
if (rscreen->info.family >= CHIP_TONGA)
|
if (rscreen->info.family >= CHIP_TONGA)
|
||||||
enc->dual_pipe = true;
|
enc->dual_pipe = true;
|
||||||
/* TODO enable B frame with dual instance */
|
/* TODO enable B frame with dual instance */
|
||||||
if ((rscreen->info.family >= CHIP_TONGA) && (templ->max_references == 1))
|
if ((rscreen->info.family >= CHIP_TONGA) &&
|
||||||
|
(templ->max_references == 1) &&
|
||||||
|
(rscreen->info.vce_harvest_config == 0))
|
||||||
enc->dual_inst = true;
|
enc->dual_inst = true;
|
||||||
|
|
||||||
enc->base = *templ;
|
enc->base = *templ;
|
||||||
|
|
|
@ -244,6 +244,7 @@ struct radeon_info {
|
||||||
|
|
||||||
boolean cik_macrotile_mode_array_valid;
|
boolean cik_macrotile_mode_array_valid;
|
||||||
uint32_t cik_macrotile_mode_array[16];
|
uint32_t cik_macrotile_mode_array[16];
|
||||||
|
uint32_t vce_harvest_config;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum radeon_feature_id {
|
enum radeon_feature_id {
|
||||||
|
|
|
@ -164,6 +164,7 @@ static boolean do_winsys_init(struct amdgpu_winsys *ws)
|
||||||
|
|
||||||
/* Set chip identification. */
|
/* Set chip identification. */
|
||||||
ws->info.pci_id = ws->amdinfo.asic_id; /* TODO: is this correct? */
|
ws->info.pci_id = ws->amdinfo.asic_id; /* TODO: is this correct? */
|
||||||
|
ws->info.vce_harvest_config = ws->amdinfo.vce_harvest_config;
|
||||||
|
|
||||||
switch (ws->info.pci_id) {
|
switch (ws->info.pci_id) {
|
||||||
#define CHIPSET(pci_id, name, cfamily) case pci_id: ws->info.family = CHIP_##cfamily; break;
|
#define CHIPSET(pci_id, name, cfamily) case pci_id: ws->info.family = CHIP_##cfamily; break;
|
||||||
|
|
Loading…
Reference in New Issue