/Linux-v4.19/drivers/net/ethernet/cavium/liquidio/ |
D | octeon_mailbox.c | 36 int octeon_mbox_read(struct octeon_mbox *mbox) in octeon_mbox_read() argument 41 spin_lock(&mbox->lock); in octeon_mbox_read() 43 msg.u64 = readq(mbox->mbox_read_reg); in octeon_mbox_read() 46 spin_unlock(&mbox->lock); in octeon_mbox_read() 50 if (mbox->state & OCTEON_MBOX_STATE_REQUEST_RECEIVING) { in octeon_mbox_read() 51 mbox->mbox_req.data[mbox->mbox_req.recv_len - 1] = msg.u64; in octeon_mbox_read() 52 mbox->mbox_req.recv_len++; in octeon_mbox_read() 54 if (mbox->state & OCTEON_MBOX_STATE_RESPONSE_RECEIVING) { in octeon_mbox_read() 55 mbox->mbox_resp.data[mbox->mbox_resp.recv_len - 1] = in octeon_mbox_read() 57 mbox->mbox_resp.recv_len++; in octeon_mbox_read() [all …]
|
/Linux-v4.19/drivers/mailbox/ |
D | mailbox-altera.c | 71 static inline int altera_mbox_full(struct altera_mbox *mbox) in altera_mbox_full() argument 75 status = readl_relaxed(mbox->mbox_base + MAILBOX_STS_REG); in altera_mbox_full() 79 static inline int altera_mbox_pending(struct altera_mbox *mbox) in altera_mbox_pending() argument 83 status = readl_relaxed(mbox->mbox_base + MAILBOX_STS_REG); in altera_mbox_pending() 87 static void altera_mbox_rx_intmask(struct altera_mbox *mbox, bool enable) in altera_mbox_rx_intmask() argument 91 mask = readl_relaxed(mbox->mbox_base + MAILBOX_INTMASK_REG); in altera_mbox_rx_intmask() 96 writel_relaxed(mask, mbox->mbox_base + MAILBOX_INTMASK_REG); in altera_mbox_rx_intmask() 99 static void altera_mbox_tx_intmask(struct altera_mbox *mbox, bool enable) in altera_mbox_tx_intmask() argument 103 mask = readl_relaxed(mbox->mbox_base + MAILBOX_INTMASK_REG); in altera_mbox_tx_intmask() 108 writel_relaxed(mask, mbox->mbox_base + MAILBOX_INTMASK_REG); in altera_mbox_tx_intmask() [all …]
|
D | hi6220-mailbox.c | 98 static void mbox_set_state(struct hi6220_mbox *mbox, in mbox_set_state() argument 103 status = readl(mbox->base + MBOX_MODE_REG(slot)); in mbox_set_state() 105 writel(status, mbox->base + MBOX_MODE_REG(slot)); in mbox_set_state() 108 static void mbox_set_mode(struct hi6220_mbox *mbox, in mbox_set_mode() argument 113 mode = readl(mbox->base + MBOX_MODE_REG(slot)); in mbox_set_mode() 115 writel(mode, mbox->base + MBOX_MODE_REG(slot)); in mbox_set_mode() 121 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_last_tx_done() local 125 BUG_ON(mbox->tx_irq_mode); in hi6220_mbox_last_tx_done() 127 state = readl(mbox->base + MBOX_MODE_REG(mchan->slot)); in hi6220_mbox_last_tx_done() 134 struct hi6220_mbox *mbox = mchan->parent; in hi6220_mbox_send_data() local [all …]
|
D | bcm2835-mailbox.c | 69 return container_of(link->mbox, struct bcm2835_mbox, controller); in bcm2835_link_mbox() 74 struct bcm2835_mbox *mbox = dev_id; in bcm2835_mbox_irq() local 75 struct device *dev = mbox->controller.dev; in bcm2835_mbox_irq() 76 struct mbox_chan *link = &mbox->controller.chans[0]; in bcm2835_mbox_irq() 78 while (!(readl(mbox->regs + MAIL0_STA) & ARM_MS_EMPTY)) { in bcm2835_mbox_irq() 79 u32 msg = readl(mbox->regs + MAIL0_RD); in bcm2835_mbox_irq() 88 struct bcm2835_mbox *mbox = bcm2835_link_mbox(link); in bcm2835_send_data() local 91 spin_lock(&mbox->lock); in bcm2835_send_data() 92 writel(msg, mbox->regs + MAIL1_WRT); in bcm2835_send_data() 93 dev_dbg(mbox->controller.dev, "Request 0x%08X\n", msg); in bcm2835_send_data() [all …]
|
D | omap-mailbox.c | 68 struct omap_mbox *mbox; member 144 static mbox_msg_t mbox_fifo_read(struct omap_mbox *mbox) in mbox_fifo_read() argument 146 struct omap_mbox_fifo *fifo = &mbox->rx_fifo; in mbox_fifo_read() 148 return (mbox_msg_t)mbox_read_reg(mbox->parent, fifo->msg); in mbox_fifo_read() 151 static void mbox_fifo_write(struct omap_mbox *mbox, mbox_msg_t msg) in mbox_fifo_write() argument 153 struct omap_mbox_fifo *fifo = &mbox->tx_fifo; in mbox_fifo_write() 155 mbox_write_reg(mbox->parent, msg, fifo->msg); in mbox_fifo_write() 158 static int mbox_fifo_empty(struct omap_mbox *mbox) in mbox_fifo_empty() argument 160 struct omap_mbox_fifo *fifo = &mbox->rx_fifo; in mbox_fifo_empty() 162 return (mbox_read_reg(mbox->parent, fifo->msg_stat) == 0); in mbox_fifo_empty() [all …]
|
D | hi3660-mailbox.c | 24 #define MBOX_BASE(mbox, ch) ((mbox)->base + ((ch) * 0x40)) argument 80 static struct hi3660_mbox *to_hi3660_mbox(struct mbox_controller *mbox) in to_hi3660_mbox() argument 82 return container_of(mbox, struct hi3660_mbox, controller); in to_hi3660_mbox() 88 struct hi3660_mbox *mbox = to_hi3660_mbox(chan->mbox); in hi3660_mbox_check_state() local 89 struct hi3660_chan_info *mchan = &mbox->mchan[ch]; in hi3660_mbox_check_state() 90 void __iomem *base = MBOX_BASE(mbox, ch); in hi3660_mbox_check_state() 102 dev_err(mbox->dev, "%s: timeout for receiving ack\n", __func__); in hi3660_mbox_check_state() 114 struct hi3660_mbox *mbox = to_hi3660_mbox(chan->mbox); in hi3660_mbox_unlock() local 118 writel(MBOX_IPC_UNLOCK, mbox->base + MBOX_IPC_LOCK_REG); in hi3660_mbox_unlock() 120 val = readl(mbox->base + MBOX_IPC_LOCK_REG); in hi3660_mbox_unlock() [all …]
|
D | mailbox.c | 80 err = chan->mbox->ops->send_data(chan, data); in msg_submit() 90 hrtimer_start(&chan->mbox->poll_hrt, 0, HRTIMER_MODE_REL); in msg_submit() 119 struct mbox_controller *mbox = in txdone_hrtimer() local 124 for (i = 0; i < mbox->num_chans; i++) { in txdone_hrtimer() 125 struct mbox_chan *chan = &mbox->chans[i]; in txdone_hrtimer() 128 txdone = chan->mbox->ops->last_tx_done(chan); in txdone_hrtimer() 137 hrtimer_forward_now(hrtimer, ms_to_ktime(mbox->txpoll_period)); in txdone_hrtimer() 174 dev_err(chan->mbox->dev, in mbox_chan_txdone() 195 dev_err(chan->mbox->dev, "Client can't run the TX ticker\n"); in mbox_client_txdone() 220 if (chan->mbox->ops->peek_data) in mbox_client_peek_data() [all …]
|
D | mailbox-sti.c | 59 struct mbox_controller *mbox; member 101 struct mbox_chan *sti_mbox_to_channel(struct mbox_controller *mbox, in sti_mbox_to_channel() argument 108 for (i = 0; i < mbox->num_chans; i++) { in sti_mbox_to_channel() 109 chan_info = mbox->chans[i].con_priv; in sti_mbox_to_channel() 113 return &mbox->chans[i]; in sti_mbox_to_channel() 116 dev_err(mbox->dev, in sti_mbox_to_channel() 167 struct mbox_controller *mbox = mdev->mbox; in sti_mbox_irq_to_channel() local 183 chan = sti_mbox_to_channel(mbox, instance, channel); in sti_mbox_irq_to_channel() 185 dev_dbg(mbox->dev, in sti_mbox_irq_to_channel() 307 struct mbox_controller *mbox = chan_info->mdev->mbox; in sti_mbox_shutdown_chan() local [all …]
|
D | bcm-flexrm-mailbox.c | 269 struct flexrm_mbox *mbox; member 931 static void flexrm_write_config_in_seqfile(struct flexrm_mbox *mbox, in flexrm_write_config_in_seqfile() argument 942 for (i = 0; i < mbox->num_rings; i++) { in flexrm_write_config_in_seqfile() 943 ring = &mbox->rings[i]; in flexrm_write_config_in_seqfile() 959 static void flexrm_write_stats_in_seqfile(struct flexrm_mbox *mbox, in flexrm_write_stats_in_seqfile() argument 970 for (i = 0; i < mbox->num_rings; i++) { in flexrm_write_stats_in_seqfile() 971 ring = &mbox->rings[i]; in flexrm_write_stats_in_seqfile() 1013 ret = flexrm_dma_map(ring->mbox->dev, msg); in flexrm_new_request() 1076 flexrm_dma_unmap(ring->mbox->dev, msg); in flexrm_new_request() 1093 struct mbox_chan *chan = &ring->mbox->controller.chans[ring->num]; in flexrm_process_completions() [all …]
|
D | rockchip-mailbox.c | 50 struct mbox_controller mbox; member 62 struct rockchip_mbox *mb = dev_get_drvdata(chan->mbox->dev); in rockchip_mbox_send_data() 70 dev_err(mb->mbox.dev, "Transmit size over buf size(%d)\n", in rockchip_mbox_send_data() 75 dev_dbg(mb->mbox.dev, "Chan[%d]: A2B message, cmd 0x%08x\n", in rockchip_mbox_send_data() 89 struct rockchip_mbox *mb = dev_get_drvdata(chan->mbox->dev); in rockchip_mbox_startup() 92 writel_relaxed((1 << mb->mbox.num_chans) - 1, in rockchip_mbox_startup() 100 struct rockchip_mbox *mb = dev_get_drvdata(chan->mbox->dev); in rockchip_mbox_shutdown() 121 for (idx = 0; idx < mb->mbox.num_chans; idx++) { in rockchip_mbox_irq() 139 for (idx = 0; idx < mb->mbox.num_chans; idx++) { in rockchip_mbox_isr() 145 dev_err(mb->mbox.dev, in rockchip_mbox_isr() [all …]
|
D | imx-mailbox.c | 60 struct mbox_controller mbox; member 70 static struct imx_mu_priv *to_imx_mu_priv(struct mbox_controller *mbox) in to_imx_mu_priv() argument 72 return container_of(mbox, struct imx_mu_priv, mbox); in to_imx_mu_priv() 110 struct imx_mu_priv *priv = to_imx_mu_priv(chan->mbox); in imx_mu_isr() 156 struct imx_mu_priv *priv = to_imx_mu_priv(chan->mbox); in imx_mu_send_data() 179 struct imx_mu_priv *priv = to_imx_mu_priv(chan->mbox); in imx_mu_startup() 214 struct imx_mu_priv *priv = to_imx_mu_priv(chan->mbox); in imx_mu_shutdown() 232 static struct mbox_chan * imx_mu_xlate(struct mbox_controller *mbox, in imx_mu_xlate() argument 238 dev_err(mbox->dev, "Invalid argument count %d\n", sp->args_count); in imx_mu_xlate() 246 if (chan >= mbox->num_chans) { in imx_mu_xlate() [all …]
|
D | tegra-hsp.c | 70 struct mbox_controller mbox; member 84 to_tegra_hsp(struct mbox_controller *mbox) in to_tegra_hsp() argument 86 return container_of(mbox, struct tegra_hsp, mbox); in to_tegra_hsp() 161 for_each_set_bit(master, &value, hsp->mbox.num_chans) { in tegra_hsp_doorbell_irq() 238 if (db->master >= hsp->mbox.num_chans) { in tegra_hsp_doorbell_startup() 239 dev_err(hsp->mbox.dev, in tegra_hsp_doorbell_startup() 290 static struct mbox_chan *of_tegra_hsp_xlate(struct mbox_controller *mbox, in of_tegra_hsp_xlate() argument 294 struct tegra_hsp *hsp = to_tegra_hsp(mbox); in of_tegra_hsp_xlate() 319 for (i = 0; i < hsp->mbox.num_chans; i++) { in of_tegra_hsp_xlate() 320 chan = &hsp->mbox.chans[i]; in of_tegra_hsp_xlate() [all …]
|
D | mtk-cmdq-mailbox.c | 70 struct mbox_controller mbox; member 91 dev_err(cmdq->mbox.dev, "suspend GCE thread 0x%x failed\n", in cmdq_thread_suspend() 119 dev_err(cmdq->mbox.dev, "reset GCE thread 0x%x failed\n", in cmdq_thread_reset() 142 struct device *dev = task->cmdq->mbox.dev; in cmdq_task_insert_into_thread() 171 struct device *dev = task->cmdq->mbox.dev; in cmdq_task_remove_wfe() 193 struct device *dev = thread->chan->mbox->dev; in cmdq_thread_wait_end() 219 dev_err(task->cmdq->mbox.dev, "task 0x%p error\n", task); in cmdq_task_handle_error() 340 mbox_controller_unregister(&cmdq->mbox); in cmdq_remove() 343 if (cmdq->mbox.chans) in cmdq_remove() 344 devm_kfree(&pdev->dev, cmdq->mbox.chans); in cmdq_remove() [all …]
|
D | arm_mhu.c | 48 struct mbox_controller mbox; member 98 dev_err(chan->mbox->dev, in mhu_startup() 145 mhu->mbox.dev = dev; in mhu_probe() 146 mhu->mbox.chans = &mhu->chan[0]; in mhu_probe() 147 mhu->mbox.num_chans = MHU_CHANS; in mhu_probe() 148 mhu->mbox.ops = &mhu_ops; in mhu_probe() 149 mhu->mbox.txdone_irq = false; in mhu_probe() 150 mhu->mbox.txdone_poll = true; in mhu_probe() 151 mhu->mbox.txpoll_period = 1; in mhu_probe() 155 err = mbox_controller_register(&mhu->mbox); in mhu_probe() [all …]
|
/Linux-v4.19/drivers/net/wireless/ti/wl18xx/ |
D | event.c | 132 struct wl18xx_event_mailbox *mbox = wl->mbox; in wl18xx_process_mailbox_events() local 135 vector = le32_to_cpu(mbox->events_vector); in wl18xx_process_mailbox_events() 140 mbox->number_of_scan_results); in wl18xx_process_mailbox_events() 148 mbox->time_sync_tsf_high_msb, in wl18xx_process_mailbox_events() 149 mbox->time_sync_tsf_high_lsb, in wl18xx_process_mailbox_events() 150 mbox->time_sync_tsf_low_msb, in wl18xx_process_mailbox_events() 151 mbox->time_sync_tsf_low_lsb); in wl18xx_process_mailbox_events() 155 mbox->radar_channel, in wl18xx_process_mailbox_events() 156 wl18xx_radar_type_decode(mbox->radar_type)); in wl18xx_process_mailbox_events() 165 mbox->number_of_sched_scan_results); in wl18xx_process_mailbox_events() [all …]
|
/Linux-v4.19/drivers/net/wireless/ti/wl12xx/ |
D | event.c | 50 struct wl12xx_event_mailbox *mbox = wl->mbox; in wl12xx_process_mailbox_events() local 54 vector = le32_to_cpu(mbox->events_vector); in wl12xx_process_mailbox_events() 55 vector &= ~(le32_to_cpu(mbox->events_mask)); in wl12xx_process_mailbox_events() 61 mbox->scheduled_scan_status); in wl12xx_process_mailbox_events() 70 mbox->scheduled_scan_status); in wl12xx_process_mailbox_events() 77 mbox->scheduled_scan_status); in wl12xx_process_mailbox_events() 80 mbox->soft_gemini_sense_info); in wl12xx_process_mailbox_events() 86 wlcore_event_rssi_trigger(wl, mbox->rssi_snr_trigger_metric); in wl12xx_process_mailbox_events() 90 BIT(mbox->role_id), in wl12xx_process_mailbox_events() 91 mbox->rx_ba_allowed); in wl12xx_process_mailbox_events() [all …]
|
/Linux-v4.19/drivers/rapidio/devices/ |
D | tsi721.c | 627 int mbox; in tsi721_omsg_msix() local 629 mbox = (irq - priv->msix[TSI721_VECT_OMB0_DONE].vector) % RIO_MAX_MBOX; in tsi721_omsg_msix() 630 tsi721_omsg_handler(priv, mbox); in tsi721_omsg_msix() 644 int mbox; in tsi721_imsg_msix() local 646 mbox = (irq - priv->msix[TSI721_VECT_IMB0_RCV].vector) % RIO_MAX_MBOX; in tsi721_imsg_msix() 647 tsi721_imsg_handler(priv, mbox + 4); in tsi721_imsg_msix() 1680 tsi721_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox, in tsi721_add_outb_message() argument 1688 if (!priv->omsg_init[mbox] || in tsi721_add_outb_message() 1692 spin_lock_irqsave(&priv->omsg_ring[mbox].lock, flags); in tsi721_add_outb_message() 1694 tx_slot = priv->omsg_ring[mbox].tx_slot; in tsi721_add_outb_message() [all …]
|
/Linux-v4.19/drivers/net/ethernet/mellanox/mlxsw/ |
D | pci.c | 283 static int mlxsw_pci_sdq_init(struct mlxsw_pci *mlxsw_pci, char *mbox, in mlxsw_pci_sdq_init() argument 293 mlxsw_cmd_mbox_sw2hw_dq_cq_set(mbox, q->num); in mlxsw_pci_sdq_init() 294 mlxsw_cmd_mbox_sw2hw_dq_sdq_tclass_set(mbox, 3); in mlxsw_pci_sdq_init() 295 mlxsw_cmd_mbox_sw2hw_dq_log2_dq_sz_set(mbox, 3); /* 8 pages */ in mlxsw_pci_sdq_init() 299 mlxsw_cmd_mbox_sw2hw_dq_pa_set(mbox, i, mapaddr); in mlxsw_pci_sdq_init() 302 err = mlxsw_cmd_sw2hw_sdq(mlxsw_pci->core, mbox, q->num); in mlxsw_pci_sdq_init() 385 static int mlxsw_pci_rdq_init(struct mlxsw_pci *mlxsw_pci, char *mbox, in mlxsw_pci_rdq_init() argument 399 mlxsw_cmd_mbox_sw2hw_dq_cq_set(mbox, sdq_count + q->num); in mlxsw_pci_rdq_init() 400 mlxsw_cmd_mbox_sw2hw_dq_log2_dq_sz_set(mbox, 3); /* 8 pages */ in mlxsw_pci_rdq_init() 404 mlxsw_cmd_mbox_sw2hw_dq_pa_set(mbox, i, mapaddr); in mlxsw_pci_rdq_init() [all …]
|
/Linux-v4.19/drivers/net/wireless/ti/wl1251/ |
D | event.c | 30 struct event_mailbox *mbox) in wl1251_event_scan_complete() argument 35 mbox->scheduled_scan_status, in wl1251_event_scan_complete() 36 mbox->scheduled_scan_channels); in wl1251_event_scan_complete() 55 struct event_mailbox *mbox) in wl1251_event_ps_report() argument 59 wl1251_debug(DEBUG_EVENT, "ps status: %x", mbox->ps_status); in wl1251_event_ps_report() 61 switch (mbox->ps_status) { in wl1251_event_ps_report() 90 static void wl1251_event_mbox_dump(struct event_mailbox *mbox) in wl1251_event_mbox_dump() argument 93 wl1251_debug(DEBUG_EVENT, "\tvector: 0x%x", mbox->events_vector); in wl1251_event_mbox_dump() 94 wl1251_debug(DEBUG_EVENT, "\tmask: 0x%x", mbox->events_mask); in wl1251_event_mbox_dump() 97 static int wl1251_event_process(struct wl1251 *wl, struct event_mailbox *mbox) in wl1251_event_process() argument [all …]
|
/Linux-v4.19/drivers/scsi/lpfc/ |
D | lpfc_mbox.c | 844 LPFC_MBOXQ_t *mbox; in lpfc_sli4_unreg_all_rpis() local 847 mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL); in lpfc_sli4_unreg_all_rpis() 848 if (mbox) { in lpfc_sli4_unreg_all_rpis() 857 mbox); in lpfc_sli4_unreg_all_rpis() 858 mbox->u.mb.un.varUnregLogin.rsvd1 = 0x4000; in lpfc_sli4_unreg_all_rpis() 859 mbox->vport = vport; in lpfc_sli4_unreg_all_rpis() 860 mbox->mbox_cmpl = lpfc_sli_def_mbox_cmpl; in lpfc_sli4_unreg_all_rpis() 861 mbox->context1 = NULL; in lpfc_sli4_unreg_all_rpis() 862 rc = lpfc_sli_issue_mbox(phba, mbox, MBX_NOWAIT); in lpfc_sli4_unreg_all_rpis() 864 mempool_free(mbox, phba->mbox_mem_pool); in lpfc_sli4_unreg_all_rpis() [all …]
|
/Linux-v4.19/drivers/net/ethernet/mellanox/mlx5/core/ |
D | qp.c | 353 static int mbox_alloc(struct mbox_info *mbox, int inlen, int outlen) in mbox_alloc() argument 355 mbox->inlen = inlen; in mbox_alloc() 356 mbox->outlen = outlen; in mbox_alloc() 357 mbox->in = kzalloc(mbox->inlen, GFP_KERNEL); in mbox_alloc() 358 mbox->out = kzalloc(mbox->outlen, GFP_KERNEL); in mbox_alloc() 359 if (!mbox->in || !mbox->out) { in mbox_alloc() 360 kfree(mbox->in); in mbox_alloc() 361 kfree(mbox->out); in mbox_alloc() 368 static void mbox_free(struct mbox_info *mbox) in mbox_free() argument 370 kfree(mbox->in); in mbox_free() [all …]
|
/Linux-v4.19/drivers/scsi/megaraid/ |
D | megaraid_mbox.c | 992 raid_dev->mbox = &raid_dev->una_mbox64->mbox32; in megaraid_alloc_cmd_packets() 994 raid_dev->mbox = (mbox_t *)((((unsigned long)raid_dev->mbox) + 15) & in megaraid_alloc_cmd_packets() 997 raid_dev->mbox64 = (mbox64_t *)(((unsigned long)raid_dev->mbox) - 8); in megaraid_alloc_cmd_packets() 999 align = ((void *)raid_dev->mbox - in megaraid_alloc_cmd_packets() 1054 ccb->mbox = (mbox_t *)(mbox_pci_blk[i].vaddr + 16); in megaraid_alloc_cmd_packets() 1055 ccb->raw_mbox = (uint8_t *)ccb->mbox; in megaraid_alloc_cmd_packets() 1393 mbox_t *mbox; in mbox_post_cmd() local 1400 mbox = raid_dev->mbox; in mbox_post_cmd() 1409 if (unlikely(mbox->busy)) { in mbox_post_cmd() 1414 } while(mbox->busy && (i < max_mbox_busy_wait)); in mbox_post_cmd() [all …]
|
/Linux-v4.19/Documentation/devicetree/bindings/mailbox/ |
D | omap-mailbox.txt | 46 - #mbox-cells: Common mailbox binding property to identify the number 49 - ti,mbox-num-users: Number of targets (processor devices) that the mailbox 51 - ti,mbox-num-fifos: Number of h/w fifo queues within the mailbox IP block 62 - ti,mbox-tx: sub-mailbox descriptor property defining a Tx fifo 63 - ti,mbox-rx: sub-mailbox descriptor property defining a Rx fifo 67 Each of the above ti,mbox-tx and ti,mbox-rx properties should have 3 cells of 70 (ti,mbox-tx) or for receiving (ti,mbox-rx) 80 - ti,mbox-send-noirq: Quirk flag to allow the client user of this sub-mailbox 90 "mbox-names" (please see Documentation/devicetree/bindings/mailbox/mailbox.txt 94 "mbox-names" property value can be used to give a name to the communication channel [all …]
|
/Linux-v4.19/drivers/scsi/ |
D | megaraid.c | 146 adapter->mbox = &adapter->una_mbox64->mbox; in mega_setup_mailbox() 148 adapter->mbox = (mbox_t *)((((unsigned long) adapter->mbox) + 15) & in mega_setup_mailbox() 151 adapter->mbox64 = (mbox64_t *)(((unsigned long)adapter->mbox) - 8); in mega_setup_mailbox() 153 align = ((void *)adapter->mbox) - ((void *)&adapter->una_mbox64->mbox); in mega_setup_mailbox() 199 mbox_t *mbox; in mega_query_adapter() local 204 mbox = (mbox_t *)raw_mbox; in mega_query_adapter() 207 memset(&mbox->m_out, 0, sizeof(raw_mbox)); in mega_query_adapter() 214 mbox->m_out.xferaddr = (u32)adapter->buf_dma_handle; in mega_query_adapter() 237 mbox->m_out.xferaddr = (u32)dma_handle; in mega_query_adapter() 240 mbox->m_out.cmd = MEGA_MBOXCMD_ADPEXTINQ; in mega_query_adapter() [all …]
|
/Linux-v4.19/drivers/media/pci/ivtv/ |
D | ivtv-mailbox.c | 147 u32 flags = readl(&mbdata->mbox[mb].flags); in try_mailbox() 152 write_sync(IVTV_MBOX_DRIVER_BUSY, &mbdata->mbox[mb].flags); in try_mailbox() 189 static void write_mailbox(volatile struct ivtv_mailbox __iomem *mbox, int cmd, int args, u32 data[]) in write_mailbox() argument 193 write_sync(cmd, &mbox->cmd); in write_mailbox() 194 write_sync(IVTV_API_STD_TIMEOUT, &mbox->timeout); in write_mailbox() 197 write_sync(data[i], &mbox->data[i]); in write_mailbox() 199 write_sync(IVTV_MBOX_DRIVER_DONE | IVTV_MBOX_DRIVER_BUSY, &mbox->flags); in write_mailbox() 208 i, readl(&mbdata->mbox[i].cmd), readl(&mbdata->mbox[i].flags)); in clear_all_mailboxes() 209 write_sync(0, &mbdata->mbox[i].flags); in clear_all_mailboxes() 217 volatile struct ivtv_mailbox __iomem *mbox; in ivtv_api_call() local [all …]
|