|
|
@@ -661,6 +661,15 @@ int ipu_module_disable(struct ipu_soc *ipu, u32 mask)
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(ipu_module_disable);
|
|
|
|
|
|
+int ipu_idmac_get_current_buffer(struct ipuv3_channel *channel)
|
|
|
+{
|
|
|
+ struct ipu_soc *ipu = channel->ipu;
|
|
|
+ unsigned int chno = channel->num;
|
|
|
+
|
|
|
+ return (ipu_cm_read(ipu, IPU_CHA_CUR_BUF(chno)) & idma_mask(chno)) ? 1 : 0;
|
|
|
+}
|
|
|
+EXPORT_SYMBOL_GPL(ipu_idmac_get_current_buffer);
|
|
|
+
|
|
|
void ipu_idmac_select_buffer(struct ipuv3_channel *channel, u32 buf_num)
|
|
|
{
|
|
|
struct ipu_soc *ipu = channel->ipu;
|