Lines Matching refs:req
179 static bool NotifyAndWaitResponse(unsigned queue, struct Virtq *q, const void *req, volatile void *resp)
181 const struct VirtgpuCtrlHdr *a = req;
205 static bool RequestResponse(unsigned queue, const void *req, size_t reqSize, volatile void *resp, size_t respSize)
211 q->desc[idx].pAddr = u32_to_u64(VMM_TO_DMA_ADDR((VADDR_T)req));
220 return NotifyAndWaitResponse(queue, q, req, resp);
223 static bool RequestDataResponse(const void *req, size_t reqSize, const void *data,
229 q->desc[idx].pAddr = u32_to_u64(VMM_TO_DMA_ADDR((VADDR_T)req));
243 return NotifyAndWaitResponse(0, q, req, resp);
247 static void RequestNoResponse(unsigned queue, const void *req, size_t reqSize, bool notify)
258 q->desc[head].pAddr = u32_to_u64(VMM_TO_DMA_ADDR((VADDR_T)req));
282 struct VirtgpuCtrlHdr req = {
287 if (!RequestResponse(0, &req, sizeof(req), &resp, sizeof(resp))) {
318 struct VirtgpuGetEdid req = {
323 if (!RequestResponse(0, &req, sizeof(req), &resp, sizeof(resp))) {
340 struct VirtgpuResourceCreate2D req = {
349 return RequestResponse(0, &req, sizeof(req), &resp, sizeof(resp));
360 struct VirtgpuSetScanout req = {
367 return RequestResponse(0, &req, sizeof(req), &resp, sizeof(resp));
372 struct VirtgpuTransferToHost2D req = {
381 return RequestResponse(0, &req, sizeof(req), &resp, sizeof(resp));
386 struct VirtgpuResourceFlush req = {
393 return RequestResponse(0, &req, sizeof(req), &resp, sizeof(resp));
410 struct VirtgpuResourceAttachBacking req = {
421 return RequestDataResponse(&req, sizeof(req), &data, sizeof(data), &resp, sizeof(resp));