Lines Matching full:doorbell

50  * @pchan: Physical channel within which this doorbell resides in
51 * @doorbell: doorbell number pertaining to this channel
56 unsigned int doorbell; member
61 unsigned int doorbell) in mhu_db_mbox_to_channel() argument
69 chan_info->doorbell == doorbell) in mhu_db_mbox_to_channel()
81 writel_relaxed(BIT(chan_info->doorbell), base + INTR_CLR_OFS); in mhu_db_mbox_clear_irq()
98 unsigned int doorbell; in mhu_db_mbox_irq_to_channel() local
109 for (doorbell = 0; bits; doorbell++) { in mhu_db_mbox_irq_to_channel()
110 if (!test_and_clear_bit(doorbell, &bits)) in mhu_db_mbox_irq_to_channel()
113 chan = mhu_db_mbox_to_channel(mbox, pchan, doorbell); in mhu_db_mbox_irq_to_channel()
117 "Channel not registered: pchan: %d doorbell: %d\n", in mhu_db_mbox_irq_to_channel()
118 pchan, doorbell); in mhu_db_mbox_irq_to_channel()
143 if (readl_relaxed(base + INTR_STAT_OFS) & BIT(chan_info->doorbell)) in mhu_db_last_tx_done()
155 writel_relaxed(BIT(chan_info->doorbell), base + INTR_SET_OFS); in mhu_db_send_data()
194 unsigned int doorbell = spec->args[1]; in mhu_db_mbox_xlate() local
198 if (pchan >= MHU_CHANS || doorbell >= MHU_NUM_DOORBELLS) { in mhu_db_mbox_xlate()
200 "Invalid channel requested pchan: %d doorbell: %d\n", in mhu_db_mbox_xlate()
201 pchan, doorbell); in mhu_db_mbox_xlate()
206 chan = mhu_db_mbox_to_channel(mbox, pchan, doorbell); in mhu_db_mbox_xlate()
208 dev_err(mbox->dev, "Channel in use: pchan: %d doorbell: %d\n", in mhu_db_mbox_xlate()
209 pchan, doorbell); in mhu_db_mbox_xlate()
231 chan_info->doorbell = doorbell; in mhu_db_mbox_xlate()
235 dev_dbg(mbox->dev, "mbox: created channel phys: %d doorbell: %d\n", in mhu_db_mbox_xlate()
236 pchan, doorbell); in mhu_db_mbox_xlate()
260 if (!of_device_is_compatible(np, "arm,mhu-doorbell")) in mhu_db_probe()
328 dev_info(dev, "ARM MHU Doorbell mailbox registered\n"); in mhu_db_probe()
343 .name = "mhu-doorbell",
351 MODULE_DESCRIPTION("ARM MHU Doorbell Driver");