Changeset 39136 in vbox for trunk/include/VBox/vmm
- Timestamp:
- Oct 28, 2011 10:13:34 AM (13 years ago)
- Location:
- trunk/include/VBox/vmm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/pdmdev.h
r39135 r39136 126 126 * @remarks Not used. 127 127 */ 128 typedef DECLCALLBACK(int) FNPDMDEVIOCTL(PPDMDEVINS pDevIns, RTUINTuFunction,129 void *pvIn, RTUINTcbIn,130 void *pvOut, RTUINTcbOut, PRTUINT pcbOut);128 typedef DECLCALLBACK(int) FNPDMDEVIOCTL(PPDMDEVINS pDevIns, uint32_t uFunction, 129 void *pvIn, uint32_t cbIn, 130 void *pvOut, uint32_t cbOut, PRTUINT pcbOut); 131 131 /** Pointer to a FNPDMDEVIOCTL() function. */ 132 132 typedef FNPDMDEVIOCTL *PFNPDMDEVIOCTL; … … 2163 2163 * @param pszDesc Pointer to description string. This must not be freed. 2164 2164 */ 2165 DECLR3CALLBACKMEMBER(int, pfnIOPortRegister,(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts, RTHCPTR pvUser,2165 DECLR3CALLBACKMEMBER(int, pfnIOPortRegister,(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts, RTHCPTR pvUser, 2166 2166 PFNIOMIOPORTOUT pfnOut, PFNIOMIOPORTIN pfnIn, 2167 2167 PFNIOMIOPORTOUTSTRING pfnOutStr, PFNIOMIOPORTINSTRING pfnInStr, const char *pszDesc)); … … 2187 2187 * @param pszDesc Pointer to description string. This must not be freed. 2188 2188 */ 2189 DECLR3CALLBACKMEMBER(int, pfnIOPortRegisterRC,(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts, RTRCPTR pvUser,2189 DECLR3CALLBACKMEMBER(int, pfnIOPortRegisterRC,(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts, RTRCPTR pvUser, 2190 2190 const char *pszOut, const char *pszIn, 2191 2191 const char *pszOutStr, const char *pszInStr, const char *pszDesc)); … … 2208 2208 * @param pszDesc Pointer to description string. This must not be freed. 2209 2209 */ 2210 DECLR3CALLBACKMEMBER(int, pfnIOPortRegisterR0,(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts, RTR0PTR pvUser,2210 DECLR3CALLBACKMEMBER(int, pfnIOPortRegisterR0,(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts, RTR0PTR pvUser, 2211 2211 const char *pszOut, const char *pszIn, 2212 2212 const char *pszOutStr, const char *pszInStr, const char *pszDesc)); … … 2222 2222 * @param cPorts Number of ports to deregister. 2223 2223 */ 2224 DECLR3CALLBACKMEMBER(int, pfnIOPortDeregister,(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts));2224 DECLR3CALLBACKMEMBER(int, pfnIOPortDeregister,(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts)); 2225 2225 2226 2226 /** … … 2242 2242 * @param pszDesc Pointer to description string. This must not be freed. 2243 2243 */ 2244 DECLR3CALLBACKMEMBER(int, pfnMMIORegister,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, RTHCPTR pvUser,2244 DECLR3CALLBACKMEMBER(int, pfnMMIORegister,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTHCPTR pvUser, 2245 2245 PFNIOMMMIOWRITE pfnWrite, PFNIOMMMIOREAD pfnRead, PFNIOMMMIOFILL pfnFill, 2246 2246 uint32_t fFlags, const char *pszDesc)); … … 2262 2262 * @param pszFill Name of the RC function which is gonna handle Fill/memset operations. (optional) 2263 2263 */ 2264 DECLR3CALLBACKMEMBER(int, pfnMMIORegisterRC,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINT cbRange, RTGCPTR pvUser,2264 DECLR3CALLBACKMEMBER(int, pfnMMIORegisterRC,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTRCPTR pvUser, 2265 2265 const char *pszWrite, const char *pszRead, const char *pszFill)); 2266 2266 … … 2282 2282 * @param pszDesc Obsolete. NULL is fine. 2283 2283 */ 2284 DECLR3CALLBACKMEMBER(int, pfnMMIORegisterR0,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, RTR0PTR pvUser,2284 DECLR3CALLBACKMEMBER(int, pfnMMIORegisterR0,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTR0PTR pvUser, 2285 2285 const char *pszWrite, const char *pszRead, const char *pszFill)); 2286 2286 … … 2295 2295 * @param cbRange The size of the range (in bytes). 2296 2296 */ 2297 DECLR3CALLBACKMEMBER(int, pfnMMIODeregister,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange));2297 DECLR3CALLBACKMEMBER(int, pfnMMIODeregister,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange)); 2298 2298 2299 2299 /** … … 2422 2422 * manually from the device yet. At present I doubt we need such features... 2423 2423 */ 2424 DECLR3CALLBACKMEMBER(int, pfnROMRegister,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange,2424 DECLR3CALLBACKMEMBER(int, pfnROMRegister,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, 2425 2425 const void *pvBinary, uint32_t cbBinary, uint32_t fFlags, const char *pszDesc)); 2426 2426 … … 2436 2436 * @param enmProt The new protection type. 2437 2437 */ 2438 DECLR3CALLBACKMEMBER(int, pfnROMProtectShadow,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, PGMROMPROT enmProt));2438 DECLR3CALLBACKMEMBER(int, pfnROMProtectShadow,(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, PGMROMPROT enmProt)); 2439 2439 2440 2440 /** … … 2920 2920 * for the live of the device instance. 2921 2921 */ 2922 DECLR3CALLBACKMEMBER(int, pfnDriverAttach,(PPDMDEVINS pDevIns, RTUINTiLun, PPDMIBASE pBaseInterface, PPDMIBASE *ppBaseInterface, const char *pszDesc));2922 DECLR3CALLBACKMEMBER(int, pfnDriverAttach,(PPDMDEVINS pDevIns, uint32_t iLun, PPDMIBASE pBaseInterface, PPDMIBASE *ppBaseInterface, const char *pszDesc)); 2923 2923 2924 2924 /** … … 2938 2938 * @thread The emulation thread. 2939 2939 */ 2940 DECLR3CALLBACKMEMBER(int, pfnQueueCreate,(PPDMDEVINS pDevIns, RTUINT cbItem, RTUINTcItems, uint32_t cMilliesInterval,2940 DECLR3CALLBACKMEMBER(int, pfnQueueCreate,(PPDMDEVINS pDevIns, size_t cbItem, uint32_t cItems, uint32_t cMilliesInterval, 2941 2941 PFNPDMQUEUEDEV pfnCallback, bool fRZEnabled, const char *pszName, PPDMQUEUE *ppQueue)); 2942 2942 … … 4067 4067 * @copydoc PDMDEVHLPR3::pfnIOPortRegister 4068 4068 */ 4069 DECLINLINE(int) PDMDevHlpIOPortRegister(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts, RTHCPTR pvUser,4069 DECLINLINE(int) PDMDevHlpIOPortRegister(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts, RTHCPTR pvUser, 4070 4070 PFNIOMIOPORTOUT pfnOut, PFNIOMIOPORTIN pfnIn, 4071 4071 PFNIOMIOPORTOUTSTRING pfnOutStr, PFNIOMIOPORTINSTRING pfnInStr, const char *pszDesc) … … 4077 4077 * @copydoc PDMDEVHLPR3::pfnIOPortRegisterRC 4078 4078 */ 4079 DECLINLINE(int) PDMDevHlpIOPortRegisterRC(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts, RTRCPTR pvUser,4079 DECLINLINE(int) PDMDevHlpIOPortRegisterRC(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts, RTRCPTR pvUser, 4080 4080 const char *pszOut, const char *pszIn, const char *pszOutStr, 4081 4081 const char *pszInStr, const char *pszDesc) … … 4087 4087 * @copydoc PDMDEVHLPR3::pfnIOPortRegisterR0 4088 4088 */ 4089 DECLINLINE(int) PDMDevHlpIOPortRegisterR0(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts, RTR0PTR pvUser,4089 DECLINLINE(int) PDMDevHlpIOPortRegisterR0(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts, RTR0PTR pvUser, 4090 4090 const char *pszOut, const char *pszIn, const char *pszOutStr, 4091 4091 const char *pszInStr, const char *pszDesc) … … 4097 4097 * @copydoc PDMDEVHLPR3::pfnIOPortDeregister 4098 4098 */ 4099 DECLINLINE(int) PDMDevHlpIOPortDeregister(PPDMDEVINS pDevIns, RTIOPORT Port, RT UINT cPorts)4099 DECLINLINE(int) PDMDevHlpIOPortDeregister(PPDMDEVINS pDevIns, RTIOPORT Port, RTIOPORT cPorts) 4100 4100 { 4101 4101 return pDevIns->pHlpR3->pfnIOPortDeregister(pDevIns, Port, cPorts); … … 4103 4103 4104 4104 /** 4105 * @copydoc PDMDEVHLPR3::pfnMMIORegister 4106 */ 4107 DECLINLINE(int) PDMDevHlpMMIORegister(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINT cbRange, RTHCPTR pvUser, 4105 * Register a Memory Mapped I/O (MMIO) region. 4106 * 4107 * These callbacks are of course for the ring-3 context (R3). Register HC 4108 * handlers before raw-mode context (RC) and ring-0 context (R0) handlers! There 4109 * must be a R3 handler for every RC and R0 handler! 4110 * 4111 * @returns VBox status. 4112 * @param pDevIns The device instance to register the MMIO with. 4113 * @param GCPhysStart First physical address in the range. 4114 * @param cbRange The size of the range (in bytes). 4115 * @param pvUser User argument. 4116 * @param fFlags Flags, IOMMMIO_FLAGS_XXX. 4117 * @param pfnWrite Pointer to function which is gonna handle Write operations. 4118 * @param pfnRead Pointer to function which is gonna handle Read operations. 4119 * @param pszDesc Pointer to description string. This must not be freed. 4120 */ 4121 DECLINLINE(int) PDMDevHlpMMIORegister(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTHCPTR pvUser, 4108 4122 uint32_t fFlags, PFNIOMMMIOWRITE pfnWrite, PFNIOMMMIOREAD pfnRead, const char *pszDesc) 4109 4123 { … … 4113 4127 4114 4128 /** 4129 * Register a Memory Mapped I/O (MMIO) region for GC. 4130 * 4131 * These callbacks are for the raw-mode context (RC). Register ring-3 context 4132 * (R3) handlers before guest context handlers! There must be a R3 handler for 4133 * every RC handler! 4134 * 4135 * @returns VBox status. 4136 * @param pDevIns The device instance to register the MMIO with. 4137 * @param GCPhysStart First physical address in the range. 4138 * @param cbRange The size of the range (in bytes). 4139 * @param pvUser User argument. 4140 * @param pszWrite Name of the RC function which is gonna handle Write operations. 4141 * @param pszRead Name of the RC function which is gonna handle Read operations. 4142 */ 4143 DECLINLINE(int) PDMDevHlpMMIORegisterRC(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTRCPTR pvUser, 4144 const char *pszWrite, const char *pszRead) 4145 { 4146 return pDevIns->pHlpR3->pfnMMIORegisterRC(pDevIns, GCPhysStart, cbRange, pvUser, pszWrite, pszRead, NULL /*pszFill*/); 4147 } 4148 4149 /** 4150 * @copydoc PDMDEVHLPR3::pfnMMIORegisterR0 4151 */ 4152 DECLINLINE(int) PDMDevHlpMMIORegisterR0(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTR0PTR pvUser, 4153 const char *pszWrite, const char *pszRead) 4154 { 4155 return pDevIns->pHlpR3->pfnMMIORegisterR0(pDevIns, GCPhysStart, cbRange, pvUser, pszWrite, pszRead, NULL /*pszFill*/); 4156 } 4157 4158 /** 4115 4159 * @copydoc PDMDEVHLPR3::pfnMMIORegister 4116 4160 */ 4117 DECLINLINE(int) PDMDevHlpMMIORegisterEx(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, RTHCPTR pvUser,4161 DECLINLINE(int) PDMDevHlpMMIORegisterEx(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTHCPTR pvUser, 4118 4162 uint32_t fFlags, PFNIOMMMIOWRITE pfnWrite, PFNIOMMMIOREAD pfnRead, 4119 4163 PFNIOMMMIOFILL pfnFill, const char *pszDesc) … … 4126 4170 * @copydoc PDMDEVHLPR3::pfnMMIORegisterRC 4127 4171 */ 4128 DECLINLINE(int) PDMDevHlpMMIORegisterRC (PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, RTGCPTR pvUser,4172 DECLINLINE(int) PDMDevHlpMMIORegisterRCEx(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTGCPTR pvUser, 4129 4173 const char *pszWrite, const char *pszRead, const char *pszFill) 4130 4174 { … … 4135 4179 * @copydoc PDMDEVHLPR3::pfnMMIORegisterR0 4136 4180 */ 4137 DECLINLINE(int) PDMDevHlpMMIORegisterR0 (PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, RTR0PTR pvUser,4181 DECLINLINE(int) PDMDevHlpMMIORegisterR0Ex(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, RTR0PTR pvUser, 4138 4182 const char *pszWrite, const char *pszRead, const char *pszFill) 4139 4183 { … … 4144 4188 * @copydoc PDMDEVHLPR3::pfnMMIODeregister 4145 4189 */ 4146 DECLINLINE(int) PDMDevHlpMMIODeregister(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange)4190 DECLINLINE(int) PDMDevHlpMMIODeregister(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange) 4147 4191 { 4148 4192 return pDevIns->pHlpR3->pfnMMIODeregister(pDevIns, GCPhysStart, cbRange); … … 4202 4246 * @copydoc PDMDEVHLPR3::pfnROMRegister 4203 4247 */ 4204 DECLINLINE(int) PDMDevHlpROMRegister(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange,4248 DECLINLINE(int) PDMDevHlpROMRegister(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, 4205 4249 const void *pvBinary, uint32_t cbBinary, uint32_t fFlags, const char *pszDesc) 4206 4250 { … … 4211 4255 * @copydoc PDMDEVHLPR3::pfnROMProtectShadow 4212 4256 */ 4213 DECLINLINE(int) PDMDevHlpROMProtectShadow(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, RTUINTcbRange, PGMROMPROT enmProt)4257 DECLINLINE(int) PDMDevHlpROMProtectShadow(PPDMDEVINS pDevIns, RTGCPHYS GCPhysStart, uint32_t cbRange, PGMROMPROT enmProt) 4214 4258 { 4215 4259 return pDevIns->pHlpR3->pfnROMProtectShadow(pDevIns, GCPhysStart, cbRange, enmProt); … … 4565 4609 * @copydoc PDMDEVHLPR3::pfnDriverAttach 4566 4610 */ 4567 DECLINLINE(int) PDMDevHlpDriverAttach(PPDMDEVINS pDevIns, RTUINTiLun, PPDMIBASE pBaseInterface, PPDMIBASE *ppBaseInterface, const char *pszDesc)4611 DECLINLINE(int) PDMDevHlpDriverAttach(PPDMDEVINS pDevIns, uint32_t iLun, PPDMIBASE pBaseInterface, PPDMIBASE *ppBaseInterface, const char *pszDesc) 4568 4612 { 4569 4613 return pDevIns->pHlpR3->pfnDriverAttach(pDevIns, iLun, pBaseInterface, ppBaseInterface, pszDesc); … … 4573 4617 * @copydoc PDMDEVHLPR3::pfnQueueCreate 4574 4618 */ 4575 DECLINLINE(int) PDMDevHlpQueueCreate(PPDMDEVINS pDevIns, RTUINT cbItem, RTUINTcItems, uint32_t cMilliesInterval,4576 PFNPDMQUEUEDEV pfnCallback, bool f GCEnabled, const char *pszName, PPDMQUEUE *ppQueue)4577 { 4578 return pDevIns->pHlpR3->pfnQueueCreate(pDevIns, cbItem, cItems, cMilliesInterval, pfnCallback, f GCEnabled, pszName, ppQueue);4619 DECLINLINE(int) PDMDevHlpQueueCreate(PPDMDEVINS pDevIns, size_t cbItem, uint32_t cItems, uint32_t cMilliesInterval, 4620 PFNPDMQUEUEDEV pfnCallback, bool fRZEnabled, const char *pszName, PPDMQUEUE *ppQueue) 4621 { 4622 return pDevIns->pHlpR3->pfnQueueCreate(pDevIns, cbItem, cItems, cMilliesInterval, pfnCallback, fRZEnabled, pszName, ppQueue); 4579 4623 } 4580 4624 -
trunk/include/VBox/vmm/pdmqueue.h
r35361 r39136 4 4 5 5 /* 6 * Copyright (C) 2006-201 0Oracle Corporation6 * Copyright (C) 2006-2011 Oracle Corporation 7 7 * 8 8 * This file is part of VirtualBox Open Source Edition (OSE), as … … 119 119 typedef FNPDMQUEUEEXT *PFNPDMQUEUEEXT; 120 120 121 VMMR3DECL(int) PDMR3QueueCreateDevice(PVM pVM, PPDMDEVINS pDevIns, RTUINT cbItem, RTUINT cItems, uint32_t cMilliesInterval, 122 PFNPDMQUEUEDEV pfnCallback, bool fGCEnabled, const char *pszName, PPDMQUEUE *ppQueue); 123 VMMR3DECL(int) PDMR3QueueCreateDriver(PVM pVM, PPDMDRVINS pDrvIns, RTUINT cbItem, RTUINT cItems, uint32_t cMilliesInterval, 124 PFNPDMQUEUEDRV pfnCallback, const char *pszName, PPDMQUEUE *ppQueue); 125 VMMR3DECL(int) PDMR3QueueCreateInternal(PVM pVM, RTUINT cbItem, RTUINT cItems, uint32_t cMilliesInterval, 126 PFNPDMQUEUEINT pfnCallback, bool fGCEnabled, const char *pszName, PPDMQUEUE *ppQueue); 127 VMMR3DECL(int) PDMR3QueueCreateExternal(PVM pVM, RTUINT cbItem, RTUINT cItems, uint32_t cMilliesInterval, 128 PFNPDMQUEUEEXT pfnCallback, void *pvUser, const char *pszName, PPDMQUEUE *ppQueue); 129 VMMR3DECL(int) PDMR3QueueDestroy(PPDMQUEUE pQueue); 130 VMMR3DECL(int) PDMR3QueueDestroyDevice(PVM pVM, PPDMDEVINS pDevIns); 131 VMMR3DECL(int) PDMR3QueueDestroyDriver(PVM pVM, PPDMDRVINS pDrvIns); 132 VMMR3DECL(void) PDMR3QueueFlushAll(PVM pVM); 121 #ifdef VBOX_IN_VMM 122 VMMR3_INT_DECL(int) PDMR3QueueCreateDevice(PVM pVM, PPDMDEVINS pDevIns, size_t cbItem, uint32_t cItems, uint32_t cMilliesInterval, 123 PFNPDMQUEUEDEV pfnCallback, bool fRZEnabled, const char *pszName, PPDMQUEUE *ppQueue); 124 VMMR3_INT_DECL(int) PDMR3QueueCreateDriver(PVM pVM, PPDMDRVINS pDrvIns, size_t cbItem, uint32_t cItems, uint32_t cMilliesInterval, 125 PFNPDMQUEUEDRV pfnCallback, const char *pszName, PPDMQUEUE *ppQueue); 126 VMMR3_INT_DECL(int) PDMR3QueueCreateInternal(PVM pVM, size_t cbItem, uint32_t cItems, uint32_t cMilliesInterval, 127 PFNPDMQUEUEINT pfnCallback, bool fGCEnabled, const char *pszName, PPDMQUEUE *ppQueue); 128 VMMR3_INT_DECL(int) PDMR3QueueCreateExternal(PVM pVM, size_t cbItem, uint32_t cItems, uint32_t cMilliesInterval, 129 PFNPDMQUEUEEXT pfnCallback, void *pvUser, const char *pszName, PPDMQUEUE *ppQueue); 130 VMMR3_INT_DECL(int) PDMR3QueueDestroy(PPDMQUEUE pQueue); 131 VMMR3_INT_DECL(int) PDMR3QueueDestroyDevice(PVM pVM, PPDMDEVINS pDevIns); 132 VMMR3_INT_DECL(int) PDMR3QueueDestroyDriver(PVM pVM, PPDMDRVINS pDrvIns); 133 VMMR3_INT_DECL(void) PDMR3QueueFlushAll(PVM pVM); 134 #endif /* VBOX_IN_VMM */ 133 135 134 136 VMMDECL(PPDMQUEUEITEMCORE) PDMQueueAlloc(PPDMQUEUE pQueue);
Note:
See TracChangeset
for help on using the changeset viewer.