Lines Matching refs:chan
75 static void mhu_db_mbox_clear_irq(struct mbox_chan *chan)
77 struct mhu_db_channel *chan_info = chan->con_priv;
98 struct mbox_chan *chan = NULL;
112 chan = mhu_db_mbox_to_channel(mbox, pchan, doorbell);
113 if (chan)
120 return chan;
125 struct mbox_chan *chan;
129 while (NULL != (chan = mhu_db_mbox_irq_to_channel(mhu, pchan))) {
130 mbox_chan_received_data(chan, NULL);
131 mhu_db_mbox_clear_irq(chan);
137 static bool mhu_db_last_tx_done(struct mbox_chan *chan)
139 struct mhu_db_channel *chan_info = chan->con_priv;
148 static int mhu_db_send_data(struct mbox_chan *chan, void *data)
150 struct mhu_db_channel *chan_info = chan->con_priv;
159 static int mhu_db_startup(struct mbox_chan *chan)
161 mhu_db_mbox_clear_irq(chan);
165 static void mhu_db_shutdown(struct mbox_chan *chan)
167 struct mhu_db_channel *chan_info = chan->con_priv;
172 if (chan == &mbox->chans[i])
181 mhu_db_mbox_clear_irq(chan);
182 devm_kfree(mbox->dev, chan->con_priv);
183 chan->con_priv = NULL;
191 struct mbox_chan *chan;
205 chan = mhu_db_mbox_to_channel(mbox, pchan, doorbell);
206 if (chan) {
222 chan = &mbox->chans[i];
232 chan->con_priv = chan_info;
237 return chan;