Lines Matching refs:mdev
23 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in __otx2_mbox_reset() local
25 void *hw_mbase = mdev->hwbase; in __otx2_mbox_reset()
30 mdev->msg_size = 0; in __otx2_mbox_reset()
31 mdev->rsp_size = 0; in __otx2_mbox_reset()
43 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_reset() local
45 spin_lock(&mdev->mbox_lock); in otx2_mbox_reset()
47 spin_unlock(&mdev->mbox_lock); in otx2_mbox_reset()
227 struct otx2_mbox_dev *mdev; in otx2_mbox_init() local
237 mdev = &mbox->dev[devid]; in otx2_mbox_init()
238 mdev->mbase = mbox->hwbase + (devid * MBOX_SIZE); in otx2_mbox_init()
239 mdev->hwbase = mdev->mbase; in otx2_mbox_init()
240 spin_lock_init(&mdev->mbox_lock); in otx2_mbox_init()
256 struct otx2_mbox_dev *mdev; in otx2_mbox_regions_init() local
269 mdev = &mbox->dev[devid]; in otx2_mbox_regions_init()
270 mdev->mbase = hwbase[devid]; in otx2_mbox_regions_init()
271 mdev->hwbase = hwbase[devid]; in otx2_mbox_regions_init()
272 spin_lock_init(&mdev->mbox_lock); in otx2_mbox_regions_init()
284 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_wait_for_rsp() local
287 if (mdev->num_msgs == mdev->msgs_acked) in otx2_mbox_wait_for_rsp()
298 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_busy_poll_for_rsp() local
302 if (mdev->num_msgs == mdev->msgs_acked) in otx2_mbox_busy_poll_for_rsp()
312 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_msg_send_data() local
314 void *hw_mbase = mdev->hwbase; in otx2_mbox_msg_send_data()
324 if (mdev->mbase != hw_mbase) in otx2_mbox_msg_send_data()
326 mdev->mbase + mbox->tx_start + msgs_offset, in otx2_mbox_msg_send_data()
327 mdev->msg_size); in otx2_mbox_msg_send_data()
329 spin_lock(&mdev->mbox_lock); in otx2_mbox_msg_send_data()
332 tx_hdr->msg_size = mdev->msg_size; in otx2_mbox_msg_send_data()
333 tx_hdr->num_msgs = mdev->num_msgs; in otx2_mbox_msg_send_data()
337 mdev->msg_size = 0; in otx2_mbox_msg_send_data()
338 mdev->rsp_size = 0; in otx2_mbox_msg_send_data()
339 mdev->msgs_acked = 0; in otx2_mbox_msg_send_data()
355 spin_unlock(&mdev->mbox_lock); in otx2_mbox_msg_send_data()
406 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_alloc_msg_rsp() local
410 spin_lock(&mdev->mbox_lock); in otx2_mbox_alloc_msg_rsp()
414 if ((mdev->msg_size + size) > mbox->tx_size - msgs_offset) in otx2_mbox_alloc_msg_rsp()
416 if ((mdev->rsp_size + size_rsp) > mbox->rx_size - msgs_offset) in otx2_mbox_alloc_msg_rsp()
419 if (mdev->msg_size == 0) in otx2_mbox_alloc_msg_rsp()
420 mdev->num_msgs = 0; in otx2_mbox_alloc_msg_rsp()
421 mdev->num_msgs++; in otx2_mbox_alloc_msg_rsp()
423 msghdr = mdev->mbase + mbox->tx_start + msgs_offset + mdev->msg_size; in otx2_mbox_alloc_msg_rsp()
429 mdev->msg_size += size; in otx2_mbox_alloc_msg_rsp()
430 mdev->rsp_size += size_rsp; in otx2_mbox_alloc_msg_rsp()
431 msghdr->next_msgoff = mdev->msg_size + msgs_offset; in otx2_mbox_alloc_msg_rsp()
433 mboxhdr = mdev->mbase + mbox->tx_start; in otx2_mbox_alloc_msg_rsp()
438 spin_unlock(&mdev->mbox_lock); in otx2_mbox_alloc_msg_rsp()
449 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_get_rsp() local
452 spin_lock(&mdev->mbox_lock); in otx2_mbox_get_rsp()
454 if (mdev->num_msgs != mdev->msgs_acked) in otx2_mbox_get_rsp()
457 for (msgs = 0; msgs < mdev->msgs_acked; msgs++) { in otx2_mbox_get_rsp()
458 struct mbox_msghdr *pmsg = mdev->mbase + imsg; in otx2_mbox_get_rsp()
459 struct mbox_msghdr *prsp = mdev->mbase + irsp; in otx2_mbox_get_rsp()
464 spin_unlock(&mdev->mbox_lock); in otx2_mbox_get_rsp()
473 spin_unlock(&mdev->mbox_lock); in otx2_mbox_get_rsp()
482 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_check_rsp_msgs() local
486 spin_lock(&mdev->mbox_lock); in otx2_mbox_check_rsp_msgs()
488 if (mdev->num_msgs != mdev->msgs_acked) in otx2_mbox_check_rsp_msgs()
491 for (msgs = 0; msgs < mdev->msgs_acked; msgs++) { in otx2_mbox_check_rsp_msgs()
492 struct mbox_msghdr *preq = mdev->mbase + ireq; in otx2_mbox_check_rsp_msgs()
493 struct mbox_msghdr *prsp = mdev->mbase + irsp; in otx2_mbox_check_rsp_msgs()
512 spin_unlock(&mdev->mbox_lock); in otx2_mbox_check_rsp_msgs()
536 struct otx2_mbox_dev *mdev = &mbox->dev[devid]; in otx2_mbox_nonempty() local
539 spin_lock(&mdev->mbox_lock); in otx2_mbox_nonempty()
540 ret = mdev->num_msgs != 0; in otx2_mbox_nonempty()
541 spin_unlock(&mdev->mbox_lock); in otx2_mbox_nonempty()