summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2013-10-01 21:34:20 +0200
committerLucas Stach <l.stach@pengutronix.de>2014-07-28 12:33:37 +0200
commitcc9fab399c67302910a2d0c1c4fa31244e9c5ae7 (patch)
tree6245eb6b8f92c2b2982aa8ddf5efd79a82ab25a7
parenta61c6481ef883b0d97c4807ff3e7e3cc42189b9b (diff)
downloadmesa-cc9fab399c67302910a2d0c1c4fa31244e9c5ae7.tar.gz
mesa-cc9fab399c67302910a2d0c1c4fa31244e9c5ae7.tar.xz
sync etna driver to 468ff99
-rw-r--r--src/gallium/drivers/etna/etna_clear_blit.c2
-rw-r--r--src/gallium/drivers/etna/etna_compiler.c165
-rw-r--r--src/gallium/drivers/etna/etna_fence.c8
-rw-r--r--src/gallium/drivers/etna/etna_pipe.c10
-rw-r--r--src/gallium/drivers/etna/etna_rasterizer.c2
-rw-r--r--src/gallium/drivers/etna/etna_resource.c4
-rw-r--r--src/gallium/drivers/etna/etna_shader.c10
-rw-r--r--src/gallium/drivers/etna/etna_transfer.c5
8 files changed, 62 insertions, 144 deletions
diff --git a/src/gallium/drivers/etna/etna_clear_blit.c b/src/gallium/drivers/etna/etna_clear_blit.c
index f8c6128c67..95579f0ac0 100644
--- a/src/gallium/drivers/etna/etna_clear_blit.c
+++ b/src/gallium/drivers/etna/etna_clear_blit.c
@@ -70,7 +70,7 @@ void etna_rs_gen_clear_surface(struct compiled_rs_state *rs_state, struct etna_s
{
case 2: format = RS_FORMAT_A1R5G5B5; break;
case 4: format = RS_FORMAT_A8R8G8B8; break;
- default: printf("etna_rs_gen_clear_surface: Unhandled clear blocksize: %i (fmt %i)\n", bs, surf->base.format);
+ default: BUG("etna_rs_gen_clear_surface: Unhandled clear blocksize: %i (fmt %i)", bs, surf->base.format);
format = RS_FORMAT_A8R8G8B8;
assert(0);
}
diff --git a/src/gallium/drivers/etna/etna_compiler.c b/src/gallium/drivers/etna/etna_compiler.c
index d0a281c77c..8f6eba70b4 100644
--- a/src/gallium/drivers/etna/etna_compiler.c
+++ b/src/gallium/drivers/etna/etna_compiler.c
@@ -51,6 +51,7 @@
#include "tgsi/tgsi_iterate.h"
#include "tgsi/tgsi_strings.h"
#include "tgsi/tgsi_util.h"
+#include "tgsi/tgsi_info.h"
#include "pipe/p_shader_tokens.h"
#include "util/u_memory.h"
#include "util/u_math.h"
@@ -435,8 +436,6 @@ static void etna_compile_pass_check_usage(struct etna_compile_data *cd, const st
case TGSI_TOKEN_TYPE_INSTRUCTION: {
/* Instruction: iterate over operands of instruction */
const struct tgsi_full_instruction *inst = &ctx.FullToken.FullInstruction;
- //printf("instruction: opcode=%i num_src=%i num_dest=%i\n", inst->Instruction.Opcode,
- // inst->Instruction.NumSrcRegs, inst->Instruction.NumDstRegs);
/* iterate over destination registers */
for(int idx=0; idx<inst->Instruction.NumDstRegs; ++idx)
{
@@ -833,8 +832,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[0], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_EXP: assert(0); break;
- case TGSI_OPCODE_LOG: assert(0); break;
case TGSI_OPCODE_MUL:
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_MUL,
@@ -853,7 +850,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[1], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_DP2: assert(0); break; /* Either MUL+MAD or DP3 with a zeroed channel, but we don't have a 'zero' swizzle */
case TGSI_OPCODE_DP3:
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_DP3,
@@ -872,7 +868,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[1] = convert_src(cd, &inst->Src[1], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_DST: assert(0); break; /* XXX INST_OPCODE_DST */
case TGSI_OPCODE_MIN:
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_SELECT,
@@ -932,7 +927,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[2], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_SFL: assert(0); break; /* SET to 0 */
case TGSI_OPCODE_SUB: { /* ADD with negated SRC1 */
struct etna_inst inst_out = {
.opcode = INST_OPCODE_ADD,
@@ -944,8 +938,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
inst_out.src[2].neg = !inst_out.src[2].neg;
emit_inst(cd, &inst_out);
} break;
- case TGSI_OPCODE_LRP: assert(0); break; /* lowered by mesa to (op2 * (1.0f - op0)) + (op1 * op0) */
- case TGSI_OPCODE_CND: assert(0); break;
case TGSI_OPCODE_SQRT: /* only generated if HAS_SQRT_TRIG */
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_SQRT,
@@ -954,7 +946,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[0], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_DP2A: assert(0); break;
case TGSI_OPCODE_FRC:
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_FRC,
@@ -963,7 +954,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[0], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_CLAMP: assert(0); break; /* XXX MIN(MAX(...)) */
case TGSI_OPCODE_FLR: /* XXX HAS_SIGN_FLOOR_CEIL */
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_FLOOR,
@@ -988,7 +978,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[0], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_ROUND: assert(0); break;
case TGSI_OPCODE_EX2:
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_EXP,
@@ -1005,8 +994,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[0], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_POW: assert(0); break; /* lowered by mesa to ex2(y*lg2(x)) */
- case TGSI_OPCODE_XPD: assert(0); break;
case TGSI_OPCODE_ABS: /* XXX can be propagated into uses of destination operand */
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_MOV,
@@ -1016,8 +1003,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2].abs = 1
});
break;
- case TGSI_OPCODE_RCC: assert(0); break;
- case TGSI_OPCODE_DPH: assert(0); break; /* src0.x * src1.x + src0.y * src1.y + src0.z * src1.z + src1.w */
case TGSI_OPCODE_COS: /* fall through */
case TGSI_OPCODE_SIN:
if(cd->specs->has_sin_cos_sqrt)
@@ -1069,11 +1054,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.cond = INST_CONDITION_TRUE
});
break;
- case TGSI_OPCODE_PK2H: assert(0); break;
- case TGSI_OPCODE_PK2US: assert(0); break;
- case TGSI_OPCODE_PK4B: assert(0); break;
- case TGSI_OPCODE_PK4UB: assert(0); break;
- case TGSI_OPCODE_RFL: assert(0); break;
case TGSI_OPCODE_TEX:
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_TEXLD,
@@ -1120,19 +1100,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[0].reg = temp.id,
});
} break;
- case TGSI_OPCODE_TXB: assert(0); break; /* TEXLDB */
- case TGSI_OPCODE_TXL: assert(0); break; /* TEXLDL */
- case TGSI_OPCODE_UP2H: assert(0); break;
- case TGSI_OPCODE_UP2US: assert(0); break;
- case TGSI_OPCODE_UP4B: assert(0); break;
- case TGSI_OPCODE_UP4UB: assert(0); break;
- case TGSI_OPCODE_X2D: assert(0); break;
- case TGSI_OPCODE_ARL: assert(0); break; /* floor */
- case TGSI_OPCODE_ARR: assert(0); break; /* round */
- case TGSI_OPCODE_ARA: assert(0); break; /* to be removed according to doc */
- case TGSI_OPCODE_BRA: assert(0); break; /* to be removed according to doc */
- case TGSI_OPCODE_CAL: assert(0); break; /* CALL */
- case TGSI_OPCODE_RET: assert(0); break;
case TGSI_OPCODE_CMP: /* componentwise dst = (src0 < 0) ? src1 : src2 */
emit_inst(cd, &(struct etna_inst) {
.opcode = INST_OPCODE_SELECT,
@@ -1144,10 +1111,6 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
.src[2] = convert_src(cd, &inst->Src[2], INST_SWIZ_IDENTITY),
});
break;
- case TGSI_OPCODE_SCS: assert(0); break;
- case TGSI_OPCODE_NRM: assert(0); break;
- case TGSI_OPCODE_DIV: assert(0); break;
- case TGSI_OPCODE_BRK: assert(0); break; /* break from loop */
case TGSI_OPCODE_IF: {
struct etna_compile_frame *f = &cd->frame_stack[cd->frame_sp++];
/* push IF to stack */
@@ -1191,95 +1154,49 @@ static void etna_compile_pass_generate_code(struct etna_compile_data *cd, const
else
label_place(cd, f->lbl_else);
} break;
- case TGSI_OPCODE_PUSHA: assert(0); break;
- case TGSI_OPCODE_POPA: assert(0); break;
- case TGSI_OPCODE_I2F: assert(0); break;
- case TGSI_OPCODE_NOT: assert(0); break;
- case TGSI_OPCODE_TRUNC: assert(0); break;
- case TGSI_OPCODE_SHL: assert(0); break;
- case TGSI_OPCODE_AND: assert(0); break;
- case TGSI_OPCODE_OR: assert(0); break;
- case TGSI_OPCODE_MOD: assert(0); break;
- case TGSI_OPCODE_XOR: assert(0); break;
- case TGSI_OPCODE_SAD: assert(0); break;
- case TGSI_OPCODE_TXF: assert(0); break;
- case TGSI_OPCODE_TXQ: assert(0); break;
- case TGSI_OPCODE_CONT: assert(0); break;
- case TGSI_OPCODE_EMIT: assert(0); break;
- case TGSI_OPCODE_ENDPRIM: assert(0); break;
- case TGSI_OPCODE_BGNLOOP: assert(0); break;
- case TGSI_OPCODE_BGNSUB: assert(0); break;
- case TGSI_OPCODE_ENDLOOP: assert(0); break;
- case TGSI_OPCODE_ENDSUB: assert(0); break;
- case TGSI_OPCODE_TXQ_LZ: assert(0); break;
case TGSI_OPCODE_NOP: break;
- case TGSI_OPCODE_NRM4: assert(0); break;
- case TGSI_OPCODE_CALLNZ: assert(0); break;
- case TGSI_OPCODE_BREAKC: assert(0); break;
case TGSI_OPCODE_END: /* Nothing to do */ break;
- case TGSI_OPCODE_F2I: assert(0); break;
- case TGSI_OPCODE_IDIV: assert(0); break;
- case TGSI_OPCODE_IMAX: assert(0); break;
- case TGSI_OPCODE_IMIN: assert(0); break;
- case TGSI_OPCODE_INEG: assert(0); break;
- case TGSI_OPCODE_ISGE: assert(0); break;
- case TGSI_OPCODE_ISHR: assert(0); break;
- case TGSI_OPCODE_ISLT: assert(0); break;
- case TGSI_OPCODE_F2U: assert(0); break;
- case TGSI_OPCODE_U2F: assert(0); break;
- case TGSI_OPCODE_UADD: assert(0); break;
- case TGSI_OPCODE_UDIV: assert(0); break;
- case TGSI_OPCODE_UMAD: assert(0); break;
- case TGSI_OPCODE_UMAX: assert(0); break;
- case TGSI_OPCODE_UMIN: assert(0); break;
- case TGSI_OPCODE_UMOD: assert(0); break;
- case TGSI_OPCODE_UMUL: assert(0); break;
- case TGSI_OPCODE_USEQ: assert(0); break;
- case TGSI_OPCODE_USGE: assert(0); break;
- case TGSI_OPCODE_USHR: assert(0); break;
- case TGSI_OPCODE_USLT: assert(0); break;
- case TGSI_OPCODE_USNE: assert(0); break;
- case TGSI_OPCODE_SWITCH: assert(0); break;
- case TGSI_OPCODE_CASE: assert(0); break;
- case TGSI_OPCODE_DEFAULT: assert(0); break;
- case TGSI_OPCODE_ENDSWITCH: assert(0); break;
- case TGSI_OPCODE_SAMPLE: assert(0); break;
- case TGSI_OPCODE_SAMPLE_I: assert(0); break;
- case TGSI_OPCODE_SAMPLE_I_MS: assert(0); break;
- case TGSI_OPCODE_SAMPLE_B: assert(0); break;
- case TGSI_OPCODE_SAMPLE_C: assert(0); break;
- case TGSI_OPCODE_SAMPLE_C_LZ: assert(0); break;
- case TGSI_OPCODE_SAMPLE_D: assert(0); break;
- case TGSI_OPCODE_SAMPLE_L: assert(0); break;
- case TGSI_OPCODE_GATHER4: assert(0); break;
- case TGSI_OPCODE_SVIEWINFO: assert(0); break;
- case TGSI_OPCODE_SAMPLE_POS: assert(0); break;
- case TGSI_OPCODE_SAMPLE_INFO: assert(0); break;
- case TGSI_OPCODE_UARL: assert(0); break;
- case TGSI_OPCODE_UCMP: assert(0); break;
- case TGSI_OPCODE_IABS: assert(0); break;
- case TGSI_OPCODE_ISSG: assert(0); break;
- case TGSI_OPCODE_LOAD: assert(0); break;
- case TGSI_OPCODE_STORE: assert(0); break;
- case TGSI_OPCODE_MFENCE: assert(0); break;
- case TGSI_OPCODE_LFENCE: assert(0); break;
- case TGSI_OPCODE_SFENCE: assert(0); break;
- case TGSI_OPCODE_BARRIER: assert(0); break;
- case TGSI_OPCODE_ATOMUADD: assert(0); break;
- case TGSI_OPCODE_ATOMXCHG: assert(0); break;
- case TGSI_OPCODE_ATOMCAS: assert(0); break;
- case TGSI_OPCODE_ATOMAND: assert(0); break;
- case TGSI_OPCODE_ATOMOR: assert(0); break;
- case TGSI_OPCODE_ATOMXOR: assert(0); break;
- case TGSI_OPCODE_ATOMUMIN: assert(0); break;
- case TGSI_OPCODE_ATOMUMAX: assert(0); break;
- case TGSI_OPCODE_ATOMIMIN: assert(0); break;
- case TGSI_OPCODE_ATOMIMAX: assert(0); break;
- case TGSI_OPCODE_TEX2: assert(0); break;
- case TGSI_OPCODE_TXB2: assert(0); break;
- case TGSI_OPCODE_TXL2: assert(0); break;
+
+ case TGSI_OPCODE_PK2H:
+ case TGSI_OPCODE_PK2US:
+ case TGSI_OPCODE_PK4B:
+ case TGSI_OPCODE_PK4UB:
+ case TGSI_OPCODE_RFL:
+ case TGSI_OPCODE_RCC:
+ case TGSI_OPCODE_DPH: /* src0.x * src1.x + src0.y * src1.y + src0.z * src1.z + src1.w */
+ case TGSI_OPCODE_POW: /* lowered by mesa to ex2(y*lg2(x)) */
+ case TGSI_OPCODE_XPD:
+ case TGSI_OPCODE_ROUND:
+ case TGSI_OPCODE_CLAMP:
+ case TGSI_OPCODE_DP2A:
+ case TGSI_OPCODE_LRP: /* lowered by mesa to (op2 * (1.0f - op0)) + (op1 * op0) */
+ case TGSI_OPCODE_CND:
+ case TGSI_OPCODE_SFL: /* SET to 0 */
+ case TGSI_OPCODE_DST: /* XXX INST_OPCODE_DST */
+ case TGSI_OPCODE_DP2: /* Either MUL+MAD or DP3 with a zeroed channel, but we don't have a 'zero' swizzle */
+ case TGSI_OPCODE_EXP:
+ case TGSI_OPCODE_LOG:
+ case TGSI_OPCODE_TXB: /* XXX INST_OPCODE_TEXLDB */
+ case TGSI_OPCODE_TXL: /* XXX INST_OPCODE_TEXLDL */
+ case TGSI_OPCODE_UP2H:
+ case TGSI_OPCODE_UP2US:
+ case TGSI_OPCODE_UP4B:
+ case TGSI_OPCODE_UP4UB:
+ case TGSI_OPCODE_X2D:
+ case TGSI_OPCODE_ARL: /* floor */
+ case TGSI_OPCODE_ARR: /* round */
+ case TGSI_OPCODE_ARA: /* to be removed according to doc */
+ case TGSI_OPCODE_BRA: /* to be removed according to doc */
+ case TGSI_OPCODE_CAL: /* XXX INST_OPCODE_CALL */
+ case TGSI_OPCODE_RET: /* XXX INST_OPCODE_RET */
+ case TGSI_OPCODE_BRK: /* break from loop */
+ case TGSI_OPCODE_BGNLOOP:
+ case TGSI_OPCODE_ENDLOOP:
+ case TGSI_OPCODE_BGNSUB:
+ case TGSI_OPCODE_ENDSUB:
default:
- printf("Unhandled instruction %i\n", inst->Instruction.Opcode);
+ BUG("Unhandled instruction %s", tgsi_get_opcode_name(inst->Instruction.Opcode));
+ assert(0);
}
inst_idx += 1;
break;
diff --git a/src/gallium/drivers/etna/etna_fence.c b/src/gallium/drivers/etna/etna_fence.c
index 916f152e99..018f67a0a0 100644
--- a/src/gallium/drivers/etna/etna_fence.c
+++ b/src/gallium/drivers/etna/etna_fence.c
@@ -44,7 +44,7 @@ int etna_fence_new(struct pipe_screen *screen_h, struct etna_ctx *ctx, struct pi
{
if((rv = viv_user_signal_signal(ctx->conn, fence->signal, 0)) != VIV_STATUS_OK)
{
- printf("Error: could not reset signal %i\n", fence->signal);
+ BUG("Error: could not reset signal %i", fence->signal);
etna_screen_destroy_fence(screen_h, fence);
return rv;
}
@@ -62,7 +62,7 @@ int etna_fence_new(struct pipe_screen *screen_h, struct etna_ctx *ctx, struct pi
}
if((rv = etna_queue_signal(ctx->queue, fence->signal, VIV_WHERE_PIXEL)) != ETNA_OK)
{
- printf("%s: error queueing signal %i\n", __func__, fence->signal);
+ BUG("error queueing signal %i", fence->signal);
viv_user_signal_destroy(ctx->conn, fence->signal);
FREE(fence);
return rv;
@@ -136,7 +136,7 @@ static boolean etna_screen_fence_finish(struct pipe_screen *screen_h,
timeout == PIPE_TIMEOUT_INFINITE ? VIV_WAIT_INDEFINITE : (timeout / 1000000ULL));
if(rv != VIV_STATUS_OK && rv != VIV_STATUS_TIMEOUT)
{
- printf("%s: error waiting for signal %i", __func__, fence->signal);
+ BUG("error waiting for signal %i", fence->signal);
}
fence->signalled = (rv != VIV_STATUS_TIMEOUT);
return fence->signalled;
@@ -147,7 +147,7 @@ void etna_screen_destroy_fence(struct pipe_screen *screen_h, struct etna_fence *
struct etna_screen *screen = etna_screen(screen_h);
if(viv_user_signal_destroy(screen->dev, fence->signal) != VIV_STATUS_OK)
{
- printf("%s: cannot destroy signal %i\n", __func__, fence->signal);
+ BUG("cannot destroy signal %i", fence->signal);
}
FREE(fence);
}
diff --git a/src/gallium/drivers/etna/etna_pipe.c b/src/gallium/drivers/etna/etna_pipe.c
index a3c52221b8..588f24a540 100644
--- a/src/gallium/drivers/etna/etna_pipe.c
+++ b/src/gallium/drivers/etna/etna_pipe.c
@@ -958,7 +958,7 @@ static void etna_pipe_set_framebuffer_state(struct pipe_context *pipe,
* Need the same mechanism on gc2000 when we want to do mipmap generation by
* rendering to levels > 1 due to multitiled / tiled conversion.
*/
- printf("%s: Alignment error, trying to render to %08x with tile stride %i\n", __func__,
+ BUG("Alignment error, trying to render to %08x with tile stride %i",
cbuf->surf.address, cbuf->surf.stride*4);
}
@@ -1037,7 +1037,7 @@ static void etna_pipe_set_framebuffer_state(struct pipe_context *pipe,
if(nr_samples_depth != -1 && nr_samples_color != -1 &&
nr_samples_depth != nr_samples_color)
{
- printf("%s: Number of samples in color and depth texture must match (%i and %i respectively)\n", __func__,
+ BUG("Number of samples in color and depth texture must match (%i and %i respectively)",
nr_samples_color, nr_samples_depth);
}
switch(MAX2(nr_samples_depth, nr_samples_color))
@@ -1232,18 +1232,18 @@ static void etna_pipe_flush(struct pipe_context *pipe,
{
if(etna_fence_new(pipe->screen, priv->ctx, fence) != ETNA_OK)
{
- printf("Error: %s: could not create fence\n", __func__);
+ BUG("Error: could not create fence");
}
}
if(etna_flush(priv->ctx) != ETNA_OK)
{
- printf("Error: %s: etna_flush failed, GPU may be in unpredictable state\n", __func__);
+ BUG("Error: etna_flush failed, GPU may be in unpredictable state");
}
if(DBG_ENABLED(ETNA_DBG_FINISH_ALL))
{
if(etna_finish(priv->ctx) != ETNA_OK)
{
- printf("Error: %s: etna_finish failed, GPU may be in unpredictable state\n", __func__);
+ BUG("Error: etna_finish failed, GPU may be in unpredictable state");
abort();
}
}
diff --git a/src/gallium/drivers/etna/etna_rasterizer.c b/src/gallium/drivers/etna/etna_rasterizer.c
index 7eeac34825..691865a5b8 100644
--- a/src/gallium/drivers/etna/etna_rasterizer.c
+++ b/src/gallium/drivers/etna/etna_rasterizer.c
@@ -41,7 +41,7 @@ static void *etna_pipe_create_rasterizer_state(struct pipe_context *pipe,
struct compiled_rasterizer_state *cs = CALLOC_STRUCT(compiled_rasterizer_state);
if(rs->fill_front != rs->fill_back)
{
- printf("Different front and back fill mode not supported\n");
+ DBG("Different front and back fill mode not supported");
}
cs->PA_CONFIG =
(rs->flatshade ? VIVS_PA_CONFIG_SHADE_MODEL_FLAT : VIVS_PA_CONFIG_SHADE_MODEL_SMOOTH) |
diff --git a/src/gallium/drivers/etna/etna_resource.c b/src/gallium/drivers/etna/etna_resource.c
index 3a2272da26..f2a2f131de 100644
--- a/src/gallium/drivers/etna/etna_resource.c
+++ b/src/gallium/drivers/etna/etna_resource.c
@@ -61,7 +61,7 @@ bool etna_screen_resource_alloc_ts(struct pipe_screen *screen, struct etna_resou
struct etna_vidmem *rt_ts = 0;
if(unlikely(etna_vidmem_alloc_linear(priv->dev, &rt_ts, rt_ts_size, VIV_SURF_TILE_STATUS, VIV_POOL_DEFAULT, true)!=ETNA_OK))
{
- printf("Problem allocating tile status for resource\n");
+ BUG("Problem allocating tile status for resource");
return false;
}
resource->ts = rt_ts;
@@ -235,7 +235,7 @@ static struct pipe_resource * etna_screen_resource_create(struct pipe_screen *sc
struct etna_vidmem *rt = 0;
if(unlikely(etna_vidmem_alloc_linear(priv->dev, &rt, rt_size, memtype, VIV_POOL_DEFAULT, true) != ETNA_OK))
{
- printf("Problem allocating video memory for resource\n");
+ BUG("Problem allocating video memory for resource");
return NULL;
}
diff --git a/src/gallium/drivers/etna/etna_shader.c b/src/gallium/drivers/etna/etna_shader.c
index 6b13dc1852..eae05be064 100644
--- a/src/gallium/drivers/etna/etna_shader.c
+++ b/src/gallium/drivers/etna/etna_shader.c
@@ -57,7 +57,7 @@ static void etna_fetch_uniforms(struct pipe_context *pipe, uint shader)
priv->dirty_bits |= ETNA_STATE_PS_UNIFORMS;
}
break;
- default: printf("Unhandled shader type %i\n", shader);
+ default: DBG("Unhandled shader type %i", shader);
}
}
@@ -225,10 +225,10 @@ static void etna_set_constant_buffer(struct pipe_context *pipe,
{
case PIPE_SHADER_VERTEX: priv->vs_cbuf_s.user_buffer = 0; break;
case PIPE_SHADER_FRAGMENT: priv->fs_cbuf_s.user_buffer = 0; break;
- default: printf("Unhandled shader type %i\n", shader);
+ default: DBG("Unhandled shader type %i", shader);
}
} else {
- printf("Unhandled buffer index %i\n", index);
+ DBG("Unhandled buffer index %i", index);
}
} else {
assert(buf->buffer == NULL && buf->user_buffer != NULL);
@@ -241,11 +241,11 @@ static void etna_set_constant_buffer(struct pipe_context *pipe,
{
case PIPE_SHADER_VERTEX: priv->vs_cbuf_s = *buf; break;
case PIPE_SHADER_FRAGMENT: priv->fs_cbuf_s = *buf; break;
- default: printf("Unhandled shader type %i\n", shader);
+ default: DBG("Unhandled shader type %i", shader);
}
etna_fetch_uniforms(pipe, shader);
} else {
- printf("Unhandled buffer index %i\n", index);
+ DBG("Unhandled buffer index %i", index);
}
}
}
diff --git a/src/gallium/drivers/etna/etna_transfer.c b/src/gallium/drivers/etna/etna_transfer.c
index 382f4bb989..b9ad9bd305 100644
--- a/src/gallium/drivers/etna/etna_transfer.c
+++ b/src/gallium/drivers/etna/etna_transfer.c
@@ -24,6 +24,7 @@
*/
#include "etna_transfer.h"
#include "etna_pipe.h"
+#include "etna_debug.h"
#include "pipe/p_defines.h"
#include "pipe/p_format.h"
@@ -153,7 +154,7 @@ static void *etna_pipe_transfer_map(struct pipe_context *pipe,
}
} else /* TODO supertiling */
{
- printf("etna_pipe_transfer_map: unsupported tiling %i for reading\n", resource_priv->layout);
+ BUG("unsupported tiling %i for reading", resource_priv->layout);
}
}
}
@@ -209,7 +210,7 @@ static void etna_pipe_transfer_unmap(struct pipe_context *pipe,
}
} else
{
- printf("etna_pipe_transfer_unmap: unsupported tiling %i\n", resource->layout);
+ BUG("unsupported tiling %i", resource->layout);
}
FREE(ptrans->buffer);
}