Adds the function ipu_dc_uninit_sync() which tears down ipu_dc_init_sync(). Signed-off-by: Steve Longerbeam <steve_longerbeam@xxxxxxxxxx> Signed-off-by: Muzaffar Mahmood <muzaffar_mahmood@xxxxxxxxxx> --- drivers/gpu/ipu-v3/ipu-dc.c | 14 ++++++++++++++ include/video/imx-ipu-v3.h | 1 + 2 files changed, 15 insertions(+) diff --git a/drivers/gpu/ipu-v3/ipu-dc.c b/drivers/gpu/ipu-v3/ipu-dc.c index 36c7c57..6992f84 100644 --- a/drivers/gpu/ipu-v3/ipu-dc.c +++ b/drivers/gpu/ipu-v3/ipu-dc.c @@ -327,6 +327,20 @@ int ipu_dc_init_sync(struct ipu_dc *dc, struct ipu_di *di, bool interlaced, } EXPORT_SYMBOL_GPL(ipu_dc_init_sync); +void ipu_dc_uninit_sync(struct ipu_dc *dc) +{ + dc_link_event(dc, DC_EVT_NL, 0, 0); + dc_link_event(dc, DC_EVT_EOL, 0, 0); + dc_link_event(dc, DC_EVT_NEW_DATA, 0, 0); + dc_link_event(dc, DC_EVT_NF, 0, 0); + dc_link_event(dc, DC_EVT_NFIELD, 0, 0); + dc_link_event(dc, DC_EVT_EOF, 0, 0); + dc_link_event(dc, DC_EVT_EOFIELD, 0, 0); + dc_link_event(dc, DC_EVT_NEW_CHAN, 0, 0); + dc_link_event(dc, DC_EVT_NEW_ADDR, 0, 0); +} +EXPORT_SYMBOL_GPL(ipu_dc_uninit_sync); + void ipu_dc_enable(struct ipu_soc *ipu) { ipu_module_enable(ipu, IPU_CONF_DC_EN); diff --git a/include/video/imx-ipu-v3.h b/include/video/imx-ipu-v3.h index 032948b5..758c773 100644 --- a/include/video/imx-ipu-v3.h +++ b/include/video/imx-ipu-v3.h @@ -245,6 +245,7 @@ struct ipu_dc *ipu_dc_get(struct ipu_soc *ipu, int channel); void ipu_dc_put(struct ipu_dc *dc); int ipu_dc_init_sync(struct ipu_dc *dc, struct ipu_di *di, bool interlaced, u32 pixel_fmt, struct ipu_dc_if_map *new_map, u32 width); +void ipu_dc_uninit_sync(struct ipu_dc *dc); void ipu_dc_enable(struct ipu_soc *ipu); void ipu_dc_enable_channel(struct ipu_dc *dc); void ipu_dc_disable_channel(struct ipu_dc *dc); -- 1.7.9.5 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel