|
@@ -112,7 +112,7 @@ int ipu_dp_set_global_alpha(struct ipu_dp *dp, bool enable,
|
|
|
writel(reg & ~DP_COM_CONF_GWAM, flow->base + DP_COM_CONF);
|
|
|
}
|
|
|
|
|
|
- ipu_srm_dp_sync_update(priv->ipu);
|
|
|
+ ipu_srm_dp_update(priv->ipu, true);
|
|
|
|
|
|
mutex_unlock(&priv->mutex);
|
|
|
|
|
@@ -127,7 +127,7 @@ int ipu_dp_set_window_pos(struct ipu_dp *dp, u16 x_pos, u16 y_pos)
|
|
|
|
|
|
writel((x_pos << 16) | y_pos, flow->base + DP_FG_POS);
|
|
|
|
|
|
- ipu_srm_dp_sync_update(priv->ipu);
|
|
|
+ ipu_srm_dp_update(priv->ipu, true);
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
@@ -207,7 +207,7 @@ int ipu_dp_setup_channel(struct ipu_dp *dp,
|
|
|
flow->out_cs, DP_COM_CONF_CSC_DEF_FG);
|
|
|
}
|
|
|
|
|
|
- ipu_srm_dp_sync_update(priv->ipu);
|
|
|
+ ipu_srm_dp_update(priv->ipu, true);
|
|
|
|
|
|
mutex_unlock(&priv->mutex);
|
|
|
|
|
@@ -247,7 +247,7 @@ int ipu_dp_enable_channel(struct ipu_dp *dp)
|
|
|
reg |= DP_COM_CONF_FG_EN;
|
|
|
writel(reg, flow->base + DP_COM_CONF);
|
|
|
|
|
|
- ipu_srm_dp_sync_update(priv->ipu);
|
|
|
+ ipu_srm_dp_update(priv->ipu, true);
|
|
|
|
|
|
mutex_unlock(&priv->mutex);
|
|
|
|
|
@@ -255,7 +255,7 @@ int ipu_dp_enable_channel(struct ipu_dp *dp)
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(ipu_dp_enable_channel);
|
|
|
|
|
|
-void ipu_dp_disable_channel(struct ipu_dp *dp)
|
|
|
+void ipu_dp_disable_channel(struct ipu_dp *dp, bool sync)
|
|
|
{
|
|
|
struct ipu_flow *flow = to_flow(dp);
|
|
|
struct ipu_dp_priv *priv = flow->priv;
|
|
@@ -275,7 +275,7 @@ void ipu_dp_disable_channel(struct ipu_dp *dp)
|
|
|
writel(reg, flow->base + DP_COM_CONF);
|
|
|
|
|
|
writel(0, flow->base + DP_FG_POS);
|
|
|
- ipu_srm_dp_sync_update(priv->ipu);
|
|
|
+ ipu_srm_dp_update(priv->ipu, sync);
|
|
|
|
|
|
if (ipu_idmac_channel_busy(priv->ipu, IPUV3_CHANNEL_MEM_BG_SYNC))
|
|
|
ipu_wait_interrupt(priv->ipu, IPU_IRQ_DP_SF_END, 50);
|