intel: Add support for parsing 965 3d packets using helper functions.

I want to add packets, without contributing to the switch statement of
doom.
This commit is contained in:
Eric Anholt 2012-01-04 12:06:44 -08:00
parent 5a1c10fe6a
commit 3dcb2d47ee

View file

@ -2719,6 +2719,7 @@ decode_3d_965(struct drm_intel_decode *ctx)
int unsigned max_len;
const char *name;
int gen;
int (*func)(struct drm_intel_decode *ctx);
} opcodes_3d[] = {
{ 0x6000, 3, 3, "URB_FENCE" },
{ 0x6001, 2, 2, "CS_URB_STATE" },
@ -3341,7 +3342,12 @@ decode_3d_965(struct drm_intel_decode *ctx)
if (opcode_3d->gen && opcode_3d->gen != ctx->gen)
continue;
if ((data[0] & 0xffff0000) >> 16 == opcode_3d->opcode) {
if ((data[0] & 0xffff0000) >> 16 != opcode_3d->opcode)
continue;
if (opcode_3d->func) {
return opcode_3d->func(ctx);
} else {
unsigned int i;
len = 1;