/freebsd/sys/dev/drm2/ |
H A D | drm_crtc_helper.c | 241 bool drm_helper_crtc_in_use(struct drm_crtc *crtc) in drm_helper_crtc_in_use() argument 244 struct drm_device *dev = crtc->dev; in drm_helper_crtc_in_use() 247 if (encoder->crtc == crtc && drm_helper_encoder_in_use(encoder)) in drm_helper_crtc_in_use() 278 struct drm_crtc *crtc; in drm_helper_disable_unused_functions() local 291 encoder->crtc = NULL; in drm_helper_disable_unused_functions() 295 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { in drm_helper_disable_unused_functions() 296 struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; in drm_helper_disable_unused_functions() 297 crtc->enabled = drm_helper_crtc_in_use(crtc); in drm_helper_disable_unused_functions() 298 if (!crtc->enabled) { in drm_helper_disable_unused_functions() 300 (*crtc_funcs->disable)(crtc); in drm_helper_disable_unused_functions() [all …]
|
H A D | drm_irq.c | 40 #define vblanktimestamp(dev, crtc, count) ( \ argument 41 (dev)->_vblank_time[(crtc) * DRM_VBLANKTIME_RBSIZE + \ 84 static void clear_vblank_timestamps(struct drm_device *dev, int crtc) in clear_vblank_timestamps() argument 86 memset(&dev->_vblank_time[crtc * DRM_VBLANKTIME_RBSIZE], 0, in clear_vblank_timestamps() 96 static void vblank_disable_and_save(struct drm_device *dev, int crtc) in vblank_disable_and_save() argument 110 dev->driver->disable_vblank(dev, crtc); in vblank_disable_and_save() 111 dev->vblank_enabled[crtc] = 0; in vblank_disable_and_save() 126 dev->last_vblank[crtc] = dev->driver->get_vblank_counter(dev, crtc); in vblank_disable_and_save() 127 vblrc = drm_get_last_vbltimestamp(dev, crtc, &tvblank, 0); in vblank_disable_and_save() 128 …} while (dev->last_vblank[crtc] != dev->driver->get_vblank_counter(dev, crtc) && (--count) && vblr… in vblank_disable_and_save() [all …]
|
H A D | drm_crtc_helper.h | 53 void (*dpms)(struct drm_crtc *crtc, int mode); 54 void (*prepare)(struct drm_crtc *crtc); 55 void (*commit)(struct drm_crtc *crtc); 58 bool (*mode_fixup)(struct drm_crtc *crtc, 62 int (*mode_set)(struct drm_crtc *crtc, struct drm_display_mode *mode, 67 int (*mode_set_base)(struct drm_crtc *crtc, int x, int y, 69 int (*mode_set_base_atomic)(struct drm_crtc *crtc, 74 void (*load_lut)(struct drm_crtc *crtc); 77 void (*disable)(struct drm_crtc *crtc); 125 extern bool drm_crtc_helper_set_mode(struct drm_crtc *crtc, [all …]
|
H A D | drm_fb_helper.c | 232 static void drm_fb_helper_save_lut_atomic(struct drm_crtc *crtc, struct drm_fb_helper *helper) 237 r_base = crtc->gamma_store; 238 g_base = r_base + crtc->gamma_size; 239 b_base = g_base + crtc->gamma_size; 241 for (i = 0; i < crtc->gamma_size; i++) 242 helper->funcs->gamma_get(crtc, &r_base[i], &g_base[i], &b_base[i], i); 245 static void drm_fb_helper_restore_lut_atomic(struct drm_crtc *crtc) 249 if (crtc->funcs->gamma_set == NULL) 252 r_base = crtc->gamma_store; 253 g_base = r_base + crtc->gamma_size; [all …]
|
H A D | drm_crtc.c | 370 struct drm_crtc *crtc; in drm_framebuffer_remove() local 376 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { in drm_framebuffer_remove() 377 if (crtc->fb == fb) { in drm_framebuffer_remove() 380 set.crtc = crtc; in drm_framebuffer_remove() 382 ret = crtc->funcs->set_config(&set); in drm_framebuffer_remove() 384 DRM_ERROR("failed to reset crtc %p when fb was deleted\n", crtc); in drm_framebuffer_remove() 396 plane->crtc = NULL; in drm_framebuffer_remove() 420 int drm_crtc_init(struct drm_device *dev, struct drm_crtc *crtc, in drm_crtc_init() argument 425 crtc->dev = dev; in drm_crtc_init() 426 crtc->funcs = funcs; in drm_crtc_init() [all …]
|
H A D | drm_crtc.h | 323 void (*save)(struct drm_crtc *crtc); /* suspend? */ 325 void (*restore)(struct drm_crtc *crtc); /* resume? */ 327 void (*reset)(struct drm_crtc *crtc); 330 int (*cursor_set)(struct drm_crtc *crtc, struct drm_file *file_priv, 332 int (*cursor_move)(struct drm_crtc *crtc, int x, int y); 335 void (*gamma_set)(struct drm_crtc *crtc, u16 *r, u16 *g, u16 *b, 338 void (*destroy)(struct drm_crtc *crtc); 351 int (*page_flip)(struct drm_crtc *crtc, 355 int (*set_property)(struct drm_crtc *crtc, 499 struct drm_crtc *crtc; member [all …]
|
H A D | drmP.h | 732 u32 (*get_vblank_counter) (struct drm_device *dev, int crtc); 747 int (*enable_vblank) (struct drm_device *dev, int crtc); 758 void (*disable_vblank) (struct drm_device *dev, int crtc); 797 int (*get_scanout_position) (struct drm_device *dev, int crtc, 830 int (*get_vblank_timestamp) (struct drm_device *dev, int crtc, 1320 extern u32 drm_vblank_count(struct drm_device *dev, int crtc); 1321 extern u32 drm_vblank_count_and_time(struct drm_device *dev, int crtc, 1323 extern void drm_send_vblank_event(struct drm_device *dev, int crtc, 1325 extern bool drm_handle_vblank(struct drm_device *dev, int crtc); 1326 extern int drm_vblank_get(struct drm_device *dev, int crtc); [all …]
|
H A D | drm_fb_helper.h | 50 void (*gamma_set)(struct drm_crtc *crtc, u16 red, u16 green, 52 void (*gamma_get)(struct drm_crtc *crtc, u16 *red, u16 *green,
|
H A D | drm.h | 514 __u32 crtc; member
|
/freebsd/sys/arm/nvidia/drm2/ |
H A D | tegra_dc.c | 311 dc_setup_clk(struct dc_softc *sc, struct drm_crtc *crtc, in dc_setup_clk() argument 323 list_for_each_entry(encoder, &crtc->dev->mode_config.encoder_list, in dc_setup_clk() 325 if (encoder->crtc == crtc) { in dc_setup_clk() 507 struct tegra_crtc *crtc; in dc_plane_update() local 515 crtc = container_of(drm_crtc, struct tegra_crtc, drm_crtc); in dc_plane_update() 516 sc = device_get_softc(crtc->dev); in dc_plane_update() 547 struct tegra_crtc *crtc; in dc_plane_disable() local 551 if (drm_plane->crtc == NULL) in dc_plane_disable() 554 crtc = container_of(drm_plane->crtc, struct tegra_crtc, drm_crtc); in dc_plane_disable() 556 sc = device_get_softc(crtc->dev); in dc_plane_disable() [all …]
|
H A D | tegra_host1x.c | 264 struct drm_crtc *crtc; in tegra_drm_preclose() local 266 list_for_each_entry(crtc, &drm->mode_config.crtc_list, head) in tegra_drm_preclose() 267 tegra_dc_cancel_page_flip(crtc, file); in tegra_drm_preclose() 284 struct drm_crtc *crtc; in host1x_drm_enable_vblank() local 286 list_for_each_entry(crtc, &drm_dev->mode_config.crtc_list, head) { in host1x_drm_enable_vblank() 287 if (pipe == tegra_dc_get_pipe(crtc)) { in host1x_drm_enable_vblank() 288 tegra_dc_enable_vblank(crtc); in host1x_drm_enable_vblank() 298 struct drm_crtc *crtc; in host1x_drm_disable_vblank() local 300 list_for_each_entry(crtc, &drm_dev->mode_config.crtc_list, head) { in host1x_drm_disable_vblank() 301 if (pipe == tegra_dc_get_pipe(crtc)) { in host1x_drm_disable_vblank() [all …]
|
H A D | tegra_hdmi.c | 719 struct tegra_crtc *crtc; in hdmi_disable() local 724 if (sc->output.encoder.crtc != NULL) { in hdmi_disable() 725 crtc = container_of(sc->output.encoder.crtc, struct tegra_crtc, in hdmi_disable() 727 dc = crtc->dev; in hdmi_disable() 751 struct tegra_crtc *crtc; in hdmi_enable() local 757 mode = &sc->output.encoder.crtc->mode; in hdmi_enable() 758 crtc = container_of(sc->output.encoder.crtc, struct tegra_crtc, in hdmi_enable() 760 dc = crtc->dev; in hdmi_enable() 806 if (crtc->nvidia_head != 0) in hdmi_enable()
|
/freebsd/sys/dev/video/ |
H A D | crtc_if.m | 32 INTERFACE crtc;
|