Lines Matching refs:phy
106 struct zx_dma_phy *phy; member
125 struct zx_dma_phy *phy; member
141 static void zx_dma_terminate_chan(struct zx_dma_phy *phy, struct zx_dma_dev *d) in zx_dma_terminate_chan() argument
145 val = readl_relaxed(phy->base + REG_ZX_CTRL); in zx_dma_terminate_chan()
148 writel_relaxed(val, phy->base + REG_ZX_CTRL); in zx_dma_terminate_chan()
150 val = 0x1 << phy->idx; in zx_dma_terminate_chan()
157 static void zx_dma_set_desc(struct zx_dma_phy *phy, struct zx_desc_hw *hw) in zx_dma_set_desc() argument
159 writel_relaxed(hw->saddr, phy->base + REG_ZX_SRC_ADDR); in zx_dma_set_desc()
160 writel_relaxed(hw->daddr, phy->base + REG_ZX_DST_ADDR); in zx_dma_set_desc()
161 writel_relaxed(hw->src_x, phy->base + REG_ZX_TX_X_COUNT); in zx_dma_set_desc()
162 writel_relaxed(0, phy->base + REG_ZX_TX_ZY_COUNT); in zx_dma_set_desc()
163 writel_relaxed(0, phy->base + REG_ZX_SRC_ZY_STEP); in zx_dma_set_desc()
164 writel_relaxed(0, phy->base + REG_ZX_DST_ZY_STEP); in zx_dma_set_desc()
165 writel_relaxed(hw->lli, phy->base + REG_ZX_LLI_ADDR); in zx_dma_set_desc()
166 writel_relaxed(hw->ctr, phy->base + REG_ZX_CTRL); in zx_dma_set_desc()
169 static u32 zx_dma_get_curr_lli(struct zx_dma_phy *phy) in zx_dma_get_curr_lli() argument
171 return readl_relaxed(phy->base + REG_ZX_LLI_ADDR); in zx_dma_get_curr_lli()
195 if (!c->phy) in zx_dma_start_txd()
198 if (BIT(c->phy->idx) & zx_dma_get_chan_stat(d)) in zx_dma_start_txd()
209 c->phy->ds_run = ds; in zx_dma_start_txd()
210 c->phy->ds_done = NULL; in zx_dma_start_txd()
212 zx_dma_set_desc(c->phy, ds->desc_hw); in zx_dma_start_txd()
215 c->phy->ds_done = NULL; in zx_dma_start_txd()
216 c->phy->ds_run = NULL; in zx_dma_start_txd()
231 p = c->phy; in zx_dma_task()
236 c->phy = NULL; in zx_dma_task()
247 p = &d->phy[c->id]; in zx_dma_task()
254 c->phy = p; in zx_dma_task()
263 p = &d->phy[pch]; in zx_dma_task()
288 p = &d->phy[i]; in zx_dma_int_handler()
350 p = c->phy; in zx_dma_tx_status()
392 if (!c->phy && list_empty(&c->node)) { in zx_dma_issue_pending()
666 struct zx_dma_phy *p = c->phy; in zx_dma_terminate_all()
683 c->phy = NULL; in zx_dma_terminate_all()
699 val = readl_relaxed(c->phy->base + REG_ZX_CTRL); in zx_dma_transfer_pause()
701 writel_relaxed(val, c->phy->base + REG_ZX_CTRL); in zx_dma_transfer_pause()
711 val = readl_relaxed(c->phy->base + REG_ZX_CTRL); in zx_dma_transfer_resume()
713 writel_relaxed(val, c->phy->base + REG_ZX_CTRL); in zx_dma_transfer_resume()
801 d->phy = devm_kzalloc(&op->dev, in zx_dma_probe()
803 if (!d->phy) in zx_dma_probe()
807 struct zx_dma_phy *p = &d->phy[i]; in zx_dma_probe()