Home
last modified time | relevance | path

Searched refs:mchan (Results 1 – 9 of 9) sorted by relevance

/Linux-v5.4/drivers/dma/
Dimg-mdc-dma.c129 void (*enable_chan)(struct mdc_chan *mchan);
130 void (*disable_chan)(struct mdc_chan *mchan);
159 static inline u32 mdc_chan_readl(struct mdc_chan *mchan, u32 reg) in mdc_chan_readl() argument
161 return mdc_readl(mchan->mdma, mchan->chan_nr * 0x040 + reg); in mdc_chan_readl()
164 static inline void mdc_chan_writel(struct mdc_chan *mchan, u32 val, u32 reg) in mdc_chan_writel() argument
166 mdc_writel(mchan->mdma, val, mchan->chan_nr * 0x040 + reg); in mdc_chan_writel()
205 static void mdc_list_desc_config(struct mdc_chan *mchan, in mdc_list_desc_config() argument
210 struct mdc_dma *mdma = mchan->mdma; in mdc_list_desc_config()
217 (mchan->thread << MDC_READ_PORT_CONFIG_STHREAD_SHIFT) | in mdc_list_desc_config()
218 (mchan->thread << MDC_READ_PORT_CONFIG_RTHREAD_SHIFT) | in mdc_list_desc_config()
[all …]
Dmpc512x_dma.c241 struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(c); in dma_chan_to_mpc_dma() local
243 return container_of(mchan, struct mpc_dma, channels[c->chan_id]); in dma_chan_to_mpc_dma()
254 static void mpc_dma_execute(struct mpc_dma_chan *mchan) in mpc_dma_execute() argument
256 struct mpc_dma *mdma = dma_chan_to_mpc_dma(&mchan->chan); in mpc_dma_execute()
260 int cid = mchan->chan.chan_id; in mpc_dma_execute()
262 while (!list_empty(&mchan->queued)) { in mpc_dma_execute()
263 mdesc = list_first_entry(&mchan->queued, in mpc_dma_execute()
272 if (list_empty(&mchan->active)) in mpc_dma_execute()
273 list_move_tail(&mdesc->node, &mchan->active); in mpc_dma_execute()
276 list_move_tail(&mdesc->node, &mchan->active); in mpc_dma_execute()
[all …]
Dbcm-sba-raid.c148 struct mbox_chan *mchan; member
226 mbox_client_peek_data(sba->mchan); in sba_alloc_request()
368 ret = mbox_send_message(sba->mchan, &req->msg); in sba_send_mbox_request()
381 mbox_client_txdone(sba->mchan, ret); in sba_send_mbox_request()
558 mbox_client_peek_data(sba->mchan); in sba_tx_status()
1688 sba->mchan = mbox_request_channel(&sba->client, 0); in sba_probe()
1689 if (IS_ERR(sba->mchan)) { in sba_probe()
1690 ret = PTR_ERR(sba->mchan); in sba_probe()
1741 mbox_free_channel(sba->mchan); in sba_probe()
1755 mbox_free_channel(sba->mchan); in sba_remove()
/Linux-v5.4/drivers/dma/qcom/
Dhidma.c114 static void hidma_process_completed(struct hidma_chan *mchan) in hidma_process_completed() argument
116 struct dma_device *ddev = mchan->chan.device; in hidma_process_completed()
128 spin_lock_irqsave(&mchan->lock, irqflags); in hidma_process_completed()
129 list_splice_tail_init(&mchan->completed, &list); in hidma_process_completed()
130 spin_unlock_irqrestore(&mchan->lock, irqflags); in hidma_process_completed()
143 spin_lock_irqsave(&mchan->lock, irqflags); in hidma_process_completed()
145 mchan->last_success = last_cookie; in hidma_process_completed()
152 spin_unlock_irqrestore(&mchan->lock, irqflags); in hidma_process_completed()
158 spin_lock_irqsave(&mchan->lock, irqflags); in hidma_process_completed()
159 list_move(&mdesc->node, &mchan->free); in hidma_process_completed()
[all …]
Dhidma_dbg.c86 struct hidma_chan *mchan = s->private; in hidma_chan_show() local
88 struct hidma_dev *dmadev = mchan->dmadev; in hidma_chan_show()
91 seq_printf(s, "paused=%u\n", mchan->paused); in hidma_chan_show()
92 seq_printf(s, "dma_sig=%u\n", mchan->dma_sig); in hidma_chan_show()
94 list_for_each_entry(mdesc, &mchan->prepared, node) in hidma_chan_show()
95 hidma_ll_chstats(s, mchan->dmadev->lldev, mdesc->tre_ch); in hidma_chan_show()
98 list_for_each_entry(mdesc, &mchan->active, node) in hidma_chan_show()
99 hidma_ll_chstats(s, mchan->dmadev->lldev, mdesc->tre_ch); in hidma_chan_show()
102 list_for_each_entry(mdesc, &mchan->completed, node) in hidma_chan_show()
103 hidma_ll_chstats(s, mchan->dmadev->lldev, mdesc->tre_ch); in hidma_chan_show()
[all …]
/Linux-v5.4/drivers/mailbox/
Dzynqmp-ipi-mailbox.c151 struct zynqmp_ipi_mchan *mchan; in zynqmp_ipi_interrupt() local
162 mchan = &ipi_mbox->mchans[IPI_MB_CHNL_RX]; in zynqmp_ipi_interrupt()
167 if (mchan->is_opened) { in zynqmp_ipi_interrupt()
168 msg = mchan->rx_buf; in zynqmp_ipi_interrupt()
169 msg->len = mchan->req_buf_size; in zynqmp_ipi_interrupt()
170 memcpy_fromio(msg->data, mchan->req_buf, in zynqmp_ipi_interrupt()
191 struct zynqmp_ipi_mchan *mchan = chan->con_priv; in zynqmp_ipi_peek_data() local
205 if (mchan->chan_type == IPI_MB_CHNL_TX) { in zynqmp_ipi_peek_data()
231 struct zynqmp_ipi_mchan *mchan = chan->con_priv; in zynqmp_ipi_last_tx_done() local
241 if (mchan->chan_type == IPI_MB_CHNL_TX) { in zynqmp_ipi_last_tx_done()
[all …]
Dhi6220-mailbox.c82 struct hi6220_mbox_chan *mchan; member
111 struct hi6220_mbox_chan *mchan = chan->con_priv; in hi6220_mbox_last_tx_done() local
112 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_last_tx_done()
118 state = readl(mbox->base + MBOX_MODE_REG(mchan->slot)); in hi6220_mbox_last_tx_done()
124 struct hi6220_mbox_chan *mchan = chan->con_priv; in hi6220_mbox_send_data() local
125 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_send_data()
126 unsigned int slot = mchan->slot; in hi6220_mbox_send_data()
131 mchan->dir = MBOX_TX; in hi6220_mbox_send_data()
144 writel(BIT(mchan->dst_irq), DST_INT_RAW_REG(mbox->ipc)); in hi6220_mbox_send_data()
151 struct hi6220_mbox_chan *mchan; in hi6220_mbox_interrupt() local
[all …]
Dhi3660-mailbox.c77 struct hi3660_chan_info mchan[MBOX_CHAN_MAX]; member
90 struct hi3660_chan_info *mchan = &mbox->mchan[ch]; in hi3660_mbox_check_state() local
108 writel(BIT(mchan->ack_irq), base + MBOX_ICLR_REG); in hi3660_mbox_check_state()
138 struct hi3660_chan_info *mchan = &mbox->mchan[ch]; in hi3660_mbox_acquire_channel() local
145 writel(BIT(mchan->ack_irq), base + MBOX_SRC_REG); in hi3660_mbox_acquire_channel()
149 if (val & BIT(mchan->ack_irq)) in hi3660_mbox_acquire_channel()
179 struct hi3660_chan_info *mchan = &mbox->mchan[ch]; in hi3660_mbox_send_data() local
190 writel_relaxed(~BIT(mchan->dst_irq), base + MBOX_IMASK_REG); in hi3660_mbox_send_data()
193 writel_relaxed(BIT(mchan->dst_irq), base + MBOX_DST_REG); in hi3660_mbox_send_data()
203 writel(BIT(mchan->ack_irq), base + MBOX_SEND_REG); in hi3660_mbox_send_data()
[all …]
/Linux-v5.4/
DMAINTAINERS3466 M: Michael Chan <mchan@broadcom.com>