/linux/drivers/misc/ |
H A D | ibmvmc.c | 114 * ibmvmc_handle_event: - Interrupt handler for crq events 134 * ibmvmc_release_crq_queue - Release CRQ Queue 161 * ibmvmc_reset_crq_queue - Reset CRQ Queue 178 /* Close the CRQ */ in ibmvmc_reset_crq_queue() 193 dev_err(adapter->dev, "couldn't register crq--rc 0x%x\n", rc); in ibmvmc_reset_crq_queue() 203 * entried in the CRQ. 207 struct ibmvmc_crq_msg *crq; in crq_queue_next_crq() local 211 crq = &queue->msgs[queue->cur]; in crq_queue_next_crq() 212 if (crq->valid & 0x80) { in crq_queue_next_crq() 217 * other bits of the CRQ entry in crq_queue_next_crq() [all …]
|
H A D | ibmvmc.h | 115 __be16 crq_size; /* # of entries available in the CRQ for the
|
/linux/drivers/net/ethernet/ibm/ |
H A D | ibmvnic.c | 158 union ibmvnic_crq crq; in send_crq_init_complete() local 160 memset(&crq, 0, sizeof(crq)); in send_crq_init_complete() 161 crq.generic.first = IBMVNIC_CRQ_INIT_CMD; in send_crq_init_complete() 162 crq.generic.cmd = IBMVNIC_CRQ_INIT_COMPLETE; in send_crq_init_complete() 164 return ibmvnic_send_crq(adapter, &crq); in send_crq_init_complete() 169 union ibmvnic_crq crq; in send_version_xchg() local 171 memset(&crq, 0, sizeof(crq)); in send_version_xchg() 172 crq.version_exchange.first = IBMVNIC_CRQ_CMD; in send_version_xchg() 173 crq.version_exchange.cmd = VERSION_EXCHANGE; in send_version_xchg() 174 crq.version_exchange.version = cpu_to_be16(ibmvnic_version); in send_version_xchg() [all …]
|
/linux/drivers/char/tpm/ |
H A D | tpm_ibmvtpm.c | 38 * ibmvtpm_send_crq_word() - Send a CRQ request 40 * @w1: pre-constructed first word of tpm crq (second word is reserved) 52 * ibmvtpm_send_crq() - Send a CRQ request 60 * The ibmvtpm crq is defined as follows: 133 * ibmvtpm_crq_send_init - Send a CRQ initialize message 244 * tpm_ibmvtpm_resume() to re-enable the CRQ then retry in tpm_ibmvtpm_send() 273 * ibmvtpm_crq_get_rtce_size - Send a CRQ request to get rtce size 295 * ibmvtpm_crq_get_version - Send a CRQ request to get vtpm version 318 * ibmvtpm_crq_send_init_complete - Send a CRQ initialize complete message 389 * for TCE-mapped buffer in addition to CRQ. in tpm_ibmvtpm_get_desired_dma() [all …]
|
H A D | tpm_ibmvtpm.h | 49 /* Initialize CRQ */ 54 #define VALID_INIT_CRQ 0xC0 /* Valid command for init crq */ 56 /* vTPM CRQ response is the message type | 0x80 */ 60 /* vTPM CRQ message types */
|
/linux/drivers/net/ethernet/hisilicon/hns3/hns3vf/ |
H A D | hclgevf_mbx.c | 162 return tail == hw->hw.cmq.crq.next_to_use; in hclgevf_cmd_crq_empty() 227 struct hclge_comm_cmq_ring *crq; in hclgevf_mbx_handler() local 232 crq = &hdev->hw.hw.cmq.crq; in hclgevf_mbx_handler() 237 dev_info(&hdev->pdev->dev, "vf crq need init\n"); in hclgevf_mbx_handler() 241 desc = &crq->desc[crq->next_to_use]; in hclgevf_mbx_handler() 244 flag = le16_to_cpu(crq->desc[crq->next_to_use].flag); in hclgevf_mbx_handler() 252 crq->desc[crq->next_to_use].flag = 0; in hclgevf_mbx_handler() 253 hclge_mbx_ring_ptr_move_crq(crq); in hclgevf_mbx_handler() 282 crq->desc[crq->next_to_use].flag = 0; in hclgevf_mbx_handler() 283 hclge_mbx_ring_ptr_move_crq(crq); in hclgevf_mbx_handler() [all …]
|
/linux/drivers/scsi/ibmvscsi/ |
H A D | ibmvfc.c | 135 { IBMVFC_VIOS_FAILURE, IBMVFC_CRQ_FAILURE, DID_REQUEUE, 1, 1, "CRQ failure" }, 232 entry->fmt = evt->crq.format; in ibmvfc_trc_start() 269 entry->fmt = evt->crq.format; in ibmvfc_trc_end() 733 * ibmvfc_send_crq - Send a CRQ 757 * ibmvfc_send_crq_init - Send a CRQ init message 765 ibmvfc_dbg(vhost, "Sending CRQ init\n"); in ibmvfc_send_crq_init() 770 * ibmvfc_send_crq_init_complete - Send a CRQ init complete message 778 ibmvfc_dbg(vhost, "Sending CRQ init complete\n"); in ibmvfc_send_crq_init_complete() 830 evt->crq.valid = 0x80; in ibmvfc_init_event_pool() 831 evt->crq.ioba = cpu_to_be64(pool->iu_token + (sizeof(*evt->xfer_iu) * i)); in ibmvfc_init_event_pool() [all …]
|
H A D | ibmvscsi.c | 26 * (CRQ), which is just a buffer of 16 byte entries in the receiver's 38 * payload of a CRQ message. The server DMAs the SRP IU and processes it, 41 * and sends a CRQ message back to inform the client that the request has 109 static void ibmvscsi_handle_crq(struct viosrp_crq *crq, 116 * ibmvscsi_handle_event: - Interrupt handler for crq events 133 * ibmvscsi_release_crq_queue() - Deallocates data and unregisters CRQ 139 * the crq with the hypervisor. 165 * entried in the CRQ. 169 struct viosrp_crq *crq; in crq_queue_next_crq() local 173 crq = &queue->msgs[queue->cur]; in crq_queue_next_crq() [all …]
|
H A D | ibmvfc.h | 658 struct ibmvfc_crq crq; member 761 struct ibmvfc_crq crq; member 789 struct ibmvfc_crq *crq; member 815 /* Sub-CRQ fields */ 880 struct ibmvfc_queue crq; member
|
H A D | ibmvscsi.h | 56 struct viosrp_crq crq; member
|
/linux/drivers/usb/gadget/udc/aspeed-vhub/ |
H A D | ep0.c | 81 struct usb_ctrlrequest crq; in ast_vhub_ep0_handle_setup() local 92 memcpy_fromio(&crq, ep->ep0.setup, sizeof(crq)); in ast_vhub_ep0_handle_setup() 95 crq.bRequestType, crq.bRequest, in ast_vhub_ep0_handle_setup() 96 le16_to_cpu(crq.wValue), in ast_vhub_ep0_handle_setup() 97 le16_to_cpu(crq.wIndex), in ast_vhub_ep0_handle_setup() 98 le16_to_cpu(crq.wLength), in ast_vhub_ep0_handle_setup() 99 (crq.bRequestType & USB_DIR_IN) ? "in" : "out", in ast_vhub_ep0_handle_setup() 120 ep->ep0.dir_in = !!(crq.bRequestType & USB_DIR_IN); in ast_vhub_ep0_handle_setup() 125 if ((crq.bRequestType & USB_TYPE_MASK) == USB_TYPE_STANDARD) in ast_vhub_ep0_handle_setup() 126 std_req_rc = ast_vhub_std_hub_request(ep, &crq); in ast_vhub_ep0_handle_setup() [all …]
|
H A D | vhub.h | 540 struct usb_ctrlrequest *crq); 542 struct usb_ctrlrequest *crq); 555 struct usb_ctrlrequest *crq);
|
/linux/Documentation/misc-devices/ |
H A D | ibmvmc.rst | 73 This communication device uses Command/Response Queue (CRQ) and the 79 This driver also utilizes Transport Event CRQs. CRQ messages are sent 81 terminated, or one side has called H_FREE_CRQ to close their CRQ. 82 Two new classes of CRQ messages are introduced for the VMC device. VMC 86 the hypervisor. As most HMC messages far exceed the size of a CRQ buffer, 88 Interface CRQ message. Only the management partition drives RDMA 99 CRQ 117 is loaded. It first creates and initializes the CRQ. Next, an exchange of 129 CRQ INIT 131 CRQ INIT COMPLETE [all …]
|
/linux/drivers/net/ethernet/hisilicon/hns3/hns3_common/ |
H A D | hclge_comm_cmd.c | 39 hclge_comm_cmd_config_regs(hw, &hw->cmq.crq); in hclge_comm_cmd_init_regs() 214 &hw->cmq.crq; in hclge_comm_alloc_cmd_queue() 222 (ring_type == HCLGE_COMM_TYPE_CSQ) ? "CSQ" : "CRQ", in hclge_comm_alloc_cmd_queue() 551 spin_lock(&cmdq->crq.lock); in hclge_comm_cmd_uninit() 553 spin_unlock(&cmdq->crq.lock); in hclge_comm_cmd_uninit() 557 hclge_comm_free_cmd_desc(&cmdq->crq); in hclge_comm_cmd_uninit() 568 spin_lock_init(&cmdq->crq.lock); in hclge_comm_cmd_queue_init() 571 cmdq->crq.pdev = pdev; in hclge_comm_cmd_queue_init() 575 cmdq->crq.desc_num = HCLGE_COMM_NIC_CMQ_DESC_NUM; in hclge_comm_cmd_queue_init() 589 dev_err(&pdev->dev, "CRQ ring setup error %d\n", ret); in hclge_comm_cmd_queue_init() [all …]
|
/linux/drivers/isdn/mISDN/ |
H A D | tei.c | 983 create_teimgr(struct manager *mgr, struct channel_req *crq) in create_teimgr() argument 994 crq->protocol, crq->adr.dev, crq->adr.channel, in create_teimgr() 995 crq->adr.sapi, crq->adr.tei); in create_teimgr() 996 if (crq->adr.tei > GROUP_TEI) in create_teimgr() 998 if (crq->adr.tei < 64) in create_teimgr() 1000 if (crq->adr.tei == 0) in create_teimgr() 1003 if (crq->protocol == ISDN_P_LAPD_TE) in create_teimgr() 1005 if ((crq->adr.tei != 0) && (crq->adr.tei != 127)) in create_teimgr() 1014 if (crq->protocol == ISDN_P_LAPD_NT) in create_teimgr() 1016 if ((crq->adr.tei >= 64) && (crq->adr.tei < GROUP_TEI)) in create_teimgr() [all …]
|
H A D | dsp_core.c | 1048 dspcreate(struct channel_req *crq) in dspcreate() argument 1053 if (crq->protocol != ISDN_P_B_L2DSP in dspcreate() 1054 && crq->protocol != ISDN_P_B_L2DSPHDLC) in dspcreate() 1069 ndsp->up = crq->ch; in dspcreate() 1070 crq->ch = &ndsp->ch; in dspcreate() 1071 if (crq->protocol == ISDN_P_B_L2DSP) { in dspcreate() 1072 crq->protocol = ISDN_P_B_RAW; in dspcreate() 1075 crq->protocol = ISDN_P_B_HDLC; in dspcreate()
|
H A D | layer2.c | 2215 x75create(struct channel_req *crq) in x75create() argument 2219 if (crq->protocol != ISDN_P_B_X75SLP) in x75create() 2221 l2 = create_l2(crq->ch, crq->protocol, 0, 0, 0); in x75create() 2224 crq->ch = &l2->ch; in x75create() 2225 crq->protocol = ISDN_P_B_HDLC; in x75create()
|
/linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/ |
H A D | hclge_mbx.c | 805 return tail == hw->hw.cmq.crq.next_to_use; in hclge_cmd_crq_empty() 1106 struct hclge_comm_cmq_ring *crq = &hdev->hw.hw.cmq.crq; in hclge_mbx_handler() local 1123 desc = &crq->desc[crq->next_to_use]; in hclge_mbx_handler() 1126 flag = le16_to_cpu(crq->desc[crq->next_to_use].flag); in hclge_mbx_handler() 1134 crq->desc[crq->next_to_use].flag = 0; in hclge_mbx_handler() 1135 hclge_mbx_ring_ptr_move_crq(crq); in hclge_mbx_handler() 1147 crq->desc[crq->next_to_use].flag = 0; in hclge_mbx_handler() 1148 hclge_mbx_ring_ptr_move_crq(crq); in hclge_mbx_handler() 1153 crq->next_to_use); in hclge_mbx_handler()
|
/linux/drivers/net/ethernet/hisilicon/hns3/ |
H A D | hclge_mbx.h | 247 #define hclge_mbx_ring_ptr_move_crq(crq) \ argument 248 (crq->next_to_use = (crq->next_to_use + 1) % crq->desc_num)
|
/linux/net/sunrpc/ |
H A D | cache.c | 824 struct cache_request *crq) in cache_request() argument 826 char *bp = crq->buf; in cache_request() 829 detail->cache_request(detail, crq->item, &bp, &len); in cache_request() 1216 struct cache_request *crq; in cache_pipe_upcall() local 1227 crq = kmalloc(sizeof (*crq), GFP_KERNEL); in cache_pipe_upcall() 1228 if (!crq) { in cache_pipe_upcall() 1233 crq->q.reader = 0; in cache_pipe_upcall() 1234 crq->buf = buf; in cache_pipe_upcall() 1235 crq->len = 0; in cache_pipe_upcall() 1236 crq->readers = 0; in cache_pipe_upcall() [all …]
|
/linux/drivers/scsi/ibmvscsi_tgt/ |
H A D | ibmvscsi_tgt.h | 262 /* Prepare for Suspend event overwrote another CRQ entry */ 271 /* used in crq, to tag what iu the response is for */
|
/linux/Documentation/devicetree/bindings/tpm/ |
H A D | ibm,vtpm.yaml | 18 (Hcalls) and Command/Response Queue (CRQ) commands.
|
/linux/arch/powerpc/platforms/pseries/ |
H A D | firmware.c | 53 {FW_FEATURE_CRQ, "hcall-crq"},
|
/linux/include/scsi/ |
H A D | viosrp.h | 15 /* SRP Information Units (IUs) are sent on a "Command/Response Queue" (CRQ) */
|
/linux/drivers/net/ethernet/intel/idpf/ |
H A D | idpf_virtchnl.c | 1531 struct virtchnl2_config_rx_queues *crq __free(kfree) = NULL; in idpf_send_config_rx_queues_msg() 1644 buf_sz = struct_size(crq, qinfo, num_chunks); in idpf_send_config_rx_queues_msg() 1645 crq = kzalloc(buf_sz, GFP_KERNEL); in idpf_send_config_rx_queues_msg() 1646 if (!crq) in idpf_send_config_rx_queues_msg() 1653 memset(crq, 0, buf_sz); in idpf_send_config_rx_queues_msg() 1654 crq->vport_id = cpu_to_le32(vport->vport_id); in idpf_send_config_rx_queues_msg() 1655 crq->num_qinfo = cpu_to_le16(num_chunks); in idpf_send_config_rx_queues_msg() 1656 memcpy(crq->qinfo, &qi[k], chunk_sz * num_chunks); in idpf_send_config_rx_queues_msg() 1658 xn_params.send_buf.iov_base = crq; in idpf_send_config_rx_queues_msg() 1668 buf_sz = struct_size(crq, qinfo, num_chunks); in idpf_send_config_rx_queues_msg()
|