etnaviv: use surface format directly
There is no need to do the detour over the resource behind the surface to get the format. Use the surface format directly. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
This commit is contained in:
parent
7a90886921
commit
a3e592e839
|
@ -117,7 +117,7 @@ etna_update_blend(struct etna_context *ctx)
|
|||
uint32_t colormask;
|
||||
|
||||
if (pfb->cbufs[0] &&
|
||||
translate_rs_format_rb_swap(pfb->cbufs[0]->texture->format)) {
|
||||
translate_rs_format_rb_swap(pfb->cbufs[0]->format)) {
|
||||
colormask = rt0->colormask & (PIPE_MASK_A | PIPE_MASK_G);
|
||||
if (rt0->colormask & PIPE_MASK_R)
|
||||
colormask |= PIPE_MASK_B;
|
||||
|
@ -158,7 +158,7 @@ etna_update_blend_color(struct etna_context *ctx)
|
|||
struct compiled_blend_color *cs = &ctx->blend_color;
|
||||
|
||||
if (pfb->cbufs[0] &&
|
||||
translate_rs_format_rb_swap(pfb->cbufs[0]->texture->format)) {
|
||||
translate_rs_format_rb_swap(pfb->cbufs[0]->format)) {
|
||||
cs->PE_ALPHA_BLEND_COLOR =
|
||||
VIVS_PE_ALPHA_BLEND_COLOR_R(etna_cfloat_to_uint8(cs->color[2])) |
|
||||
VIVS_PE_ALPHA_BLEND_COLOR_G(etna_cfloat_to_uint8(cs->color[1])) |
|
||||
|
|
|
@ -212,13 +212,8 @@ etna_draw_vbo(struct pipe_context *pctx, const struct pipe_draw_info *info)
|
|||
ctx->dirty |= ETNA_DIRTY_INDEX_BUFFER;
|
||||
|
||||
struct etna_shader_key key = {};
|
||||
struct etna_surface *cbuf = etna_surface(pfb->cbufs[0]);
|
||||
|
||||
if (cbuf) {
|
||||
struct etna_resource *res = etna_resource(cbuf->base.texture);
|
||||
|
||||
key.frag_rb_swap = !!translate_rs_format_rb_swap(res->base.format);
|
||||
}
|
||||
if (pfb->cbufs[0])
|
||||
key.frag_rb_swap = !!translate_rs_format_rb_swap(pfb->cbufs[0]->format);
|
||||
|
||||
if (!etna_get_vs(ctx, key) || !etna_get_fs(ctx, key)) {
|
||||
BUG("compiled shaders are not okay");
|
||||
|
|
Loading…
Reference in New Issue