Lines Matching refs:chan

86 static inline bool sti_mbox_channel_is_enabled(struct mbox_chan *chan)
88 struct sti_channel *chan_info = chan->con_priv;
119 static void sti_mbox_enable_channel(struct mbox_chan *chan)
121 struct sti_channel *chan_info = chan->con_priv;
134 static void sti_mbox_disable_channel(struct mbox_chan *chan)
136 struct sti_channel *chan_info = chan->con_priv;
149 static void sti_mbox_clear_irq(struct mbox_chan *chan)
151 struct sti_channel *chan_info = chan->con_priv;
164 struct mbox_chan *chan = NULL;
179 chan = sti_mbox_to_channel(mbox, instance, channel);
180 if (chan) {
188 return chan;
195 struct mbox_chan *chan;
200 chan = sti_mbox_irq_to_channel(mdev, instance);
201 if (!chan)
204 mbox_chan_received_data(chan, NULL);
205 sti_mbox_clear_irq(chan);
206 sti_mbox_enable_channel(chan);
218 struct mbox_chan *chan;
223 chan = sti_mbox_irq_to_channel(mdev, instance);
224 if (!chan)
226 chan_info = chan->con_priv;
228 if (!sti_mbox_channel_is_enabled(chan)) {
241 sti_mbox_disable_channel(chan);
251 static bool sti_mbox_tx_is_ready(struct mbox_chan *chan)
253 struct sti_channel *chan_info = chan->con_priv;
260 dev_dbg(mdev->dev, "Mbox: %s: inst: %d, chan: %d disabled\n",
266 dev_dbg(mdev->dev, "Mbox: %s: inst: %d, chan: %d not ready\n",
274 static int sti_mbox_send_data(struct mbox_chan *chan, void *data)
276 struct sti_channel *chan_info = chan->con_priv;
292 static int sti_mbox_startup_chan(struct mbox_chan *chan)
294 sti_mbox_clear_irq(chan);
295 sti_mbox_enable_channel(chan);
300 static void sti_mbox_shutdown_chan(struct mbox_chan *chan)
302 struct sti_channel *chan_info = chan->con_priv;
307 if (chan == &mbox->chans[i])
316 sti_mbox_disable_channel(chan);
317 sti_mbox_clear_irq(chan);
318 chan->con_priv = NULL;
327 struct mbox_chan *chan = NULL;
357 if (!chan && !chan_info)
358 chan = &mbox->chans[i];
361 if (!chan) {
374 chan->con_priv = chan_info;
380 return chan;