Lines Matching refs:asyh
242 struct nv50_head_atom *asyh = nv50_head_atom(crtc_state); in nv50_crc_atomic_stop_reporting() local
245 if (!asyh->clr.crc) in nv50_crc_atomic_stop_reporting()
274 struct nv50_head_atom *asyh = nv50_head_atom(new_crtc_state); in nv50_crc_atomic_init_notifier_contexts() local
278 if (!asyh->set.crc) in nv50_crc_atomic_init_notifier_contexts()
298 struct nv50_head_atom *asyh = nv50_head_atom(new_crtc_state); in nv50_crc_atomic_release_notifier_contexts() local
302 if (!asyh->clr.crc) in nv50_crc_atomic_release_notifier_contexts()
321 struct nv50_head_atom *asyh = nv50_head_atom(crtc_state); in nv50_crc_atomic_start_reporting() local
325 if (!asyh->set.crc) in nv50_crc_atomic_start_reporting()
333 crc->src = asyh->crc.src; in nv50_crc_atomic_start_reporting()
346 struct nv50_head_atom *asyh, in nv50_crc_atomic_check_head() argument
349 struct nv50_atom *atom = nv50_atom(asyh->state.state); in nv50_crc_atomic_check_head()
352 bool changed = armh->crc.src != asyh->crc.src; in nv50_crc_atomic_check_head()
354 if (!armh->crc.src && !asyh->crc.src) { in nv50_crc_atomic_check_head()
355 asyh->set.crc = false; in nv50_crc_atomic_check_head()
356 asyh->clr.crc = false; in nv50_crc_atomic_check_head()
364 if (asyh->crc.src && disp->disp->object.oclass >= GV100_DISP && in nv50_crc_atomic_check_head()
365 !(BIT(asyh->crc.wndw) & asyh->wndw.owned)) { in nv50_crc_atomic_check_head()
366 if (!asyh->wndw.owned) { in nv50_crc_atomic_check_head()
379 asyh->crc.wndw = ffs(asyh->wndw.owned) - 1; in nv50_crc_atomic_check_head()
382 if (drm_atomic_crtc_needs_modeset(&asyh->state) || changed || in nv50_crc_atomic_check_head()
383 armh->crc.wndw != asyh->crc.wndw) { in nv50_crc_atomic_check_head()
384 asyh->clr.crc = armh->crc.src && armh->state.active; in nv50_crc_atomic_check_head()
385 asyh->set.crc = asyh->crc.src && asyh->state.active; in nv50_crc_atomic_check_head()
387 asyh->set.or |= armh->or.crc_raster != in nv50_crc_atomic_check_head()
388 asyh->or.crc_raster; in nv50_crc_atomic_check_head()
390 if (asyh->clr.crc && asyh->set.crc) in nv50_crc_atomic_check_head()
393 asyh->set.crc = false; in nv50_crc_atomic_check_head()
394 asyh->clr.crc = false; in nv50_crc_atomic_check_head()
412 struct nv50_head_atom *asyh = nv50_head_atom(new_crtc_state); in nv50_crc_atomic_check_outp() local
418 if (!asyh->clr.crc) in nv50_crc_atomic_check_outp()
461 struct nv50_head_atom *asyh) in nv50_crc_atomic_set() argument
468 nv50_real_outp(nv50_head_atom_get_encoder(asyh)); in nv50_crc_atomic_set()
471 nv50_crc_source_type(outp, asyh->crc.src), in nv50_crc_atomic_set()
472 &crc->ctx[crc->ctx_idx], asyh->crc.wndw); in nv50_crc_atomic_set()
552 struct nv50_head_atom *asyh; in nv50_crc_set_source() local
594 asyh = nv50_head_atom(crtc_state); in nv50_crc_set_source()
595 asyh->crc.src = source; in nv50_crc_set_source()
596 asyh->or.crc_raster = nv50_crc_raster_type(source); in nv50_crc_set_source()