Reviewed-by: Leo Liu <leo....@amd.com>
On 11/13/18 6:51 PM, Marek Olšák wrote: > From: Marek Olšák <marek.ol...@amd.com> > > This was missed when I added the new enum. > > Cc: 18.3 <mesa-sta...@lists.freedesktop.org> > --- > src/gallium/drivers/radeonsi/si_get.c | 9 ++++++--- > src/gallium/drivers/radeonsi/si_uvd.c | 3 ++- > 2 files changed, 8 insertions(+), 4 deletions(-) > > diff --git a/src/gallium/drivers/radeonsi/si_get.c > b/src/gallium/drivers/radeonsi/si_get.c > index b440230d227..91f38329d59 100644 > --- a/src/gallium/drivers/radeonsi/si_get.c > +++ b/src/gallium/drivers/radeonsi/si_get.c > @@ -573,24 +573,26 @@ static int si_get_video_param(struct pipe_screen > *screen, > enum pipe_video_cap param) > { > struct si_screen *sscreen = (struct si_screen *)screen; > enum pipe_video_format codec = u_reduce_video_profile(profile); > > if (entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE) { > switch (param) { > case PIPE_VIDEO_CAP_SUPPORTED: > return (codec == PIPE_VIDEO_FORMAT_MPEG4_AVC && > (si_vce_is_fw_version_supported(sscreen) || > - sscreen->info.family == CHIP_RAVEN)) || > + sscreen->info.family == CHIP_RAVEN || > + sscreen->info.family == CHIP_RAVEN2)) || > (profile == PIPE_VIDEO_PROFILE_HEVC_MAIN && > (sscreen->info.family == CHIP_RAVEN || > - si_radeon_uvd_enc_supported(sscreen))); > + sscreen->info.family == CHIP_RAVEN2 || > + si_radeon_uvd_enc_supported(sscreen))); > case PIPE_VIDEO_CAP_NPOT_TEXTURES: > return 1; > case PIPE_VIDEO_CAP_MAX_WIDTH: > return (sscreen->info.family < CHIP_TONGA) ? 2048 : > 4096; > case PIPE_VIDEO_CAP_MAX_HEIGHT: > return (sscreen->info.family < CHIP_TONGA) ? 1152 : > 2304; > case PIPE_VIDEO_CAP_PREFERED_FORMAT: > return PIPE_FORMAT_NV12; > case PIPE_VIDEO_CAP_PREFERS_INTERLACED: > return false; > @@ -624,21 +626,22 @@ static int si_get_video_param(struct pipe_screen > *screen, > return true; > case PIPE_VIDEO_FORMAT_HEVC: > /* Carrizo only supports HEVC Main */ > if (sscreen->info.family >= CHIP_STONEY) > return (profile == PIPE_VIDEO_PROFILE_HEVC_MAIN > || > profile == > PIPE_VIDEO_PROFILE_HEVC_MAIN_10); > else if (sscreen->info.family >= CHIP_CARRIZO) > return profile == PIPE_VIDEO_PROFILE_HEVC_MAIN; > return false; > case PIPE_VIDEO_FORMAT_JPEG: > - if (sscreen->info.family == CHIP_RAVEN) > + if (sscreen->info.family == CHIP_RAVEN || > + sscreen->info.family == CHIP_RAVEN2) > return true; > if (sscreen->info.family < CHIP_CARRIZO || > sscreen->info.family >= CHIP_VEGA10) > return false; > if (!(sscreen->info.drm_major == 3 && > sscreen->info.drm_minor >= 19)) { > RVID_ERR("No MJPEG support for the kernel > version\n"); > return false; > } > return true; > case PIPE_VIDEO_FORMAT_VP9: > if (sscreen->info.family < CHIP_RAVEN) > diff --git a/src/gallium/drivers/radeonsi/si_uvd.c > b/src/gallium/drivers/radeonsi/si_uvd.c > index 1a9d8f8d9fa..8c9553acbf3 100644 > --- a/src/gallium/drivers/radeonsi/si_uvd.c > +++ b/src/gallium/drivers/radeonsi/si_uvd.c > @@ -139,21 +139,22 @@ static void si_vce_get_buffer(struct pipe_resource > *resource, > *surface = &res->surface; > } > > /** > * creates an UVD compatible decoder > */ > struct pipe_video_codec *si_uvd_create_decoder(struct pipe_context *context, > const struct pipe_video_codec > *templ) > { > struct si_context *ctx = (struct si_context *)context; > - bool vcn = (ctx->family == CHIP_RAVEN) ? true : false; > + bool vcn = ctx->family == CHIP_RAVEN || > + ctx->family == CHIP_RAVEN2; > > if (templ->entrypoint == PIPE_VIDEO_ENTRYPOINT_ENCODE) { > if (vcn) { > return radeon_create_encoder(context, templ, ctx->ws, > si_vce_get_buffer); > } else { > if (u_reduce_video_profile(templ->profile) == > PIPE_VIDEO_FORMAT_HEVC) > return radeon_uvd_create_encoder(context, > templ, ctx->ws, si_vce_get_buffer); > else > return si_vce_create_encoder(context, templ, > ctx->ws, si_vce_get_buffer); > } _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev