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;
|
uint32_t colormask;
|
||||||
|
|
||||||
if (pfb->cbufs[0] &&
|
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);
|
colormask = rt0->colormask & (PIPE_MASK_A | PIPE_MASK_G);
|
||||||
if (rt0->colormask & PIPE_MASK_R)
|
if (rt0->colormask & PIPE_MASK_R)
|
||||||
colormask |= PIPE_MASK_B;
|
colormask |= PIPE_MASK_B;
|
||||||
|
@ -158,7 +158,7 @@ etna_update_blend_color(struct etna_context *ctx)
|
||||||
struct compiled_blend_color *cs = &ctx->blend_color;
|
struct compiled_blend_color *cs = &ctx->blend_color;
|
||||||
|
|
||||||
if (pfb->cbufs[0] &&
|
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 =
|
cs->PE_ALPHA_BLEND_COLOR =
|
||||||
VIVS_PE_ALPHA_BLEND_COLOR_R(etna_cfloat_to_uint8(cs->color[2])) |
|
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])) |
|
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;
|
ctx->dirty |= ETNA_DIRTY_INDEX_BUFFER;
|
||||||
|
|
||||||
struct etna_shader_key key = {};
|
struct etna_shader_key key = {};
|
||||||
struct etna_surface *cbuf = etna_surface(pfb->cbufs[0]);
|
if (pfb->cbufs[0])
|
||||||
|
key.frag_rb_swap = !!translate_rs_format_rb_swap(pfb->cbufs[0]->format);
|
||||||
if (cbuf) {
|
|
||||||
struct etna_resource *res = etna_resource(cbuf->base.texture);
|
|
||||||
|
|
||||||
key.frag_rb_swap = !!translate_rs_format_rb_swap(res->base.format);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!etna_get_vs(ctx, key) || !etna_get_fs(ctx, key)) {
|
if (!etna_get_vs(ctx, key) || !etna_get_fs(ctx, key)) {
|
||||||
BUG("compiled shaders are not okay");
|
BUG("compiled shaders are not okay");
|
||||||
|
|
Loading…
Reference in New Issue