X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=pvr%2Fsgx_bridge_km.h;h=f0613e7b5738df797ac88cf7dc8cbca47137d114;hb=1ab3b0f22522b2b661241459fc4a0ec8f296dc8f;hp=b18bab5d850584a82da6ae2dd8a614d08fdcce1f;hpb=ec740aa8faa0ad8dacb17d1138adecb428a48aed;p=sgx.git diff --git a/pvr/sgx_bridge_km.h b/pvr/sgx_bridge_km.h index b18bab5..f0613e7 100644 --- a/pvr/sgx_bridge_km.h +++ b/pvr/sgx_bridge_km.h @@ -36,11 +36,13 @@ enum PVRSRV_ERROR SGXSubmitTransferKM(void *hDevHandle, - struct PVRSRV_TRANSFER_SGX_KICK *psKick); + struct PVRSRV_TRANSFER_SGX_KICK *psKick, + struct PVRSRV_PER_PROCESS_DATA *proc); enum PVRSRV_ERROR SGXDoKickKM(void *hDevHandle, - struct PVR3DIF4_CCB_KICK *psCCBKick); + struct SGX_CCB_KICK *psCCBKick, + struct PVRSRV_PER_PROCESS_DATA *proc); enum PVRSRV_ERROR SGXGetPhysPageAddrKM(void *hDevMemHeap, struct IMG_DEV_VIRTADDR sDevVAddr, @@ -51,26 +53,33 @@ enum PVRSRV_ERROR SGXGetMMUPDAddrKM(void *hDevCookie, void *hDevMemContext, struct IMG_DEV_PHYADDR *psPDDevPAddr); enum PVRSRV_ERROR SGXGetClientInfoKM(void *hDevCookie, - struct PVR3DIF4_CLIENT_INFO *psClientInfo); + struct SGX_CLIENT_INFO *psClientInfo); enum PVRSRV_ERROR SGXGetMiscInfoKM(struct PVRSRV_SGXDEV_INFO *psDevInfo, - struct SGX_MISC_INFO *psMiscInfo); + struct SGX_MISC_INFO *psMiscInfo, + struct PVRSRV_DEVICE_NODE *psDeviceNode); enum PVRSRV_ERROR SGXReadDiffCountersKM(void *hDevHandle, u32 ui32Reg, - u32 *pui32Old, IMG_BOOL bNew, u32 ui32New, u32 ui32NewReset, - u32 ui32CountersReg, u32 *pui32Time, IMG_BOOL *pbActive, - struct PVRSRV_SGXDEV_DIFF_INFO *psDiffs); + u32 *pui32Old, IMG_BOOL bNew, u32 ui32New, + u32 ui32NewReset, u32 ui32CountersReg, + u32 *pui32Time, IMG_BOOL *pbActive, + struct PVRSRV_SGXDEV_DIFF_INFO *psDiffs); +enum PVRSRV_ERROR SGXReadHWPerfCBKM(void *hDevHandle, u32 ui32ArraySize, + struct PVRSRV_SGX_HWPERF_CB_ENTRY *psHWPerfCBData, + u32 *pui32DataCount, u32 *pui32ClockSpeed, + u32 *pui32HostTimeStamp); enum PVRSRV_ERROR SGX2DQueryBlitsCompleteKM( - struct PVRSRV_SGXDEV_INFO *psDevInfo, - struct PVRSRV_KERNEL_SYNC_INFO *psSyncInfo, - IMG_BOOL bWaitForComplete); + struct PVRSRV_SGXDEV_INFO *psDevInfo, + struct PVRSRV_KERNEL_SYNC_INFO *psSyncInfo, + IMG_BOOL bWaitForComplete); enum PVRSRV_ERROR SGXGetInfoForSrvinitKM(void *hDevHandle, - struct SGX_BRIDGE_INFO_FOR_SRVINIT *psInitInfo); + struct SGX_BRIDGE_INFO_FOR_SRVINIT *psInitInfo); enum PVRSRV_ERROR DevInitSGXPart2KM(struct PVRSRV_PER_PROCESS_DATA *psPerProc, - void *hDevHandle, struct SGX_BRIDGE_INIT_INFO *psInitInfo); + void *hDevHandle, + struct SGX_BRIDGE_INIT_INFO *psInitInfo); enum PVRSRV_ERROR SGXFindSharedPBDescKM( struct PVRSRV_PER_PROCESS_DATA *psPerProc, @@ -95,6 +104,11 @@ enum PVRSRV_ERROR SGXAddSharedPBDescKM( u32 ui32SharedPBDescSubKernelMemInfosCount); enum PVRSRV_ERROR SGXGetInternalDevInfoKM(void *hDevCookie, - struct PVR3DIF4_INTERNAL_DEVINFO *psSGXInternalDevInfo); + struct SGX_INTERNAL_DEVINFO *psSGXInternalDevInfo); + +int sgx_force_reset(void); + +IMG_BOOL isSGXPerfServerActive(void); +void SGXPerfServerMonitor(u32 u32TimeStamp); #endif