drm/radeon/kms: add rv530 R300_SU_REG_DEST + reloc for ZPASS_ADDR
These are needed for Occulsion Query support. Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -1403,6 +1403,21 @@ static int r300_packet0_check(struct radeon_cs_parser *p,
|
|||||||
tmp = (ib_chunk->kdata[idx] >> 22) & 0xF;
|
tmp = (ib_chunk->kdata[idx] >> 22) & 0xF;
|
||||||
track->textures[i].txdepth = tmp;
|
track->textures[i].txdepth = tmp;
|
||||||
break;
|
break;
|
||||||
|
case R300_ZB_ZPASS_ADDR:
|
||||||
|
r = r100_cs_packet_next_reloc(p, &reloc);
|
||||||
|
if (r) {
|
||||||
|
DRM_ERROR("No reloc for ib[%d]=0x%04X\n",
|
||||||
|
idx, reg);
|
||||||
|
r100_cs_dump_packet(p, pkt);
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
ib[idx] = ib_chunk->kdata[idx] + ((u32)reloc->lobj.gpu_offset);
|
||||||
|
break;
|
||||||
|
case 0x4be8:
|
||||||
|
/* valid register only on RV530 */
|
||||||
|
if (p->rdev->family == CHIP_RV530)
|
||||||
|
break;
|
||||||
|
/* fallthrough do not move */
|
||||||
default:
|
default:
|
||||||
printk(KERN_ERR "Forbidden register 0x%04X in cs at %d\n",
|
printk(KERN_ERR "Forbidden register 0x%04X in cs at %d\n",
|
||||||
reg, idx);
|
reg, idx);
|
||||||
|
Reference in New Issue
Block a user