~ubuntu-branches/ubuntu/quantal/xserver-xorg-video-intel/quantal

« back to all changes in this revision

Viewing changes to src/sna/kgem_debug_gen7.c

  • Committer: Package Import Robot
  • Author(s): Maarten Lankhorst
  • Date: 2012-07-30 10:10:37 UTC
  • mfrom: (1.4.19) (0.1.29 experimental)
  • Revision ID: package-import@ubuntu.com-20120730101037-13qwk6znh3v02bcg
Tags: 2:2.20.2-1ubuntu1
* New upstream release (2.20.2)
* Drop upstreamed 101_copy-fb.patch
* Merge from Debian. Remaining Ubuntu changes:
  - debian/xserver-xorg-video-intel.install:
    + Don't install unnecessary i915-kms.conf; KMS is kernel default.
  - debian/xserver-xorg-video-intel.udev
    + Add apport hook, triggered on udev GPU error event

Show diffs side-by-side

added added

removed removed

Lines of Context:
287
287
 
288
288
        assert((data[0] & (1<<15)) == 0); /* XXX index buffers */
289
289
 
290
 
        for (n = 0; n < data[1]; n++) {
291
 
                int v = data[2] + n;
 
290
        for (n = 0; n < data[2]; n++) {
 
291
                int v = data[3] + n;
292
292
                ErrorF("        [%d:%d] = ", n, v);
293
293
                indirect_vertex_out(kgem, v);
294
294
                ErrorF("\n");
302
302
 
303
303
static void
304
304
state_base_out(uint32_t *data, uint32_t offset, unsigned int index,
305
 
               char *name)
 
305
               const char *name)
306
306
{
307
307
    if (data[index] & 1)
308
308
        kgem_debug_print(data, offset, index,
316
316
 
317
317
static void
318
318
state_max_out(uint32_t *data, uint32_t offset, unsigned int index,
319
 
              char *name)
 
319
              const char *name)
320
320
{
321
321
        if (data[index] == 1)
322
322
                kgem_debug_print(data, offset, index,
358
358
}
359
359
 
360
360
static const char *
361
 
get_965_element_component(uint32_t data, int component)
 
361
get_element_component(uint32_t data, int component)
362
362
{
363
363
        uint32_t component_control = (data >> (16 + (3 - component) * 4)) & 0x7;
364
364
 
387
387
}
388
388
 
389
389
static const char *
390
 
get_965_prim_type(uint32_t data)
 
390
get_prim_type(uint32_t data)
391
391
{
392
 
        uint32_t primtype = (data >> 10) & 0x1f;
 
392
        uint32_t primtype = data & 0x1f;
393
393
 
394
394
        switch (primtype) {
395
395
        case 0x01: return "point list";
595
595
        uint32_t *data = kgem->batch + offset;
596
596
        uint32_t op;
597
597
        unsigned int len;
598
 
        int i, j;
599
 
        char *desc1 = NULL;
 
598
        int i;
600
599
        const char *name;
601
600
 
602
601
        len = (data[0] & 0xff) + 2;
656
655
                        i++;
657
656
                        kgem_debug_print(data, offset, i, "(%s, %s, %s, %s), "
658
657
                                  "dst offset 0x%02x bytes\n",
659
 
                                  get_965_element_component(data[i], 0),
660
 
                                  get_965_element_component(data[i], 1),
661
 
                                  get_965_element_component(data[i], 2),
662
 
                                  get_965_element_component(data[i], 3),
 
658
                                  get_element_component(data[i], 0),
 
659
                                  get_element_component(data[i], 1),
 
660
                                  get_element_component(data[i], 2),
 
661
                                  get_element_component(data[i], 3),
663
662
                                  (data[i] & 0xff) * 4);
664
663
                        i++;
665
664
                }
673
672
                return len;
674
673
 
675
674
        case 0x7b00:
676
 
                assert(len == 6);
677
 
                kgem_debug_print(data, offset, 0,
678
 
                          "3DPRIMITIVE: %s %s\n",
679
 
                          get_965_prim_type(data[0]),
680
 
                          (data[0] & (1 << 15)) ? "random" : "sequential");
681
 
                kgem_debug_print(data, offset, 1, "vertex count\n");
682
 
                kgem_debug_print(data, offset, 2, "start vertex\n");
683
 
                kgem_debug_print(data, offset, 3, "instance count\n");
684
 
                kgem_debug_print(data, offset, 4, "start instance\n");
685
 
                kgem_debug_print(data, offset, 5, "index bias\n");
 
675
                assert(len == 7);
 
676
                kgem_debug_print(data, offset, 0, "3DPRIMITIVE\n");
 
677
                kgem_debug_print(data, offset, 1, "type %s, %s\n",
 
678
                          get_prim_type(data[1]),
 
679
                          (data[1] & (1 << 15)) ? "random" : "sequential");
 
680
                kgem_debug_print(data, offset, 2, "vertex count\n");
 
681
                kgem_debug_print(data, offset, 3, "start vertex\n");
 
682
                kgem_debug_print(data, offset, 4, "instance count\n");
 
683
                kgem_debug_print(data, offset, 5, "start instance\n");
 
684
                kgem_debug_print(data, offset, 6, "index bias\n");
686
685
                primitive_out(kgem, data);
687
686
                return len;
688
687
        }