• Home
  • Raw
  • Download

Lines Matching refs:drv

52 	struct intel_sst_drv *drv = (struct intel_sst_drv *) context;  in intel_sst_interrupt_mrfld()  local
56 isr.full = sst_shim_read64(drv->shim, SST_ISRX); in intel_sst_interrupt_mrfld()
60 spin_lock(&drv->ipc_spin_lock); in intel_sst_interrupt_mrfld()
61 header.full = sst_shim_read64(drv->shim, in intel_sst_interrupt_mrfld()
62 drv->ipc_reg.ipcx); in intel_sst_interrupt_mrfld()
64 sst_shim_write64(drv->shim, drv->ipc_reg.ipcx, header.full); in intel_sst_interrupt_mrfld()
68 sst_shim_write64(drv->shim, SST_ISRX, isr.full); in intel_sst_interrupt_mrfld()
69 spin_unlock(&drv->ipc_spin_lock); in intel_sst_interrupt_mrfld()
72 queue_work(drv->post_msg_wq, &drv->ipc_post_msg_wq); in intel_sst_interrupt_mrfld()
78 spin_lock(&drv->ipc_spin_lock); in intel_sst_interrupt_mrfld()
79 imr.full = sst_shim_read64(drv->shim, SST_IMRX); in intel_sst_interrupt_mrfld()
81 sst_shim_write64(drv->shim, SST_IMRX, imr.full); in intel_sst_interrupt_mrfld()
82 spin_unlock(&drv->ipc_spin_lock); in intel_sst_interrupt_mrfld()
83 header.full = sst_shim_read64(drv->shim, drv->ipc_reg.ipcd); in intel_sst_interrupt_mrfld()
86 drv->ops->clear_interrupt(drv); in intel_sst_interrupt_mrfld()
94 drv->mailbox + drv->mailbox_recv_offset, size); in intel_sst_interrupt_mrfld()
96 dev_err(drv->dev, in intel_sst_interrupt_mrfld()
105 spin_lock(&drv->rx_msg_lock); in intel_sst_interrupt_mrfld()
106 list_add_tail(&msg->node, &drv->rx_list); in intel_sst_interrupt_mrfld()
107 spin_unlock(&drv->rx_msg_lock); in intel_sst_interrupt_mrfld()
108 drv->ops->clear_interrupt(drv); in intel_sst_interrupt_mrfld()
116 struct intel_sst_drv *drv = (struct intel_sst_drv *) context; in intel_sst_irq_thread_mrfld() local
120 spin_lock_irqsave(&drv->rx_msg_lock, irq_flags); in intel_sst_irq_thread_mrfld()
121 if (list_empty(&drv->rx_list)) { in intel_sst_irq_thread_mrfld()
122 spin_unlock_irqrestore(&drv->rx_msg_lock, irq_flags); in intel_sst_irq_thread_mrfld()
126 list_for_each_entry_safe(msg, __msg, &drv->rx_list, node) { in intel_sst_irq_thread_mrfld()
128 spin_unlock_irqrestore(&drv->rx_msg_lock, irq_flags); in intel_sst_irq_thread_mrfld()
130 drv->ops->process_message(msg); in intel_sst_irq_thread_mrfld()
132 drv->ops->process_reply(drv, msg); in intel_sst_irq_thread_mrfld()
137 spin_lock_irqsave(&drv->rx_msg_lock, irq_flags); in intel_sst_irq_thread_mrfld()
139 spin_unlock_irqrestore(&drv->rx_msg_lock, irq_flags); in intel_sst_irq_thread_mrfld()