diff options
Diffstat (limited to 'drivers/video/omap2/omapfb/omapfb-ioctl.c')
-rw-r--r-- | drivers/video/omap2/omapfb/omapfb-ioctl.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/video/omap2/omapfb/omapfb-ioctl.c b/drivers/video/omap2/omapfb/omapfb-ioctl.c index c6cf372d22c5..606b89f12351 100644 --- a/drivers/video/omap2/omapfb/omapfb-ioctl.c +++ b/drivers/video/omap2/omapfb/omapfb-ioctl.c | |||
@@ -599,6 +599,7 @@ int omapfb_ioctl(struct fb_info *fbi, unsigned int cmd, unsigned long arg) | |||
599 | struct omapfb_info *ofbi = FB2OFB(fbi); | 599 | struct omapfb_info *ofbi = FB2OFB(fbi); |
600 | struct omapfb2_device *fbdev = ofbi->fbdev; | 600 | struct omapfb2_device *fbdev = ofbi->fbdev; |
601 | struct omap_dss_device *display = fb2display(fbi); | 601 | struct omap_dss_device *display = fb2display(fbi); |
602 | struct omap_overlay_manager *mgr; | ||
602 | 603 | ||
603 | union { | 604 | union { |
604 | struct omapfb_update_window_old uwnd_o; | 605 | struct omapfb_update_window_old uwnd_o; |
@@ -786,12 +787,14 @@ int omapfb_ioctl(struct fb_info *fbi, unsigned int cmd, unsigned long arg) | |||
786 | 787 | ||
787 | case OMAPFB_WAITFORVSYNC: | 788 | case OMAPFB_WAITFORVSYNC: |
788 | DBG("ioctl WAITFORVSYNC\n"); | 789 | DBG("ioctl WAITFORVSYNC\n"); |
789 | if (!display) { | 790 | if (!display && !display->output && !display->output->manager) { |
790 | r = -EINVAL; | 791 | r = -EINVAL; |
791 | break; | 792 | break; |
792 | } | 793 | } |
793 | 794 | ||
794 | r = display->manager->wait_for_vsync(display->manager); | 795 | mgr = display->output->manager; |
796 | |||
797 | r = mgr->wait_for_vsync(mgr); | ||
795 | break; | 798 | break; |
796 | 799 | ||
797 | case OMAPFB_WAITFORGO: | 800 | case OMAPFB_WAITFORGO: |