Lines Matching refs:crtc
406 return nouveau_encoder(encoder)->crtc; in nv50_display_crtc_get()
494 nv50_display_crtc_sema(struct drm_device *dev, int crtc) in nv50_display_crtc_sema() argument
516 nv50_display_flip_stop(struct drm_crtc *crtc) in nv50_display_flip_stop() argument
518 struct nvif_device *device = &nouveau_drm(crtc->dev)->device; in nv50_display_flip_stop()
520 .disp = nv50_disp(crtc->dev), in nv50_display_flip_stop()
521 .chan = nv50_sync(crtc), in nv50_display_flip_stop()
542 nv50_display_flip_next(struct drm_crtc *crtc, struct drm_framebuffer *fb, in nv50_display_flip_next() argument
546 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_display_flip_next()
547 struct nv50_head *head = nv50_head(crtc); in nv50_display_flip_next()
548 struct nv50_sync *sync = nv50_sync(crtc); in nv50_display_flip_next()
552 if (crtc->primary->fb->width != fb->width || in nv50_display_flip_next()
553 crtc->primary->fb->height != fb->height) in nv50_display_flip_next()
560 evo_sync(crtc->dev); in nv50_display_flip_next()
726 struct drm_crtc *crtc = &nv_crtc->base; in nv50_crtc_set_scale() local
820 nv50_display_flip_stop(crtc); in nv50_crtc_set_scale()
821 nv50_display_flip_next(crtc, crtc->primary->fb, in nv50_crtc_set_scale()
998 nv50_crtc_dpms(struct drm_crtc *crtc, int mode) in nv50_crtc_dpms() argument
1003 nv50_crtc_prepare(struct drm_crtc *crtc) in nv50_crtc_prepare() argument
1005 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_prepare()
1006 struct nv50_mast *mast = nv50_mast(crtc->dev); in nv50_crtc_prepare()
1009 nv50_display_flip_stop(crtc); in nv50_crtc_prepare()
1042 nv50_crtc_commit(struct drm_crtc *crtc) in nv50_crtc_commit() argument
1044 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_commit()
1045 struct nv50_mast *mast = nv50_mast(crtc->dev); in nv50_crtc_commit()
1083 nv50_display_flip_next(crtc, crtc->primary->fb, NULL, 1); in nv50_crtc_commit()
1087 nv50_crtc_mode_fixup(struct drm_crtc *crtc, const struct drm_display_mode *mode, in nv50_crtc_mode_fixup() argument
1095 nv50_crtc_swap_fbs(struct drm_crtc *crtc, struct drm_framebuffer *old_fb) in nv50_crtc_swap_fbs() argument
1097 struct nouveau_framebuffer *nvfb = nouveau_framebuffer(crtc->primary->fb); in nv50_crtc_swap_fbs()
1098 struct nv50_head *head = nv50_head(crtc); in nv50_crtc_swap_fbs()
1112 nv50_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *umode, in nv50_crtc_mode_set() argument
1116 struct nv50_mast *mast = nv50_mast(crtc->dev); in nv50_crtc_mode_set()
1117 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_mode_set()
1151 ret = nv50_crtc_swap_fbs(crtc, old_fb); in nv50_crtc_mode_set()
1204 nv50_crtc_set_image(nv_crtc, crtc->primary->fb, x, y, false); in nv50_crtc_mode_set()
1209 nv50_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, in nv50_crtc_mode_set_base() argument
1212 struct nouveau_drm *drm = nouveau_drm(crtc->dev); in nv50_crtc_mode_set_base()
1213 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_mode_set_base()
1216 if (!crtc->primary->fb) { in nv50_crtc_mode_set_base()
1221 ret = nv50_crtc_swap_fbs(crtc, old_fb); in nv50_crtc_mode_set_base()
1225 nv50_display_flip_stop(crtc); in nv50_crtc_mode_set_base()
1226 nv50_crtc_set_image(nv_crtc, crtc->primary->fb, x, y, true); in nv50_crtc_mode_set_base()
1227 nv50_display_flip_next(crtc, crtc->primary->fb, NULL, 1); in nv50_crtc_mode_set_base()
1232 nv50_crtc_mode_set_base_atomic(struct drm_crtc *crtc, in nv50_crtc_mode_set_base_atomic() argument
1236 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_mode_set_base_atomic()
1237 nv50_display_flip_stop(crtc); in nv50_crtc_mode_set_base_atomic()
1243 nv50_crtc_lut_load(struct drm_crtc *crtc) in nv50_crtc_lut_load() argument
1245 struct nv50_disp *disp = nv50_disp(crtc->dev); in nv50_crtc_lut_load()
1246 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_lut_load()
1268 nv50_crtc_disable(struct drm_crtc *crtc) in nv50_crtc_disable() argument
1270 struct nv50_head *head = nv50_head(crtc); in nv50_crtc_disable()
1271 evo_sync(crtc->dev); in nv50_crtc_disable()
1278 nv50_crtc_cursor_set(struct drm_crtc *crtc, struct drm_file *file_priv, in nv50_crtc_cursor_set() argument
1281 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_cursor_set()
1282 struct drm_device *dev = crtc->dev; in nv50_crtc_cursor_set()
1311 nv50_crtc_cursor_move(struct drm_crtc *crtc, int x, int y) in nv50_crtc_cursor_move() argument
1313 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_cursor_move()
1314 struct nv50_curs *curs = nv50_curs(crtc); in nv50_crtc_cursor_move()
1325 nv50_crtc_gamma_set(struct drm_crtc *crtc, u16 *r, u16 *g, u16 *b, in nv50_crtc_gamma_set() argument
1328 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_gamma_set()
1338 nv50_crtc_lut_load(crtc); in nv50_crtc_gamma_set()
1350 nv50_crtc_destroy(struct drm_crtc *crtc) in nv50_crtc_destroy() argument
1352 struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); in nv50_crtc_destroy()
1353 struct nv50_disp *disp = nv50_disp(crtc->dev); in nv50_crtc_destroy()
1354 struct nv50_head *head = nv50_head(crtc); in nv50_crtc_destroy()
1383 drm_crtc_cleanup(crtc); in nv50_crtc_destroy()
1384 kfree(crtc); in nv50_crtc_destroy()
1413 struct drm_crtc *crtc; in nv50_crtc_create() local
1433 crtc = &head->base.base; in nv50_crtc_create()
1434 drm_crtc_init(dev, crtc, &nv50_crtc_func); in nv50_crtc_create()
1435 drm_crtc_helper_add(crtc, &nv50_crtc_hfunc); in nv50_crtc_create()
1436 drm_mode_crtc_set_gamma_size(crtc, 256); in nv50_crtc_create()
1480 nv50_crtc_destroy(crtc); in nv50_crtc_create()
1557 struct nouveau_crtc *nv_crtc = nouveau_crtc(encoder->crtc); in nv50_dac_mode_set()
1597 nv_encoder->crtc = encoder->crtc; in nv50_dac_mode_set()
1608 if (nv_encoder->crtc) { in nv50_dac_disconnect()
1609 nv50_crtc_prepare(nv_encoder->crtc); in nv50_dac_disconnect()
1624 nv_encoder->crtc = NULL; in nv50_dac_disconnect()
1709 struct nouveau_crtc *nv_crtc = nouveau_crtc(encoder->crtc); in nv50_audio_mode_set()
1763 struct nouveau_crtc *nv_crtc = nouveau_crtc(encoder->crtc); in nv50_hdmi_mode_set()
1889 struct nouveau_crtc *nv_crtc = nouveau_crtc(nv_encoder->crtc); in nv50_sor_disconnect()
1892 nv_encoder->crtc = NULL; in nv50_sor_disconnect()
1912 struct nouveau_crtc *nv_crtc = nouveau_crtc(encoder->crtc); in nv50_sor_mode_set()
1934 nv_encoder->crtc = encoder->crtc; in nv50_sor_mode_set()
2143 struct nouveau_crtc *nv_crtc = nouveau_crtc(encoder->crtc); in nv50_pior_mode_set()
2184 nv_encoder->crtc = encoder->crtc; in nv50_pior_mode_set()
2195 if (nv_encoder->crtc) { in nv50_pior_disconnect()
2196 nv50_crtc_prepare(nv_encoder->crtc); in nv50_pior_disconnect()
2208 nv_encoder->crtc = NULL; in nv50_pior_disconnect()
2302 struct drm_crtc *crtc; in nv50_fbdma_init() local
2339 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { in nv50_fbdma_init()
2340 struct nv50_head *head = nv50_head(crtc); in nv50_fbdma_init()
2422 struct drm_crtc *crtc; in nv50_display_init() local
2429 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { in nv50_display_init()
2430 struct nv50_sync *sync = nv50_sync(crtc); in nv50_display_init()
2432 nv50_crtc_lut_load(crtc); in nv50_display_init()