diff options
Diffstat (limited to 'drivers/media/video/mxc/capture/ipu_prp_vf_sdc_bg.c')
-rw-r--r-- | drivers/media/video/mxc/capture/ipu_prp_vf_sdc_bg.c | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/drivers/media/video/mxc/capture/ipu_prp_vf_sdc_bg.c b/drivers/media/video/mxc/capture/ipu_prp_vf_sdc_bg.c index 4035c7664022..7f0984c42950 100644 --- a/drivers/media/video/mxc/capture/ipu_prp_vf_sdc_bg.c +++ b/drivers/media/video/mxc/capture/ipu_prp_vf_sdc_bg.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2009 Freescale Semiconductor, Inc. All Rights Reserved. + * Copyright 2004-2010 Freescale Semiconductor, Inc. All Rights Reserved. */ /* @@ -344,6 +344,32 @@ static int prpvf_stop(void *private) } /*! + * Enable csi + * @param private struct cam_data * mxc capture instance + * + * @return status + */ +static int prp_vf_enable_csi(void *private) +{ + cam_data *cam = (cam_data *) private; + + return ipu_enable_csi(cam->csi); +} + +/*! + * Disable csi + * @param private struct cam_data * mxc capture instance + * + * @return status + */ +static int prp_vf_disable_csi(void *private) +{ + cam_data *cam = (cam_data *) private; + + return ipu_disable_csi(cam->csi); +} + +/*! * function to select PRP-VF as the working path * * @param private cam_data * mxc v4l2 main structure @@ -357,6 +383,8 @@ int prp_vf_sdc_select_bg(void *private) if (cam) { cam->vf_start_sdc = prpvf_start; cam->vf_stop_sdc = prpvf_stop; + cam->vf_enable_csi = prp_vf_enable_csi; + cam->vf_disable_csi = prp_vf_disable_csi; cam->overlay_active = false; } @@ -379,6 +407,8 @@ int prp_vf_sdc_deselect_bg(void *private) if (cam) { cam->vf_start_sdc = NULL; cam->vf_stop_sdc = NULL; + cam->vf_enable_csi = NULL; + cam->vf_disable_csi = NULL; } return err; } |