#include <power/regulator.h>
static int dwmci_wait_reset(struct dwmci_host *host, u32 value)
unsigned long timeout = 1000;
dwmci_writel(host, DWMCI_CTRL, value);
ctrl = dwmci_readl(host, DWMCI_CTRL);
if (!(ctrl & DWMCI_RESET_ALL))
static void dwmci_set_idma_desc(struct dwmci_idmac *idmac,
u32 desc0, u32 desc1, u32 desc2)
struct dwmci_idmac *desc = idmac;
desc->next_addr = (ulong)desc + sizeof(struct dwmci_idmac);
static void dwmci_prepare_data(struct dwmci_host *host,
struct dwmci_idmac *cur_idmac,
unsigned int i = 0, flags, cnt, blk_cnt;
ulong data_start, data_end;
dwmci_wait_reset(host, DWMCI_CTRL_FIFO_RESET);
dwmci_writel(host, DWMCI_IDSTS, 0xFFFFFFFF);
data_start = (ulong)cur_idmac;