From 6a1e5989c35d0721819f480f1040091b878ba351 Mon Sep 17 00:00:00 2001 From: Lucas Fryzek Date: Sun, 21 Jul 2024 18:12:31 +0100 Subject: drvemu: Get past init until DRI --- src/drvemu.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src') diff --git a/src/drvemu.c b/src/drvemu.c index 1d64b9f..04a9efc 100644 --- a/src/drvemu.c +++ b/src/drvemu.c @@ -550,6 +550,31 @@ static bool pvrsrv_ioctl(int fd, PVRSRV_BRIDGE_PACKAGE *bridge_package) { alloc->device_ptr, pvr_heap_names[(int)in->hDevMemHeap]); break; } + case _IOC_NR(PVRSRV_BRIDGE_SGX_GETINTERNALDEVINFO): { + PVRSRV_BRIDGE_OUT_GETINTERNALDEVINFO *out = bridge_package->pvParamOut; + out->eError = PVRSRV_OK; + out->sSGXInternalDevInfo.hHostCtlKernelMemInfoHandle = (void*)create_handle(1024, "PVRSRV_BRIDGE_SGX_GETINTERNALDEVINFO"); + out->sSGXInternalDevInfo.bForcePTOff = false; + break; + } + case _IOC_NR(PVRSRV_BRIDGE_SGX_REGISTER_HW_RENDER_CONTEXT): { + PVRSRV_BRIDGE_IN_SGX_REGISTER_HW_RENDER_CONTEXT *in = bridge_package->pvParamIn; + PVRSRV_BRIDGE_OUT_SGX_REGISTER_HW_RENDER_CONTEXT *out = bridge_package->pvParamOut; + out->eError = PVRSRV_OK; + out->hHWRenderContext = (void*)create_handle(in->ui32HWRenderContextSize, "PVRSRV_BRIDGE_SGX_REGISTER_HW_RENDER_CONTEXT"); + SOFT_TODO("Not setting sHWRenderContextDevVAddr for new render context"); + out->sHWRenderContextDevVAddr.uiAddr = 0; + break; + } + case _IOC_NR(PVRSRV_BRIDGE_SGX_REGISTER_HW_TRANSFER_CONTEXT): { + PVRSRV_BRIDGE_IN_SGX_REGISTER_HW_TRANSFER_CONTEXT *in = bridge_package->pvParamIn; + PVRSRV_BRIDGE_OUT_SGX_REGISTER_HW_TRANSFER_CONTEXT *out = bridge_package->pvParamOut; + out->eError = PVRSRV_OK; + out->hHWTransferContext = (void*)create_handle(in->ui32HWTransferContextSize, "PVRSRV_BRIDGE_IN_SGX_REGISTER_HW_TRANSFER_CONTEXT"); + SOFT_TODO("Not setting sHWTransferContextDevVAddr for transfer context"); + out->sHWTransferContextDevVAddr.uiAddr = 0; + break; + } case _IOC_NR(PVRSRV_BRIDGE_DISCONNECT_SERVICES): case _IOC_NR(PVRSRV_BRIDGE_SGX_RELEASECLIENTINFO): case _IOC_NR(PVRSRV_BRIDGE_CLOSE_DISPCLASS_DEVICE): -- cgit