Lines Matching refs:cb_conf
192 r600_set_render_target(ScrnInfoPtr pScrn, cb_config_t *cb_conf, uint32_t domain)
199 if (cb_conf->surface) {
200 switch (cb_conf->surface->level[0].mode) {
211 pitch = (cb_conf->surface->level[0].nblk_x >> 3) - 1;
212 slice = ((cb_conf->surface->level[0].nblk_x * cb_conf->surface->level[0].nblk_y) / 64) - 1;
215 array_mode = cb_conf->array_mode;
216 pitch = (cb_conf->w / 8) - 1;
217 h = RADEON_ALIGN(cb_conf->h, 8);
218 slice = ((cb_conf->w * h) / 64) - 1;
221 cb_color_info = ((cb_conf->endian << ENDIAN_shift) |
222 (cb_conf->format << CB_COLOR0_INFO__FORMAT_shift) |
224 (cb_conf->number_type << NUMBER_TYPE_shift) |
225 (cb_conf->comp_swap << COMP_SWAP_shift) |
226 (cb_conf->tile_mode << CB_COLOR0_INFO__TILE_MODE_shift));
227 if (cb_conf->read_size)
229 if (cb_conf->blend_clamp)
231 if (cb_conf->clear_color)
233 if (cb_conf->blend_bypass)
235 if (cb_conf->blend_float32)
237 if (cb_conf->simple_float)
239 if (cb_conf->round_mode)
241 if (cb_conf->tile_compact)
243 if (cb_conf->source_format)
247 EREG((CB_COLOR0_BASE + (4 * cb_conf->id)), (cb_conf->base >> 8));
248 RELOC_BATCH(cb_conf->bo, 0, domain);
256 E32((2 << cb_conf->id));
264 EREG((CB_COLOR0_TILE + (4 * cb_conf->id)), (0 >> 8)); // CMASK per-tile data base/256
265 RELOC_BATCH(cb_conf->bo, 0, domain);
268 EREG((CB_COLOR0_FRAG + (4 * cb_conf->id)), (0 >> 8)); // FMASK per-tile data base/256
269 RELOC_BATCH(cb_conf->bo, 0, domain);
273 EREG((CB_COLOR0_SIZE + (4 * cb_conf->id)), ((pitch << PITCH_TILE_MAX_shift) |
275 EREG((CB_COLOR0_VIEW + (4 * cb_conf->id)), ((0 << SLICE_START_shift) |
277 EREG((CB_COLOR0_MASK + (4 * cb_conf->id)), ((0 << CMASK_BLOCK_MAX_shift) |
282 EREG((CB_COLOR0_INFO + (4 * cb_conf->id)), cb_color_info);
283 RELOC_BATCH(cb_conf->bo, 0, domain);
287 EREG(CB_TARGET_MASK, (cb_conf->pmask << TARGET0_ENABLE_shift));
288 cb_color_control = R600_ROP[cb_conf->rop] |
289 (cb_conf->blend_enable << TARGET_BLEND_ENABLE_shift);
293 EREG(CB_BLEND_CONTROL, cb_conf->blendcntl);
295 if (cb_conf->blend_enable)
298 EREG(CB_BLEND0_CONTROL, cb_conf->blendcntl);