/* Reset RDMA */
        MM_REG_WRITE_MASK(cmd, subsys_id, base, MDP_RDMA_RESET, BIT(0), BIT(0));
-       MM_REG_POLL(cmd, subsys_id, base, MDP_RDMA_MON_STA_1, BIT(8), BIT(8));
+       MM_REG_POLL_MASK(cmd, subsys_id, base, MDP_RDMA_MON_STA_1, BIT(8), BIT(8));
        MM_REG_WRITE_MASK(cmd, subsys_id, base, MDP_RDMA_RESET, 0x0, BIT(0));
        return 0;
 }
 
        /* Reset WROT */
        MM_REG_WRITE_MASK(cmd, subsys_id, base, VIDO_SOFT_RST, BIT(0), BIT(0));
-       MM_REG_POLL(cmd, subsys_id, base, VIDO_SOFT_RST_STAT, BIT(0), BIT(0));
+       MM_REG_POLL_MASK(cmd, subsys_id, base, VIDO_SOFT_RST_STAT, BIT(0), BIT(0));
 
        /* Reset setting */
        if (CFG_CHECK(MT8195, p_id))
                MM_REG_WRITE(cmd, subsys_id, base, VIDO_CTRL, 0x0);
 
        MM_REG_WRITE_MASK(cmd, subsys_id, base, VIDO_SOFT_RST, 0x0, BIT(0));
-       MM_REG_POLL(cmd, subsys_id, base, VIDO_SOFT_RST_STAT, 0x0, BIT(0));
+       MM_REG_POLL_MASK(cmd, subsys_id, base, VIDO_SOFT_RST_STAT, 0x0, BIT(0));
        return 0;
 }
 
 
        /* Reset WDMA */
        MM_REG_WRITE_MASK(cmd, subsys_id, base, WDMA_RST, BIT(0), BIT(0));
-       MM_REG_POLL(cmd, subsys_id, base, WDMA_FLOW_CTRL_DBG, BIT(0), BIT(0));
+       MM_REG_POLL_MASK(cmd, subsys_id, base, WDMA_FLOW_CTRL_DBG, BIT(0), BIT(0));
        MM_REG_WRITE_MASK(cmd, subsys_id, base, WDMA_RST, 0x0, BIT(0));
        return 0;
 }
 
 do {                                                           \
        typeof(_mask) (_m) = (_mask);                           \
        cmdq_pkt_poll_mask(&((cmd)->pkt), id,                   \
-               (base) + (ofst), (val), (_m));                  \
+               (base) + (ofst), (val),                         \
+               (((_m) & (ofst##_MASK)) == (ofst##_MASK)) ?     \
+                       (0xffffffff) : (_m));                   \
 } while (0)
 
-#define MM_REG_POLL(cmd, id, base, ofst, val, mask)            \
-do {                                                           \
-       typeof(mask) (m) = (mask);                              \
-       MM_REG_POLL_MASK((cmd), id, base, ofst, val,            \
-               (((m) & (ofst##_MASK)) == (ofst##_MASK)) ?      \
-                       (0xffffffff) : (m));                    \
-} while (0)
+#define MM_REG_POLL(cmd, id, base, ofst, val)                  \
+       cmdq_pkt_poll(&((cmd)->pkt), id, (base) + (ofst), (val))
 
 enum mtk_mdp_comp_id {
        MDP_COMP_NONE = -1,     /* Invalid engine */