mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 07:28:11 +02:00
etnaviv: rs: Add DBG(..) why blt usage was not possible
Can be helpful to debug issues. Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com> Reviewed-by: Lucas Stach <l.stach@pengutronix.de> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32592>
This commit is contained in:
parent
faf562651a
commit
2ebd5fb978
1 changed files with 22 additions and 5 deletions
|
|
@ -637,8 +637,11 @@ etna_try_rs_blit(struct pipe_context *pctx,
|
|||
return false;
|
||||
|
||||
/* RS does not support upscaling */
|
||||
if ((src_xscale < dst_xscale) || (src_yscale < dst_yscale))
|
||||
if ((src_xscale < dst_xscale) || (src_yscale < dst_yscale)) {
|
||||
DBG("upscaling requested: source %dx%d destination %dx%d",
|
||||
src_xscale, src_yscale, dst_xscale, dst_yscale);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (src_xscale > dst_xscale)
|
||||
downsample_x = true;
|
||||
|
|
@ -669,8 +672,12 @@ etna_try_rs_blit(struct pipe_context *pctx,
|
|||
* - fail if swizzle needed
|
||||
* - avoid trying to convert between float/int formats?
|
||||
*/
|
||||
if (blit_info->src.format != blit_info->dst.format)
|
||||
if (blit_info->src.format != blit_info->dst.format) {
|
||||
DBG("non matching formats: %s vs %s",
|
||||
util_format_short_name(blit_info->src.format),
|
||||
util_format_short_name(blit_info->dst.format));
|
||||
return false;
|
||||
}
|
||||
|
||||
/* try to find a exact format match first */
|
||||
uint32_t format = translate_rs_format(blit_info->dst.format);
|
||||
|
|
@ -679,8 +686,10 @@ etna_try_rs_blit(struct pipe_context *pctx,
|
|||
*/
|
||||
if (format == ETNA_NO_MATCH && !downsample_x && !downsample_y)
|
||||
format = etna_compatible_rs_format(blit_info->dst.format);
|
||||
if (format == ETNA_NO_MATCH)
|
||||
if (format == ETNA_NO_MATCH) {
|
||||
DBG("format not supported: %s", util_format_short_name(blit_info->dst.format));
|
||||
return false;
|
||||
}
|
||||
|
||||
if (blit_info->scissor_enable ||
|
||||
blit_info->swizzle_enable ||
|
||||
|
|
@ -692,12 +701,20 @@ etna_try_rs_blit(struct pipe_context *pctx,
|
|||
unsigned w_mask, h_mask;
|
||||
|
||||
etna_get_rs_alignment_mask(ctx, src->layout, &w_mask, &h_mask);
|
||||
if ((blit_info->src.box.x & w_mask) || (blit_info->src.box.y & h_mask))
|
||||
if ((blit_info->src.box.x & w_mask) || (blit_info->src.box.y & h_mask)) {
|
||||
DBG("src x/y not properly aligned: %d %d",
|
||||
blit_info->src.box.x,
|
||||
blit_info->src.box.y);
|
||||
return false;
|
||||
}
|
||||
|
||||
etna_get_rs_alignment_mask(ctx, dst->layout, &w_mask, &h_mask);
|
||||
if ((blit_info->dst.box.x & w_mask) || (blit_info->dst.box.y & h_mask))
|
||||
if ((blit_info->dst.box.x & w_mask) || (blit_info->dst.box.y & h_mask)) {
|
||||
DBG("dst x/y not properly aligned: %d %d",
|
||||
blit_info->src.box.x,
|
||||
blit_info->src.box.y);
|
||||
return false;
|
||||
}
|
||||
|
||||
struct etna_resource_level *src_lev = &src->levels[blit_info->src.level];
|
||||
struct etna_resource_level *dst_lev = &dst->levels[blit_info->dst.level];
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue