Commit 5ba9bb0e authored by Vaibhav Hiremath's avatar Vaibhav Hiremath Committed by Mauro Carvalho Chehab

V4L/DVB: OMAP_VOUT:Build FIX: Rebased against latest DSS2 changes

Changes -
	- Kconfig option dependancy changed to ARCH_OMAP2/3 from
	ARCH_OMAP24XX/34XX
	- There are some moments of function from omap_dss_device
	to omap_dss_driver. Incorporated changes for the same.
Signed-off-by: default avatarVaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: default avatarMuralidharan Karicheri <mkaricheri@gmail.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 815c4163
config VIDEO_OMAP2_VOUT config VIDEO_OMAP2_VOUT
tristate "OMAP2/OMAP3 V4L2-Display driver" tristate "OMAP2/OMAP3 V4L2-Display driver"
depends on ARCH_OMAP24XX || ARCH_OMAP34XX depends on ARCH_OMAP2 || ARCH_OMAP3
select VIDEOBUF_GEN select VIDEOBUF_GEN
select VIDEOBUF_DMA_SG select VIDEOBUF_DMA_SG
select OMAP2_DSS select OMAP2_DSS
......
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
#include <linux/irq.h> #include <linux/irq.h>
#include <linux/videodev2.h> #include <linux/videodev2.h>
#include <linux/slab.h>
#include <media/videobuf-dma-sg.h> #include <media/videobuf-dma-sg.h>
#include <media/v4l2-device.h> #include <media/v4l2-device.h>
...@@ -2488,7 +2489,7 @@ static int omap_vout_remove(struct platform_device *pdev) ...@@ -2488,7 +2489,7 @@ static int omap_vout_remove(struct platform_device *pdev)
for (k = 0; k < vid_dev->num_displays; k++) { for (k = 0; k < vid_dev->num_displays; k++) {
if (vid_dev->displays[k]->state != OMAP_DSS_DISPLAY_DISABLED) if (vid_dev->displays[k]->state != OMAP_DSS_DISPLAY_DISABLED)
vid_dev->displays[k]->disable(vid_dev->displays[k]); vid_dev->displays[k]->driver->disable(vid_dev->displays[k]);
omap_dss_put_device(vid_dev->displays[k]); omap_dss_put_device(vid_dev->displays[k]);
} }
...@@ -2545,7 +2546,9 @@ static int __init omap_vout_probe(struct platform_device *pdev) ...@@ -2545,7 +2546,9 @@ static int __init omap_vout_probe(struct platform_device *pdev)
def_display = NULL; def_display = NULL;
} }
if (def_display) { if (def_display) {
ret = def_display->enable(def_display); struct omap_dss_driver *dssdrv = def_display->driver;
ret = dssdrv->enable(def_display);
if (ret) { if (ret) {
/* Here we are not considering a error /* Here we are not considering a error
* as display may be enabled by frame * as display may be enabled by frame
...@@ -2559,21 +2562,21 @@ static int __init omap_vout_probe(struct platform_device *pdev) ...@@ -2559,21 +2562,21 @@ static int __init omap_vout_probe(struct platform_device *pdev)
if (def_display->caps & if (def_display->caps &
OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) { OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) {
#ifdef CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE #ifdef CONFIG_FB_OMAP2_FORCE_AUTO_UPDATE
if (def_display->enable_te) if (dssdrv->enable_te)
def_display->enable_te(def_display, 1); dssdrv->enable_te(def_display, 1);
if (def_display->set_update_mode) if (dssdrv->set_update_mode)
def_display->set_update_mode(def_display, dssdrv->set_update_mode(def_display,
OMAP_DSS_UPDATE_AUTO); OMAP_DSS_UPDATE_AUTO);
#else /* MANUAL_UPDATE */ #else /* MANUAL_UPDATE */
if (def_display->enable_te) if (dssdrv->enable_te)
def_display->enable_te(def_display, 0); dssdrv->enable_te(def_display, 0);
if (def_display->set_update_mode) if (dssdrv->set_update_mode)
def_display->set_update_mode(def_display, dssdrv->set_update_mode(def_display,
OMAP_DSS_UPDATE_MANUAL); OMAP_DSS_UPDATE_MANUAL);
#endif #endif
} else { } else {
if (def_display->set_update_mode) if (dssdrv->set_update_mode)
def_display->set_update_mode(def_display, dssdrv->set_update_mode(def_display,
OMAP_DSS_UPDATE_AUTO); OMAP_DSS_UPDATE_AUTO);
} }
} }
...@@ -2592,8 +2595,8 @@ static int __init omap_vout_probe(struct platform_device *pdev) ...@@ -2592,8 +2595,8 @@ static int __init omap_vout_probe(struct platform_device *pdev)
for (i = 0; i < vid_dev->num_displays; i++) { for (i = 0; i < vid_dev->num_displays; i++) {
struct omap_dss_device *display = vid_dev->displays[i]; struct omap_dss_device *display = vid_dev->displays[i];
if (display->update) if (display->driver->update)
display->update(display, 0, 0, display->driver->update(display, 0, 0,
display->panel.timings.x_res, display->panel.timings.x_res,
display->panel.timings.y_res); display->panel.timings.y_res);
} }
...@@ -2608,8 +2611,8 @@ static int __init omap_vout_probe(struct platform_device *pdev) ...@@ -2608,8 +2611,8 @@ static int __init omap_vout_probe(struct platform_device *pdev)
if (ovl->manager && ovl->manager->device) if (ovl->manager && ovl->manager->device)
def_display = ovl->manager->device; def_display = ovl->manager->device;
if (def_display) if (def_display && def_display->driver)
def_display->disable(def_display); def_display->driver->disable(def_display);
} }
probe_err0: probe_err0:
kfree(vid_dev); kfree(vid_dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment