Changeset 22848 in vbox
- Timestamp:
- Sep 8, 2009 8:55:36 PM (15 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Display/screen.c
r22592 r22848 151 151 0, 152 152 &returnedDataLength); 153 #ifdef DEBUG_misha 153 154 Assert(!err); 155 #endif 156 /* this is not fatal, just means Video 2D acceleration will not be supported */ 157 err = 0; 154 158 } 155 159 } -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/VBoxHGSMI.h
r22652 r22848 60 60 typedef union _LARGE_INTEGER *VBOXPLARGE_INTEGER; 61 61 62 typedef enum VBOXVP_POOL_TYPE 63 { 64 VBoxVpNonPagedPool, 65 VBoxVpPagedPool, 66 VBoxVpNonPagedPoolCacheAligned = 4, 67 VBoxVpPagedPoolCacheAligned 68 } VBOXVP_POOL_TYPE; 69 62 70 #define VBOXNOTIFICATION_EVENT 0x00000001UL 63 71 … … 79 87 typedef void (*PFNRELEASESPINLOCKFROMDPCLEVEL) (void* HwDeviceExtension, VBOXPSPIN_LOCK SpinLock); 80 88 89 typedef void* (*PFNALLOCATEPOOL) (void* HwDeviceExtension, VBOXVP_POOL_TYPE PoolType, size_t NumberOfBytes, unsigned long Tag); 90 typedef void (*PFNFREEPOOL) (void* HwDeviceExtension, void* Ptr); 81 91 82 92 /* pfn*SpinLock* functions are available */ … … 84 94 /* pfn*Event and pfnWaitForSingleObject functions are available */ 85 95 #define VBOXVIDEOPORTPROCS_EVENT 0x00000002 96 /* pfn*Pool functions are available */ 97 #define VBOXVIDEOPORTPROCS_POOL 0x00000004 86 98 87 99 typedef struct VBOXVIDEOPORTPROCS … … 103 115 PFNACQUIRESPINLOCKATDPCLEVEL pfnAcquireSpinLockAtDpcLevel; 104 116 PFNRELEASESPINLOCKFROMDPCLEVEL pfnReleaseSpinLockFromDpcLevel; 117 118 PFNALLOCATEPOOL pfnAllocatePool; 119 PFNFREEPOOL pfnFreePool; 105 120 } VBOXVIDEOPORTPROCS; 106 121 -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/VBoxVideoHGSMI.cpp
r22652 r22848 461 461 } 462 462 463 PVOID vboxAllocatePoolVoid(IN PVOID HwDeviceExtension, IN VBOXVP_POOL_TYPE PoolType, IN size_t NumberOfBytes, IN ULONG Tag) 464 { 465 return NULL; 466 } 467 468 VOID vboxFreePoolVoid(IN PVOID HwDeviceExtension, IN PVOID Ptr) 469 { 470 } 471 463 472 void VBoxSetupVideoPortFunctions(PDEVICE_EXTENSION PrimaryExtension, VBOXVIDEOPORTPROCS *pCallbacks, PVIDEO_PORT_CONFIG_INFO pConfigInfo) 464 473 { … … 562 571 } 563 572 573 pCallbacks->pfnAllocatePool = (PFNALLOCATEPOOL)(pConfigInfo->VideoPortGetProcAddress) 574 (PrimaryExtension, 575 (PUCHAR)"VideoPortAllocatePool"); 576 Assert(pCallbacks->pfnAllocatePool); 577 578 pCallbacks->pfnFreePool = (PFNFREEPOOL)(pConfigInfo->VideoPortGetProcAddress) 579 (PrimaryExtension, 580 (PUCHAR)"VideoPortFreePool"); 581 Assert(pCallbacks->pfnFreePool); 582 583 if(pCallbacks->pfnAllocatePool 584 && pCallbacks->pfnFreePool) 585 { 586 pCallbacks->fSupportedTypes |= VBOXVIDEOPORTPROCS_POOL; 587 } 588 else 589 { 590 pCallbacks->pfnAllocatePool = vboxAllocatePoolVoid; 591 pCallbacks->pfnFreePool = vboxFreePoolVoid; 592 } 593 594 #ifdef DEBUG_misha 564 595 Assert(pCallbacks->fSupportedTypes & VBOXVIDEOPORTPROCS_EVENT); 565 596 Assert(pCallbacks->fSupportedTypes & VBOXVIDEOPORTPROCS_SPINLOCK); 597 #endif 566 598 } 567 599 … … 977 1009 static int vboxVBVADeleteChannelContexts(PDEVICE_EXTENSION PrimaryExtension, VBVA_CHANNELCONTEXTS * pContext) 978 1010 { 979 VideoPortFreePool(PrimaryExtension,pContext);1011 PrimaryExtension->u.primary.VideoPortProcs.pfnFreePool(PrimaryExtension,pContext); 980 1012 return VINF_SUCCESS; 981 1013 } … … 985 1017 uint32_t cDisplays = (uint32_t)PrimaryExtension->u.primary.cDisplays; 986 1018 const size_t size = RT_OFFSETOF(VBVA_CHANNELCONTEXTS, aContexts[cDisplays]); 987 VBVA_CHANNELCONTEXTS * pContext = (VBVA_CHANNELCONTEXTS*) VideoPortAllocatePool(PrimaryExtension,988 V pNonPagedPool,1019 VBVA_CHANNELCONTEXTS * pContext = (VBVA_CHANNELCONTEXTS*)PrimaryExtension->u.primary.VideoPortProcs.pfnAllocatePool(PrimaryExtension, 1020 VBoxVpNonPagedPool, 989 1021 size, 990 1022 MEM_TAG);
Note:
See TracChangeset
for help on using the changeset viewer.