Now About Social Code
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/drvemu.c25
1 files changed, 25 insertions, 0 deletions
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):