Lines Matching refs:mb

216 		struct tegra_hsp_mailbox *mb = &hsp->mailboxes[bit];  in tegra_hsp_shared_irq()  local
218 if (mb->producer) { in tegra_hsp_shared_irq()
228 hsp->mask &= ~BIT(HSP_INT_EMPTY_SHIFT + mb->index); in tegra_hsp_shared_irq()
234 mbox_chan_txdone(mb->channel.chan, 0); in tegra_hsp_shared_irq()
242 struct tegra_hsp_mailbox *mb = &hsp->mailboxes[bit]; in tegra_hsp_shared_irq() local
244 if (!mb->producer) { in tegra_hsp_shared_irq()
245 value = tegra_hsp_channel_readl(&mb->channel, in tegra_hsp_shared_irq()
249 mbox_chan_received_data(mb->channel.chan, msg); in tegra_hsp_shared_irq()
260 tegra_hsp_channel_writel(&mb->channel, 0x0, in tegra_hsp_shared_irq()
368 struct tegra_hsp_mailbox *mb = chan->con_priv; in tegra_hsp_mailbox_send_data() local
369 struct tegra_hsp *hsp = mb->channel.hsp; in tegra_hsp_mailbox_send_data()
373 if (WARN_ON(!mb->producer)) in tegra_hsp_mailbox_send_data()
380 tegra_hsp_channel_writel(&mb->channel, value, HSP_SM_SHRD_MBOX); in tegra_hsp_mailbox_send_data()
385 hsp->mask |= BIT(HSP_INT_EMPTY_SHIFT + mb->index); in tegra_hsp_mailbox_send_data()
396 struct tegra_hsp_mailbox *mb = chan->con_priv; in tegra_hsp_mailbox_flush() local
397 struct tegra_hsp_channel *ch = &mb->channel; in tegra_hsp_mailbox_flush()
417 struct tegra_hsp_mailbox *mb = chan->con_priv; in tegra_hsp_mailbox_startup() local
418 struct tegra_hsp_channel *ch = &mb->channel; in tegra_hsp_mailbox_startup()
419 struct tegra_hsp *hsp = mb->channel.hsp; in tegra_hsp_mailbox_startup()
437 if (mb->producer) in tegra_hsp_mailbox_startup()
438 hsp->mask &= ~BIT(HSP_INT_EMPTY_SHIFT + mb->index); in tegra_hsp_mailbox_startup()
440 hsp->mask |= BIT(HSP_INT_FULL_SHIFT + mb->index); in tegra_hsp_mailbox_startup()
447 if (mb->producer) in tegra_hsp_mailbox_startup()
460 struct tegra_hsp_mailbox *mb = chan->con_priv; in tegra_hsp_mailbox_shutdown() local
461 struct tegra_hsp_channel *ch = &mb->channel; in tegra_hsp_mailbox_shutdown()
462 struct tegra_hsp *hsp = mb->channel.hsp; in tegra_hsp_mailbox_shutdown()
466 if (mb->producer) in tegra_hsp_mailbox_shutdown()
476 if (mb->producer) in tegra_hsp_mailbox_shutdown()
477 hsp->mask &= ~BIT(HSP_INT_EMPTY_SHIFT + mb->index); in tegra_hsp_mailbox_shutdown()
479 hsp->mask &= ~BIT(HSP_INT_FULL_SHIFT + mb->index); in tegra_hsp_mailbox_shutdown()
537 struct tegra_hsp_mailbox *mb; in tegra_hsp_sm_xlate() local
545 mb = &hsp->mailboxes[index]; in tegra_hsp_sm_xlate()
548 mb->producer = false; in tegra_hsp_sm_xlate()
550 mb->producer = true; in tegra_hsp_sm_xlate()
552 return mb->channel.chan; in tegra_hsp_sm_xlate()
582 struct tegra_hsp_mailbox *mb = &hsp->mailboxes[i]; in tegra_hsp_add_mailboxes() local
584 mb->index = i; in tegra_hsp_add_mailboxes()
586 mb->channel.hsp = hsp; in tegra_hsp_add_mailboxes()
587 mb->channel.regs = hsp->regs + SZ_64K + i * SZ_32K; in tegra_hsp_add_mailboxes()
588 mb->channel.chan = &hsp->mbox_sm.chans[i]; in tegra_hsp_add_mailboxes()
589 mb->channel.chan->con_priv = mb; in tegra_hsp_add_mailboxes()
787 struct tegra_hsp_mailbox *mb = &hsp->mailboxes[i]; in tegra_hsp_resume() local
789 if (mb->channel.chan->cl) in tegra_hsp_resume()
790 tegra_hsp_mailbox_startup(mb->channel.chan); in tegra_hsp_resume()