diff options
author | Yuxi Sun <b36102@freescale.com> | 2011-11-21 14:31:56 +0800 |
---|---|---|
committer | Frank Li <Frank.Li@freescale.com> | 2011-11-21 15:39:42 +0800 |
commit | 6aafe947fd7c7822336ca00b45dffc98962eaf17 (patch) | |
tree | a023717e47a5275b2f23c46d16421d4ea0b3e550 | |
parent | 37ccc1e6b64f0c26ddaf3638a297242bd7e564cf (diff) |
ENGR00162176 ipu: fix v4l2 capture issues when display blank
Add get and put ipu when enable and disable csi
Signed-off-by: Yuxi Sun <b36102@freescale.com>
-rw-r--r-- | drivers/mxc/ipu3/ipu_common.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/mxc/ipu3/ipu_common.c b/drivers/mxc/ipu3/ipu_common.c index 133c2a65c48c..68062616a1c3 100644 --- a/drivers/mxc/ipu3/ipu_common.c +++ b/drivers/mxc/ipu3/ipu_common.c @@ -2317,6 +2317,7 @@ int32_t ipu_enable_csi(struct ipu_soc *ipu, uint32_t csi) return -EINVAL; } + _ipu_get(ipu); _ipu_lock(ipu); ipu->csi_use_count[csi]++; @@ -2328,6 +2329,7 @@ int32_t ipu_enable_csi(struct ipu_soc *ipu, uint32_t csi) ipu_cm_write(ipu, reg | IPU_CONF_CSI1_EN, IPU_CONF); } _ipu_unlock(ipu); + _ipu_put(ipu); return 0; } EXPORT_SYMBOL(ipu_enable_csi); @@ -2349,7 +2351,7 @@ int32_t ipu_disable_csi(struct ipu_soc *ipu, uint32_t csi) dev_err(ipu->dev, "Wrong csi num_%d\n", csi); return -EINVAL; } - + _ipu_get(ipu); _ipu_lock(ipu); ipu->csi_use_count[csi]--; if (ipu->csi_use_count[csi] == 0) { @@ -2360,6 +2362,7 @@ int32_t ipu_disable_csi(struct ipu_soc *ipu, uint32_t csi) ipu_cm_write(ipu, reg & ~IPU_CONF_CSI1_EN, IPU_CONF); } _ipu_unlock(ipu); + _ipu_put(ipu); return 0; } EXPORT_SYMBOL(ipu_disable_csi); |