ilo: fix fragment shaders that use PCB on GEN7+

Missed this commit when preparing PCB changes for upstreaming.
This commit is contained in:
Chia-I Wu 2013-08-15 11:14:05 +08:00
parent ae645b83fc
commit a453eb6f86
2 changed files with 7 additions and 3 deletions

View file

@ -493,8 +493,12 @@ gen7_pipeline_wm(struct ilo_3d_pipeline *p,
}
/* 3DSTATE_CONSTANT_PS */
if (session->pcb_state_fs_changed)
gen7_emit_3DSTATE_CONSTANT_PS(p->dev, NULL, NULL, 0, p->cp);
if (session->pcb_state_fs_changed) {
gen7_emit_3DSTATE_CONSTANT_PS(p->dev,
&p->state.wm.PUSH_CONSTANT_BUFFER,
&p->state.wm.PUSH_CONSTANT_BUFFER_size,
1, p->cp);
}
/* 3DSTATE_PS */
if (DIRTY(FS) || DIRTY(SAMPLER_FS) || DIRTY(BLEND) ||

View file

@ -143,7 +143,7 @@ ilo_gpe_init_fs_cso_gen7(const struct ilo_dev_info *dev,
dw4 = (max_threads - 1) << IVB_PS_MAX_THREADS_SHIFT |
GEN7_PS_POSOFFSET_NONE;
if (false)
if (ilo_shader_get_kernel_param(fs, ILO_KERNEL_PCB_CBUF0_SIZE))
dw4 |= GEN7_PS_PUSH_CONSTANT_ENABLE;
if (ilo_shader_get_kernel_param(fs, ILO_KERNEL_INPUT_COUNT))