Lines Matching refs:mchan

83 	struct hi6220_mbox_chan *mchan;  member
112 struct hi6220_mbox_chan *mchan = chan->con_priv; in hi6220_mbox_last_tx_done() local
113 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_last_tx_done()
119 state = readl(mbox->base + MBOX_MODE_REG(mchan->slot)); in hi6220_mbox_last_tx_done()
125 struct hi6220_mbox_chan *mchan = chan->con_priv; in hi6220_mbox_send_data() local
126 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_send_data()
127 unsigned int slot = mchan->slot; in hi6220_mbox_send_data()
132 mchan->dir = MBOX_TX; in hi6220_mbox_send_data()
145 writel(BIT(mchan->dst_irq), DST_INT_RAW_REG(mbox->ipc)); in hi6220_mbox_send_data()
152 struct hi6220_mbox_chan *mchan; in hi6220_mbox_interrupt() local
175 mchan = chan->con_priv; in hi6220_mbox_interrupt()
176 if (mchan->dir == MBOX_TX) in hi6220_mbox_interrupt()
181 MBOX_DATA_REG(mchan->slot) + i * 4); in hi6220_mbox_interrupt()
187 writel(BIT(mchan->ack_irq), ACK_INT_CLR_REG(mbox->ipc)); in hi6220_mbox_interrupt()
188 mbox_set_state(mbox, mchan->slot, MBOX_STATE_IDLE); in hi6220_mbox_interrupt()
196 struct hi6220_mbox_chan *mchan = chan->con_priv; in hi6220_mbox_startup() local
197 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_startup()
199 mchan->dir = 0; in hi6220_mbox_startup()
202 writel(BIT(mchan->ack_irq), ACK_INT_ENA_REG(mbox->ipc)); in hi6220_mbox_startup()
208 struct hi6220_mbox_chan *mchan = chan->con_priv; in hi6220_mbox_shutdown() local
209 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_shutdown()
212 writel(BIT(mchan->ack_irq), ACK_INT_DIS_REG(mbox->ipc)); in hi6220_mbox_shutdown()
213 mbox->irq_map_chan[mchan->ack_irq] = NULL; in hi6220_mbox_shutdown()
227 struct hi6220_mbox_chan *mchan; in hi6220_mbox_xlate() local
249 mchan = chan->con_priv; in hi6220_mbox_xlate()
250 mchan->dst_irq = dst_irq; in hi6220_mbox_xlate()
251 mchan->ack_irq = ack_irq; in hi6220_mbox_xlate()
276 mbox->mchan = devm_kcalloc(dev, in hi6220_mbox_probe()
277 mbox->chan_num, sizeof(*mbox->mchan), GFP_KERNEL); in hi6220_mbox_probe()
278 if (!mbox->mchan) in hi6220_mbox_probe()
317 mbox->chan[i].con_priv = &mbox->mchan[i]; in hi6220_mbox_probe()
320 mbox->mchan[i].parent = mbox; in hi6220_mbox_probe()
321 mbox->mchan[i].slot = i; in hi6220_mbox_probe()