Lines Matching refs:ovl
129 static struct ovl_priv_data *get_ovl_priv(struct omap_overlay *ovl) in get_ovl_priv() argument
131 return &dss_data.ovl_priv_data_array[ovl->id]; in get_ovl_priv()
194 static bool ovl_manual_update(struct omap_overlay *ovl) in ovl_manual_update() argument
196 struct mgr_priv_data *mp = get_mgr_priv(ovl->manager); in ovl_manual_update()
213 struct omap_overlay *ovl; in dss_check_settings_low() local
229 list_for_each_entry(ovl, &mgr->overlays, list) { in dss_check_settings_low()
230 op = get_ovl_priv(ovl); in dss_check_settings_low()
239 ois[ovl->id] = oi; in dss_check_settings_low()
270 struct omap_overlay *ovl; in need_isr() local
309 list_for_each_entry(ovl, &mgr->overlays, list) { in need_isr()
312 op = get_ovl_priv(ovl); in need_isr()
347 struct omap_overlay *ovl; in need_go() local
356 list_for_each_entry(ovl, &mgr->overlays, list) { in need_go()
357 op = get_ovl_priv(ovl); in need_go()
373 struct omap_overlay *ovl; in extra_info_update_ongoing() local
388 list_for_each_entry(ovl, &mgr->overlays, list) { in extra_info_update_ongoing()
389 struct ovl_priv_data *op = get_ovl_priv(ovl); in extra_info_update_ongoing()
443 static struct omap_dss_device *dss_ovl_get_device(struct omap_overlay *ovl) in dss_ovl_get_device() argument
445 return ovl->manager ? dss_mgr_get_device(ovl->manager) : NULL; in dss_ovl_get_device()
550 static int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl) in dss_mgr_wait_for_go_ovl() argument
560 if (!ovl->manager) in dss_mgr_wait_for_go_ovl()
563 mp = get_mgr_priv(ovl->manager); in dss_mgr_wait_for_go_ovl()
567 if (ovl_manual_update(ovl)) { in dss_mgr_wait_for_go_ovl()
583 irq = dispc_mgr_get_vsync_irq(ovl->manager->id); in dss_mgr_wait_for_go_ovl()
585 op = get_ovl_priv(ovl); in dss_mgr_wait_for_go_ovl()
607 ovl->id); in dss_mgr_wait_for_go_ovl()
617 DSSERR("ovl(%d)->wait_for_go() timeout\n", ovl->id); in dss_mgr_wait_for_go_ovl()
627 static void dss_ovl_write_regs(struct omap_overlay *ovl) in dss_ovl_write_regs() argument
629 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_write_regs()
635 DSSDBG("writing ovl %d regs\n", ovl->id); in dss_ovl_write_regs()
642 mp = get_mgr_priv(ovl->manager); in dss_ovl_write_regs()
646 r = dispc_ovl_setup(ovl->id, oi, replication, &mp->timings, false); in dss_ovl_write_regs()
652 DSSERR("dispc_ovl_setup failed for ovl %d\n", ovl->id); in dss_ovl_write_regs()
656 dispc_ovl_enable(ovl->id, false); in dss_ovl_write_regs()
665 static void dss_ovl_write_regs_extra(struct omap_overlay *ovl) in dss_ovl_write_regs_extra() argument
667 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_write_regs_extra()
670 DSSDBG("writing ovl %d regs extra\n", ovl->id); in dss_ovl_write_regs_extra()
678 dispc_ovl_enable(ovl->id, op->enabled); in dss_ovl_write_regs_extra()
679 dispc_ovl_set_fifo_threshold(ovl->id, op->fifo_low, op->fifo_high); in dss_ovl_write_regs_extra()
681 mp = get_mgr_priv(ovl->manager); in dss_ovl_write_regs_extra()
691 struct omap_overlay *ovl; in dss_mgr_write_regs() local
701 list_for_each_entry(ovl, &mgr->overlays, list) { in dss_mgr_write_regs()
702 dss_ovl_write_regs(ovl); in dss_mgr_write_regs()
703 dss_ovl_write_regs_extra(ovl); in dss_mgr_write_regs()
793 struct omap_overlay *ovl; in mgr_clear_shadow_dirty() local
801 list_for_each_entry(ovl, &mgr->overlays, list) { in mgr_clear_shadow_dirty()
802 op = get_ovl_priv(ovl); in mgr_clear_shadow_dirty()
948 static void omap_dss_mgr_apply_ovl(struct omap_overlay *ovl) in omap_dss_mgr_apply_ovl() argument
952 op = get_ovl_priv(ovl); in omap_dss_mgr_apply_ovl()
979 struct omap_overlay *ovl; in omap_dss_mgr_apply() local
994 list_for_each_entry(ovl, &mgr->overlays, list) in omap_dss_mgr_apply()
995 omap_dss_mgr_apply_ovl(ovl); in omap_dss_mgr_apply()
1008 static void dss_apply_ovl_enable(struct omap_overlay *ovl, bool enable) in dss_apply_ovl_enable() argument
1012 op = get_ovl_priv(ovl); in dss_apply_ovl_enable()
1021 static void dss_apply_ovl_fifo_thresholds(struct omap_overlay *ovl, in dss_apply_ovl_fifo_thresholds() argument
1024 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_apply_ovl_fifo_thresholds()
1034 static void dss_ovl_setup_fifo(struct omap_overlay *ovl) in dss_ovl_setup_fifo() argument
1036 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_setup_fifo()
1043 dispc_ovl_compute_fifo_thresholds(ovl->id, &fifo_low, &fifo_high, in dss_ovl_setup_fifo()
1044 use_fifo_merge, ovl_manual_update(ovl)); in dss_ovl_setup_fifo()
1046 dss_apply_ovl_fifo_thresholds(ovl, fifo_low, fifo_high); in dss_ovl_setup_fifo()
1051 struct omap_overlay *ovl; in dss_mgr_setup_fifos() local
1059 list_for_each_entry(ovl, &mgr->overlays, list) in dss_mgr_setup_fifos()
1060 dss_ovl_setup_fifo(ovl); in dss_mgr_setup_fifos()
1311 static int dss_ovl_set_info(struct omap_overlay *ovl, in dss_ovl_set_info() argument
1314 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_set_info()
1318 r = dss_ovl_simple_check(ovl, info); in dss_ovl_set_info()
1332 static void dss_ovl_get_info(struct omap_overlay *ovl, in dss_ovl_get_info() argument
1335 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_get_info()
1345 static int dss_ovl_set_manager(struct omap_overlay *ovl, in dss_ovl_set_manager() argument
1348 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_set_manager()
1357 if (ovl->manager) { in dss_ovl_set_manager()
1359 ovl->name, ovl->manager->name); in dss_ovl_set_manager()
1377 dispc_ovl_set_channel_out(ovl->id, mgr->id); in dss_ovl_set_manager()
1379 ovl->manager = mgr; in dss_ovl_set_manager()
1380 list_add_tail(&ovl->list, &mgr->overlays); in dss_ovl_set_manager()
1397 static int dss_ovl_unset_manager(struct omap_overlay *ovl) in dss_ovl_unset_manager() argument
1399 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_unset_manager()
1405 if (!ovl->manager) { in dss_ovl_unset_manager()
1437 if (ovl_manual_update(ovl) && op->extra_info_dirty) { in dss_ovl_unset_manager()
1444 ovl->manager = NULL; in dss_ovl_unset_manager()
1445 list_del(&ovl->list); in dss_ovl_unset_manager()
1457 static bool dss_ovl_is_enabled(struct omap_overlay *ovl) in dss_ovl_is_enabled() argument
1459 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_is_enabled()
1472 static int dss_ovl_enable(struct omap_overlay *ovl) in dss_ovl_enable() argument
1474 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_enable()
1485 if (ovl->manager == NULL || ovl->manager->output == NULL) { in dss_ovl_enable()
1494 r = dss_check_settings(ovl->manager); in dss_ovl_enable()
1497 ovl->id); in dss_ovl_enable()
1504 dss_apply_ovl_enable(ovl, true); in dss_ovl_enable()
1522 static int dss_ovl_disable(struct omap_overlay *ovl) in dss_ovl_disable() argument
1524 struct ovl_priv_data *op = get_ovl_priv(ovl); in dss_ovl_disable()
1535 if (ovl->manager == NULL || ovl->manager->output == NULL) { in dss_ovl_disable()
1542 dss_apply_ovl_enable(ovl, false); in dss_ovl_disable()
1629 struct omap_overlay *ovl = omap_dss_get_overlay(i); in omapdss_compat_init() local
1631 ovl->is_enabled = &dss_ovl_is_enabled; in omapdss_compat_init()
1632 ovl->enable = &dss_ovl_enable; in omapdss_compat_init()
1633 ovl->disable = &dss_ovl_disable; in omapdss_compat_init()
1634 ovl->set_manager = &dss_ovl_set_manager; in omapdss_compat_init()
1635 ovl->unset_manager = &dss_ovl_unset_manager; in omapdss_compat_init()
1636 ovl->set_overlay_info = &dss_ovl_set_info; in omapdss_compat_init()
1637 ovl->get_overlay_info = &dss_ovl_get_info; in omapdss_compat_init()
1638 ovl->wait_for_go = &dss_mgr_wait_for_go_ovl; in omapdss_compat_init()
1639 ovl->get_device = &dss_ovl_get_device; in omapdss_compat_init()