Module: Mesa Branch: master Commit: 5ddd840f5aacb7cc6e62b712aa737c683bd91f55 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5ddd840f5aacb7cc6e62b712aa737c683bd91f55
Author: Christian König <christian.koe...@amd.com> Date: Mon Jul 15 08:48:41 2013 -0600 vl: add entrypoint to is_video_format_supported Signed-off-by: Christian König <christian.koe...@amd.com> --- src/gallium/auxiliary/vl/vl_video_buffer.c | 3 ++- src/gallium/auxiliary/vl/vl_video_buffer.h | 3 ++- src/gallium/drivers/ilo/ilo_format.c | 5 +++-- src/gallium/drivers/nouveau/nouveau_vp3_video.c | 5 +++-- src/gallium/drivers/nouveau/nouveau_vp3_video.h | 3 ++- src/gallium/drivers/nv50/nv50_context.h | 3 ++- src/gallium/drivers/nv50/nv84_video.c | 5 +++-- src/gallium/drivers/radeon/radeon_uvd.c | 3 ++- src/gallium/drivers/radeon/radeon_uvd.h | 3 ++- src/gallium/include/pipe/p_screen.h | 3 ++- src/gallium/state_trackers/vdpau/decode.c | 3 ++- src/gallium/state_trackers/vdpau/query.c | 6 ++++-- 12 files changed, 29 insertions(+), 16 deletions(-) diff --git a/src/gallium/auxiliary/vl/vl_video_buffer.c b/src/gallium/auxiliary/vl/vl_video_buffer.c index d81c181..f0ba389 100644 --- a/src/gallium/auxiliary/vl/vl_video_buffer.c +++ b/src/gallium/auxiliary/vl/vl_video_buffer.c @@ -147,7 +147,8 @@ vl_video_buffer_surface_format(enum pipe_format format) boolean vl_video_buffer_is_format_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile) + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint) { const enum pipe_format *resource_formats; unsigned i; diff --git a/src/gallium/auxiliary/vl/vl_video_buffer.h b/src/gallium/auxiliary/vl/vl_video_buffer.h index e92e270..b936a37 100644 --- a/src/gallium/auxiliary/vl/vl_video_buffer.h +++ b/src/gallium/auxiliary/vl/vl_video_buffer.h @@ -73,7 +73,8 @@ vl_video_buffer_max_size(struct pipe_screen *screen); boolean vl_video_buffer_is_format_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile); + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint); /* * set the associated data for the given video buffer diff --git a/src/gallium/drivers/ilo/ilo_format.c b/src/gallium/drivers/ilo/ilo_format.c index 65fb820..40b5ffa 100644 --- a/src/gallium/drivers/ilo/ilo_format.c +++ b/src/gallium/drivers/ilo/ilo_format.c @@ -671,9 +671,10 @@ ilo_is_format_supported(struct pipe_screen *screen, static boolean ilo_is_video_format_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile) + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint) { - return vl_video_buffer_is_format_supported(screen, format, profile); + return vl_video_buffer_is_format_supported(screen, format, profile, entrypoint); } /** diff --git a/src/gallium/drivers/nouveau/nouveau_vp3_video.c b/src/gallium/drivers/nouveau/nouveau_vp3_video.c index 1659c5f..07ce016 100644 --- a/src/gallium/drivers/nouveau/nouveau_vp3_video.c +++ b/src/gallium/drivers/nouveau/nouveau_vp3_video.c @@ -416,10 +416,11 @@ nouveau_vp3_screen_get_video_param(struct pipe_screen *pscreen, boolean nouveau_vp3_screen_video_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile) + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint) { if (profile != PIPE_VIDEO_PROFILE_UNKNOWN) return format == PIPE_FORMAT_NV12; - return vl_video_buffer_is_format_supported(screen, format, profile); + return vl_video_buffer_is_format_supported(screen, format, profile, entrypoint); } diff --git a/src/gallium/drivers/nouveau/nouveau_vp3_video.h b/src/gallium/drivers/nouveau/nouveau_vp3_video.h index 8aedfd0..0193ed0 100644 --- a/src/gallium/drivers/nouveau/nouveau_vp3_video.h +++ b/src/gallium/drivers/nouveau/nouveau_vp3_video.h @@ -226,4 +226,5 @@ nouveau_vp3_screen_get_video_param(struct pipe_screen *pscreen, boolean nouveau_vp3_screen_video_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile); + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint); diff --git a/src/gallium/drivers/nv50/nv50_context.h b/src/gallium/drivers/nv50/nv50_context.h index 3600f70..ed4ef24 100644 --- a/src/gallium/drivers/nv50/nv50_context.h +++ b/src/gallium/drivers/nv50/nv50_context.h @@ -307,7 +307,8 @@ nv84_screen_get_video_param(struct pipe_screen *pscreen, boolean nv84_screen_video_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile); + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint); /* nv98_video.c */ struct pipe_video_codec * diff --git a/src/gallium/drivers/nv50/nv84_video.c b/src/gallium/drivers/nv50/nv84_video.c index e7c715c..0627bab 100644 --- a/src/gallium/drivers/nv50/nv84_video.c +++ b/src/gallium/drivers/nv50/nv84_video.c @@ -787,10 +787,11 @@ nv84_screen_get_video_param(struct pipe_screen *pscreen, boolean nv84_screen_video_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile) + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint) { if (profile != PIPE_VIDEO_PROFILE_UNKNOWN) return format == PIPE_FORMAT_NV12; - return vl_video_buffer_is_format_supported(screen, format, profile); + return vl_video_buffer_is_format_supported(screen, format, profile, entrypoint); } diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c index 86f4c55..f3652a6 100644 --- a/src/gallium/drivers/radeon/radeon_uvd.c +++ b/src/gallium/drivers/radeon/radeon_uvd.c @@ -1134,7 +1134,8 @@ int ruvd_get_video_param(struct pipe_screen *screen, boolean ruvd_is_format_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile) + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint) { /* we can only handle this one anyway */ return format == PIPE_FORMAT_NV12; diff --git a/src/gallium/drivers/radeon/radeon_uvd.h b/src/gallium/drivers/radeon/radeon_uvd.h index 8c1ab79..dedb3c7 100644 --- a/src/gallium/drivers/radeon/radeon_uvd.h +++ b/src/gallium/drivers/radeon/radeon_uvd.h @@ -369,6 +369,7 @@ int ruvd_get_video_param(struct pipe_screen *screen, /* the hardware only supports NV12 */ boolean ruvd_is_format_supported(struct pipe_screen *screen, enum pipe_format format, - enum pipe_video_profile profile); + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint); #endif diff --git a/src/gallium/include/pipe/p_screen.h b/src/gallium/include/pipe/p_screen.h index f490736..3ed7f26 100644 --- a/src/gallium/include/pipe/p_screen.h +++ b/src/gallium/include/pipe/p_screen.h @@ -136,7 +136,8 @@ struct pipe_screen { */ boolean (*is_video_format_supported)( struct pipe_screen *, enum pipe_format format, - enum pipe_video_profile profile ); + enum pipe_video_profile profile, + enum pipe_video_entrypoint entrypoint ); /** * Check if we can actually create the given resource (test the dimension, diff --git a/src/gallium/state_trackers/vdpau/decode.c b/src/gallium/state_trackers/vdpau/decode.c index f25a0eb..684ded8 100644 --- a/src/gallium/state_trackers/vdpau/decode.c +++ b/src/gallium/state_trackers/vdpau/decode.c @@ -466,7 +466,8 @@ vlVdpDecoderRender(VdpDecoder decoder, PIPE_VIDEO_CAP_SUPPORTS_INTERLACED); if (vlsurf->video_buffer == NULL || - !screen->is_video_format_supported(screen, vlsurf->video_buffer->buffer_format, dec->profile) || + !screen->is_video_format_supported(screen, vlsurf->video_buffer->buffer_format, + dec->profile, PIPE_VIDEO_ENTRYPOINT_BITSTREAM) || !buffer_support[vlsurf->video_buffer->interlaced]) { /* destroy the old one */ diff --git a/src/gallium/state_trackers/vdpau/query.c b/src/gallium/state_trackers/vdpau/query.c index fff7d6b..8c1b27f 100644 --- a/src/gallium/state_trackers/vdpau/query.c +++ b/src/gallium/state_trackers/vdpau/query.c @@ -141,7 +141,8 @@ vlVdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities(VdpDevice device, VdpChromaTyp ( pscreen, FormatYCBCRToPipe(bits_ycbcr_format), - PIPE_VIDEO_PROFILE_UNKNOWN + PIPE_VIDEO_PROFILE_UNKNOWN, + PIPE_VIDEO_ENTRYPOINT_BITSTREAM ); pipe_mutex_unlock(dev->mutex); @@ -391,7 +392,8 @@ vlVdpOutputSurfaceQueryPutBitsYCbCrCapabilities(VdpDevice device, VdpRGBAFormat *is_supported &= pscreen->is_video_format_supported ( pscreen, ycbcr_format, - PIPE_VIDEO_PROFILE_UNKNOWN + PIPE_VIDEO_PROFILE_UNKNOWN, + PIPE_VIDEO_ENTRYPOINT_BITSTREAM ); pipe_mutex_unlock(dev->mutex); _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-commit