Lines Matching refs:mbox
831 struct mailbox *mbox; in rxtx_map_handler() local
873 mbox = spmc_get_mbox_desc(secure_origin); in rxtx_map_handler()
875 spin_lock(&mbox->lock); in rxtx_map_handler()
878 if (mbox->rx_buffer != 0 || mbox->tx_buffer != 0) { in rxtx_map_handler()
880 (void *) mbox->rx_buffer, (void *)mbox->tx_buffer); in rxtx_map_handler()
913 mbox->tx_buffer = (void *) tx_address; in rxtx_map_handler()
914 mbox->rx_buffer = (void *) rx_address; in rxtx_map_handler()
915 mbox->rxtx_page_count = page_count; in rxtx_map_handler()
916 spin_unlock(&mbox->lock); in rxtx_map_handler()
921 spin_unlock(&mbox->lock); in rxtx_map_handler()
935 struct mailbox *mbox = spmc_get_mbox_desc(secure_origin); in rxtx_unmap_handler() local
936 uint32_t buf_size = mbox->rxtx_page_count * FFA_PAGE_SIZE; in rxtx_unmap_handler()
948 spin_lock(&mbox->lock); in rxtx_unmap_handler()
951 if (mbox->rx_buffer == 0 || mbox->tx_buffer == 0) { in rxtx_unmap_handler()
952 spin_unlock(&mbox->lock); in rxtx_unmap_handler()
958 if (mmap_remove_dynamic_region((uintptr_t) mbox->rx_buffer, in rxtx_unmap_handler()
963 mbox->rx_buffer = 0; in rxtx_unmap_handler()
966 if (mmap_remove_dynamic_region((uintptr_t) mbox->tx_buffer, in rxtx_unmap_handler()
971 mbox->tx_buffer = 0; in rxtx_unmap_handler()
972 mbox->rxtx_page_count = 0; in rxtx_unmap_handler()
974 spin_unlock(&mbox->lock); in rxtx_unmap_handler()
1126 struct mailbox *mbox, in partition_info_populate_v1_0() argument
1133 (struct ffa_partition_info_v1_0 *) mbox->rx_buffer; in partition_info_populate_v1_0()
1135 buf_size = mbox->rxtx_page_count * FFA_PAGE_SIZE; in partition_info_populate_v1_0()
1173 struct mailbox *mbox; in partition_info_get_handler() local
1223 mbox = spmc_get_mbox_desc(secure_origin); in partition_info_get_handler()
1229 spin_lock(&mbox->lock); in partition_info_get_handler()
1230 if (mbox->rx_buffer == NULL) { in partition_info_get_handler()
1236 if (mbox->state != MAILBOX_STATE_EMPTY) { in partition_info_get_handler()
1242 (void)memset(mbox->rx_buffer, 0, in partition_info_get_handler()
1243 mbox->rxtx_page_count * FFA_PAGE_SIZE); in partition_info_get_handler()
1252 mbox, in partition_info_get_handler()
1258 uint32_t buf_size = mbox->rxtx_page_count * in partition_info_get_handler()
1267 memcpy(mbox->rx_buffer, partitions, in partition_info_get_handler()
1271 mbox->state = MAILBOX_STATE_FULL; in partition_info_get_handler()
1272 spin_unlock(&mbox->lock); in partition_info_get_handler()
1277 spin_unlock(&mbox->lock); in partition_info_get_handler()
1590 struct mailbox *mbox = spmc_get_mbox_desc(secure_origin); in rx_release_handler() local
1592 spin_lock(&mbox->lock); in rx_release_handler()
1594 if (mbox->state != MAILBOX_STATE_FULL) { in rx_release_handler()
1595 spin_unlock(&mbox->lock); in rx_release_handler()
1599 mbox->state = MAILBOX_STATE_EMPTY; in rx_release_handler()
1600 spin_unlock(&mbox->lock); in rx_release_handler()