- Timestamp:
- Feb 16, 2021 4:41:18 PM (4 years ago)
- Location:
- trunk
- Files:
-
- 24 edited
-
include/VBox/vmm/tm.h (modified) (4 diffs)
-
src/VBox/Devices/Audio/DevHDA.cpp (modified) (2 diffs)
-
src/VBox/Devices/Audio/DevIchAc97.cpp (modified) (3 diffs)
-
src/VBox/Devices/Audio/DevSB16.cpp (modified) (3 diffs)
-
src/VBox/Devices/Graphics/DevVGA.cpp (modified) (2 diffs)
-
src/VBox/Devices/Input/DevPS2K.cpp (modified) (4 diffs)
-
src/VBox/Devices/Input/DevPS2M.cpp (modified) (3 diffs)
-
src/VBox/Devices/Network/DevE1000.cpp (modified) (8 diffs)
-
src/VBox/Devices/Network/DevPCNet.cpp (modified) (4 diffs)
-
src/VBox/Devices/Network/DevVirtioNet.cpp (modified) (3 diffs)
-
src/VBox/Devices/Network/DevVirtioNet_1_0.cpp (modified) (1 diff)
-
src/VBox/Devices/PC/DevACPI.cpp (modified) (3 diffs)
-
src/VBox/Devices/PC/DevHPET.cpp (modified) (4 diffs)
-
src/VBox/Devices/PC/DevPit-i8254.cpp (modified) (1 diff)
-
src/VBox/Devices/PC/DevRTC.cpp (modified) (5 diffs)
-
src/VBox/Devices/Serial/UartCore.cpp (modified) (4 diffs)
-
src/VBox/Devices/Storage/DevAHCI.cpp (modified) (1 diff)
-
src/VBox/Devices/Storage/DevFdc.cpp (modified) (3 diffs)
-
src/VBox/Devices/USB/DevOHCI.cpp (modified) (3 diffs)
-
src/VBox/Devices/USB/VUSBDevice.cpp (modified) (1 diff)
-
src/VBox/Devices/VMMDev/VMMDev.cpp (modified) (1 diff)
-
src/VBox/ExtPacks/BusMouseSample/DevBusMouse.cpp (modified) (2 diffs)
-
src/VBox/VMM/VMMR3/APIC.cpp (modified) (2 diffs)
-
src/VBox/VMM/VMMR3/TM.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/tm.h
r87766 r87767 171 171 * 172 172 * @param pDevIns Device instance of the device which registered the timer. 173 * @param pTimer The timer handle.173 * @param hTimer The timer handle. 174 174 * @param pvUser User argument specified upon timer creation. 175 175 */ 176 typedef DECLCALLBACKTYPE(void, FNTMTIMERDEV,(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser));176 typedef DECLCALLBACKTYPE(void, FNTMTIMERDEV,(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser)); 177 177 /** Pointer to a device timer callback function. */ 178 178 typedef FNTMTIMERDEV *PFNTMTIMERDEV; … … 183 183 * @param pUsbIns The USB device instance the timer is associated 184 184 * with. 185 * @param pTimer The timer handle.185 * @param hTimer The timer handle. 186 186 * @param pvUser User argument specified upon timer creation. 187 187 */ 188 typedef DECLCALLBACKTYPE(void, FNTMTIMERUSB,(PPDMUSBINS pUsbIns, PTMTIMER pTimer, void *pvUser));188 typedef DECLCALLBACKTYPE(void, FNTMTIMERUSB,(PPDMUSBINS pUsbIns, TMTIMERHANDLE hTimer, void *pvUser)); 189 189 /** Pointer to a timer callback for a USB device. */ 190 190 typedef FNTMTIMERUSB *PFNTMTIMERUSB; … … 194 194 * 195 195 * @param pDrvIns Device instance of the device which registered the timer. 196 * @param pTimer The timer handle.196 * @param hTimer The timer handle. 197 197 * @param pvUser User argument specified upon timer creation. 198 198 */ 199 typedef DECLCALLBACKTYPE(void, FNTMTIMERDRV,(PPDMDRVINS pDrvIns, PTMTIMER pTimer, void *pvUser));199 typedef DECLCALLBACKTYPE(void, FNTMTIMERDRV,(PPDMDRVINS pDrvIns, TMTIMERHANDLE hTimer, void *pvUser)); 200 200 /** Pointer to a driver timer callback function. */ 201 201 typedef FNTMTIMERDRV *PFNTMTIMERDRV; … … 205 205 * 206 206 * @param pSrvIns Service instance of the device which registered the timer. 207 * @param pTimer The timer handle.208 */ 209 typedef DECLCALLBACKTYPE(void, FNTMTIMERSRV,(PPDMSRVINS pSrvIns, PTMTIMER pTimer));207 * @param hTimer The timer handle. 208 */ 209 typedef DECLCALLBACKTYPE(void, FNTMTIMERSRV,(PPDMSRVINS pSrvIns, TMTIMERHANDLE hTimer)); 210 210 /** Pointer to a service timer callback function. */ 211 211 typedef FNTMTIMERSRV *PFNTMTIMERSRV; -
trunk/src/VBox/Devices/Audio/DevHDA.cpp
r87760 r87767 2643 2643 * @callback_method_impl{FNTMTIMERDEV, Main routine for the stream's timer.} 2644 2644 */ 2645 static DECLCALLBACK(void) hdaR3Timer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)2645 static DECLCALLBACK(void) hdaR3Timer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 2646 2646 { 2647 2647 PHDASTATE pThis = PDMDEVINS_2_DATA(pDevIns, PHDASTATE); … … 2651 2651 PHDASTREAM pStreamShared = &pThis->aStreams[idxStream]; 2652 2652 PHDASTREAMR3 pStreamR3 = &pThisCC->aStreams[idxStream]; 2653 TMTIMERHANDLE hTimer = pStreamShared->hTimer; 2654 RT_NOREF(pTimer); 2653 Assert(hTimer == pStreamShared->hTimer); 2655 2654 2656 2655 Assert(PDMDevHlpCritSectIsOwner(pDevIns, &pThis->CritSect)); -
trunk/src/VBox/Devices/Audio/DevIchAc97.cpp
r87760 r87767 694 694 static DECLCALLBACK(void) ichac97R3Reset(PPDMDEVINS pDevIns); 695 695 696 static DECLCALLBACK(void) ichac97R3Timer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser);697 698 696 static void ichac97R3MixerRemoveDrvStreams(PAC97STATER3 pThisCC, PAUDMIXSINK pMixSink, PDMAUDIODIR enmDir, 699 697 PDMAUDIODSTSRCUNION dstSrc); … … 2749 2747 * Timer callback which handles the audio data transfers on a periodic basis.} 2750 2748 */ 2751 static DECLCALLBACK(void) ichac97R3Timer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)2749 static DECLCALLBACK(void) ichac97R3Timer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 2752 2750 { 2753 2751 PAC97STATE pThis = PDMDEVINS_2_DATA(pDevIns, PAC97STATE); … … 2756 2754 PAC97STREAM pStream = (PAC97STREAM)pvUser; 2757 2755 PAC97STREAMR3 pStreamCC = &RT_SAFE_SUBSCRIPT8(pThisCC->aStreams, pStream->u8SD); 2758 RT_NOREF(pTimer);2756 Assert(hTimer == pStream->hTimer); RT_NOREF(hTimer); 2759 2757 2760 2758 Assert(pStream - &pThis->aStreams[0] == pStream->u8SD); -
trunk/src/VBox/Devices/Audio/DevSB16.cpp
r87760 r87767 300 300 * @callback_method_impl{PFNTMTIMERDEV} 301 301 */ 302 static DECLCALLBACK(void) sb16TimerIRQ(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)302 static DECLCALLBACK(void) sb16TimerIRQ(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 303 303 { 304 304 PSB16STATE pThis = PDMDEVINS_2_DATA(pDevIns, PSB16STATE); 305 RT_NOREF(pvUser, pTimer);305 RT_NOREF(pvUser, hTimer); 306 306 307 307 pThis->can_write = 1; … … 1689 1689 * @callback_method_impl{FNTMTIMERDEV} 1690 1690 */ 1691 static DECLCALLBACK(void) sb16TimerIO(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)1691 static DECLCALLBACK(void) sb16TimerIO(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1692 1692 { 1693 1693 PSB16STATE pThis = PDMDEVINS_2_DATA(pDevIns, PSB16STATE); 1694 RT_NOREF(pTimer,pvUser);1695 1696 uint64_t cTicksNow = PDMDevHlpTimerGet(pDevIns, pThis->hTimerIO);1694 Assert(hTimer == pThis->hTimerIO); RT_NOREF(pvUser); 1695 1696 uint64_t cTicksNow = PDMDevHlpTimerGet(pDevIns, hTimer); 1697 1697 bool fIsPlaying = false; /* Whether one or more streams are still playing. */ 1698 1698 bool fDoTransfer = false; … … 1749 1749 uint64_t cTicks = pThis->cTicksTimerIOInterval; 1750 1750 /** @todo adjust cTicks down by now much cbOutMin represents. */ 1751 PDMDevHlpTimerSet(pDevIns, pThis->hTimerIO, cTicksNow + cTicks);1751 PDMDevHlpTimerSet(pDevIns, hTimer, cTicksNow + cTicks); 1752 1752 } 1753 1753 } -
trunk/src/VBox/Devices/Graphics/DevVGA.cpp
r87760 r87767 5445 5445 * @callback_method_impl{FNTMTIMERDEV, VGA Refresh Timer} 5446 5446 */ 5447 static DECLCALLBACK(void) vgaR3TimerRefresh(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)5447 static DECLCALLBACK(void) vgaR3TimerRefresh(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 5448 5448 { 5449 5449 PVGASTATE pThis = PDMDEVINS_2_DATA(pDevIns, PVGASTATE); 5450 5450 PVGASTATECC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PVGASTATECC); 5451 RT_NOREF(pvUser , pTimer);5451 RT_NOREF(pvUser); 5452 5452 5453 5453 if (pThis->fScanLineCfg & VBVASCANLINECFG_ENABLE_VSYNC_IRQ) … … 5458 5458 5459 5459 if (pThis->cMilliesRefreshInterval) 5460 PDMDevHlpTimerSetMillies(pDevIns, pThis->hRefreshTimer, pThis->cMilliesRefreshInterval);5460 PDMDevHlpTimerSetMillies(pDevIns, hTimer, pThis->cMilliesRefreshInterval); 5461 5461 5462 5462 # ifdef VBOX_WITH_VIDEOHWACCEL -
trunk/src/VBox/Devices/Input/DevPS2K.cpp
r87760 r87767 957 957 * done because it would needlessly slow things down. 958 958 */ 959 static DECLCALLBACK(void) ps2kR3ThrottleTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 960 { 961 RT_NOREF(pDevIns, pTimer); 959 static DECLCALLBACK(void) ps2kR3ThrottleTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 960 { 962 961 PPS2K pThis = (PS2K *)pvUser; 963 962 unsigned uHaveData; 963 RT_NOREF(hTimer); 964 964 965 965 /* Grab the lock to avoid races with event delivery or EMTs. */ … … 985 985 * @note Note that only the last key held down repeats (if typematic). 986 986 */ 987 static DECLCALLBACK(void) ps2kR3TypematicTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 988 { 989 RT_NOREF(pDevIns, pTimer); 987 static DECLCALLBACK(void) ps2kR3TypematicTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 988 { 990 989 PPS2K pThis = (PS2K *)pvUser; 990 Assert(hTimer == pThis->hKbdTypematicTimer); 991 991 LogFlowFunc(("Typematic state=%d, key %08X\n", pThis->enmTypematicState, pThis->u32TypematicKey)); 992 992 … … 1002 1002 { 1003 1003 ps2kR3ProcessKeyEvent(pDevIns, pThis, pThis->u32TypematicKey, true /* Key down */ ); 1004 PDMDevHlpTimerSetMillies(pDevIns, pThis->hKbdTypematicTimer, pThis->uTypematicRepeat);1004 PDMDevHlpTimerSetMillies(pDevIns, hTimer, pThis->uTypematicRepeat); 1005 1005 } 1006 1006 } … … 1013 1013 * to delay sending the result to the host for at least a tiny little while. 1014 1014 */ 1015 static DECLCALLBACK(void) ps2kR3DelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 1016 { 1017 RT_NOREF(pDevIns, pTimer); 1015 static DECLCALLBACK(void) ps2kR3DelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1016 { 1018 1017 PPS2K pThis = (PS2K *)pvUser; 1018 RT_NOREF(hTimer); 1019 1019 1020 1020 LogFlowFunc(("Delay timer: cmd %02X\n", pThis->u8CurrCmd)); -
trunk/src/VBox/Devices/Input/DevPS2M.cpp
r87760 r87767 724 724 * Event rate throttling timer to emulate the auxiliary device sampling rate.} 725 725 */ 726 static DECLCALLBACK(void) ps2mR3ThrottleTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 727 { 728 RT_NOREF(pDevIns, pTimer); 726 static DECLCALLBACK(void) ps2mR3ThrottleTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 727 { 729 728 PPS2M pThis = (PS2M *)pvUser; 730 729 uint32_t uHaveEvents; 730 Assert(hTimer == pThis->hThrottleTimer); 731 731 732 732 /* Grab the lock to avoid races with PutEvent(). */ … … 743 743 ps2mReportAccumulatedEvents(pThis, &pThis->evtQ.Hdr, RT_ELEMENTS(pThis->evtQ.abQueue), pThis->evtQ.abQueue, true); 744 744 KBCUpdateInterrupts(pDevIns); 745 PDMDevHlpTimerSetMillies(pDevIns, pThis->hThrottleTimer, pThis->uThrottleDelay);745 PDMDevHlpTimerSetMillies(pDevIns, hTimer, pThis->uThrottleDelay); 746 746 } 747 747 else … … 758 758 * while. 759 759 */ 760 static DECLCALLBACK(void) ps2mR3DelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)760 static DECLCALLBACK(void) ps2mR3DelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 761 761 { 762 762 PPS2M pThis = &PDMDEVINS_2_DATA(pDevIns, PKBDSTATE)->Aux; 763 763 PPS2MR3 pThisCC = &PDMDEVINS_2_DATA_CC(pDevIns, PKBDSTATER3)->Aux; 764 RT_NOREF(pvUser, pTimer);764 RT_NOREF(pvUser, hTimer); 765 765 766 766 LogFlowFunc(("Delay timer: cmd %02X\n", pThis->u8CurrCmd)); -
trunk/src/VBox/Devices/Network/DevE1000.cpp
r87760 r87767 2191 2191 uint64_t tsNow = PDMDevHlpTimerGet(pDevIns, pThis->hIntTimer); 2192 2192 if (!!ITR && tsNow - pThis->u64AckedAt < ITR * 256 2193 && pThis->fItrEnabled && (pThis->fItrRxEnabled || !(ICR & ICR_RXT0)))2193 && pThis->fItrEnabled && (pThis->fItrRxEnabled || !(ICR & ICR_RXT0))) 2194 2194 { 2195 2195 E1K_INC_ISTAT_CNT(pThis->uStatIntEarly); … … 3509 3509 # ifdef E1K_TX_DELAY 3510 3510 /** 3511 * Transmit Delay Timer handler. 3512 * 3513 * @remarks We only get here when the timer expires. 3514 * 3515 * @param pDevIns Pointer to device instance structure. 3516 * @param pTimer Pointer to the timer. 3517 * @param pvUser NULL. 3518 * @thread EMT 3519 */ 3520 static DECLCALLBACK(void) e1kR3TxDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3511 * @callback_method_impl{FNTMTIMERDEV, Transmit Delay Timer handler.} 3512 */ 3513 static DECLCALLBACK(void) e1kR3TxDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3521 3514 { 3522 3515 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3523 3516 Assert(PDMCritSectIsOwner(&pThis->csTx)); 3517 RT_NOREF(hTimer); 3524 3518 3525 3519 E1K_INC_ISTAT_CNT(pThis->uStatTxDelayExp); … … 3537 3531 3538 3532 /** 3539 * Transmit Interrupt Delay Timer handler. 3540 * 3541 * @remarks We only get here when the timer expires. 3542 * 3543 * @param pDevIns Pointer to device instance structure. 3544 * @param pTimer Pointer to the timer. 3545 * @param pvUser NULL. 3546 * @thread EMT 3547 */ 3548 static DECLCALLBACK(void) e1kR3TxIntDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3549 { 3550 RT_NOREF(pDevIns); 3551 RT_NOREF(pTimer); 3533 * @callback_method_impl{FNTMTIMERDEV, Transmit Interrupt Delay Timer handler.} 3534 */ 3535 static DECLCALLBACK(void) e1kR3TxIntDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3536 { 3552 3537 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3538 Assert(hTimer == pThis->hTIDTimer); RT_NOREF(hTimer); 3553 3539 3554 3540 E1K_INC_ISTAT_CNT(pThis->uStatTID); … … 3561 3547 3562 3548 /** 3563 * Transmit Absolute Delay Timer handler. 3564 * 3565 * @remarks We only get here when the timer expires. 3566 * 3567 * @param pDevIns Pointer to device instance structure. 3568 * @param pTimer Pointer to the timer. 3569 * @param pvUser NULL. 3570 * @thread EMT 3571 */ 3572 static DECLCALLBACK(void) e1kR3TxAbsDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3573 { 3574 RT_NOREF(pDevIns); 3575 RT_NOREF(pTimer); 3549 * @callback_method_impl{FNTMTIMERDEV, Transmit Absolute Delay Timer handler.} 3550 */ 3551 static DECLCALLBACK(void) e1kR3TxAbsDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3552 { 3576 3553 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3554 Assert(hTimer == pThis->hTADTimer); RT_NOREF(hTimer); 3577 3555 3578 3556 E1K_INC_ISTAT_CNT(pThis->uStatTAD); … … 3586 3564 3587 3565 /** 3588 * Receive Interrupt Delay Timer handler. 3589 * 3590 * @remarks We only get here when the timer expires. 3591 * 3592 * @param pDevIns Pointer to device instance structure. 3593 * @param pTimer Pointer to the timer. 3594 * @param pvUser NULL. 3595 * @thread EMT 3596 */ 3597 static DECLCALLBACK(void) e1kR3RxIntDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3566 * @callback_method_impl{FNTMTIMERDEV, Receive Interrupt Delay Timer handler.} 3567 */ 3568 static DECLCALLBACK(void) e1kR3RxIntDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3598 3569 { 3599 3570 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3571 Assert(hTimer == pThis->hRIDTimer); RT_NOREF(hTimer); 3600 3572 3601 3573 E1K_INC_ISTAT_CNT(pThis->uStatRID); … … 3606 3578 3607 3579 /** 3608 * Receive Absolute Delay Timer handler. 3609 * 3610 * @remarks We only get here when the timer expires. 3611 * 3612 * @param pDevIns Pointer to device instance structure. 3613 * @param pTimer Pointer to the timer. 3614 * @param pvUser NULL. 3615 * @thread EMT 3616 */ 3617 static DECLCALLBACK(void) e1kR3RxAbsDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3580 * @callback_method_impl{FNTMTIMERDEV, Receive Absolute Delay Timer handler.} 3581 */ 3582 static DECLCALLBACK(void) e1kR3RxAbsDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3618 3583 { 3619 3584 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3585 Assert(hTimer == pThis->hRADTimer); RT_NOREF(hTimer); 3620 3586 3621 3587 E1K_INC_ISTAT_CNT(pThis->uStatRAD); … … 3628 3594 3629 3595 /** 3630 * Late Interrupt Timer handler. 3631 * 3632 * @param pDevIns Pointer to device instance structure. 3633 * @param pTimer Pointer to the timer. 3634 * @param pvUser NULL. 3635 * @thread EMT 3636 */ 3637 static DECLCALLBACK(void) e1kR3LateIntTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3638 { 3639 RT_NOREF(pDevIns, pTimer); 3596 * @callback_method_impl{FNTMTIMERDEV, Late Interrupt Timer handler.} 3597 */ 3598 static DECLCALLBACK(void) e1kR3LateIntTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3599 { 3640 3600 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3601 Assert(hTimer == pThis->hIntTimer); RT_NOREF(hTimer); 3602 RT_NOREF(hTimer); 3641 3603 3642 3604 STAM_PROFILE_ADV_START(&pThis->StatLateIntTimer, a); … … 3652 3614 3653 3615 /** 3654 * Link Up Timer handler. 3655 * 3656 * @param pDevIns Pointer to device instance structure. 3657 * @param pTimer Pointer to the timer. 3658 * @param pvUser NULL. 3659 * @thread EMT 3660 */ 3661 static DECLCALLBACK(void) e1kR3LinkUpTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3662 { 3663 RT_NOREF(pTimer); 3616 * @callback_method_impl{FNTMTIMERDEV, Link Up Timer handler.} 3617 */ 3618 static DECLCALLBACK(void) e1kR3LinkUpTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 3619 { 3664 3620 PE1KSTATE pThis = (PE1KSTATE)pvUser; 3665 3621 PE1KSTATECC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PE1KSTATECC); 3622 Assert(hTimer == pThis->hLUTimer); RT_NOREF(hTimer); 3666 3623 3667 3624 /* -
trunk/src/VBox/Devices/Network/DevPCNet.cpp
r87760 r87767 4009 4009 * @callback_method_impl{FNTMTIMERDEV, Poll timer} 4010 4010 */ 4011 static DECLCALLBACK(void) pcnetR3Timer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)4011 static DECLCALLBACK(void) pcnetR3Timer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 4012 4012 { 4013 4013 PPCNETSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PPCNETSTATE); 4014 4014 PPCNETSTATECC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PPCNETSTATECC); 4015 4015 Assert(PDMDevHlpCritSectIsOwner(pDevIns, &pThis->CritSect)); 4016 RT_NOREF(pvUser, pTimer);4016 Assert(hTimer == pThis->hTimerPoll); RT_NOREF(pvUser, hTimer); 4017 4017 4018 4018 STAM_PROFILE_ADV_START(&pThis->StatTimer, a); … … 4026 4026 * Software interrupt timer callback function.} 4027 4027 */ 4028 static DECLCALLBACK(void) pcnetR3TimerSoftInt(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)4028 static DECLCALLBACK(void) pcnetR3TimerSoftInt(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 4029 4029 { 4030 4030 PPCNETSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PPCNETSTATE); 4031 4031 Assert(PDMDevHlpCritSectIsOwner(pDevIns, &pThis->CritSect)); 4032 RT_NOREF(pvUser, pTimer);4032 Assert(hTimer == pThis->hTimerSoftInt); RT_NOREF(pvUser, hTimer); 4033 4033 4034 4034 pThis->aCSR[7] |= 0x0800; /* STINT */ … … 4045 4045 * should be considered lost. 4046 4046 */ 4047 static DECLCALLBACK(void) pcnetR3TimerRestore(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)4047 static DECLCALLBACK(void) pcnetR3TimerRestore(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 4048 4048 { 4049 4049 PPCNETSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PPCNETSTATE); 4050 RT_NOREF(pTimer,pvUser);4050 Assert(hTimer == pThis->hTimerRestore); RT_NOREF(pvUser); 4051 4051 4052 4052 int rc = PDMDevHlpCritSectEnter(pDevIns, &pThis->CritSect, VERR_SEM_BUSY); … … 4056 4056 if (pThis->cLinkDownReported <= PCNET_MAX_LINKDOWN_REPORTED) 4057 4057 { 4058 rc = PDMDevHlpTimerSetMillies(pDevIns, pThis->hTimerRestore, 1500);4058 rc = PDMDevHlpTimerSetMillies(pDevIns, hTimer, 1500); 4059 4059 AssertRC(rc); 4060 4060 } -
trunk/src/VBox/Devices/Network/DevVirtioNet.cpp
r87760 r87767 625 625 * @callback_method_impl{FNTMTIMERDEV, Link Up Timer handler.} 626 626 */ 627 static DECLCALLBACK(void) vnetR3LinkUpTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)627 static DECLCALLBACK(void) vnetR3LinkUpTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 628 628 { 629 629 PVNETSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PVNETSTATE); 630 630 PVNETSTATECC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PVNETSTATECC); 631 RT_NOREF( pTimer, pvUser);631 RT_NOREF(hTimer, pvUser); 632 632 633 633 int rc = vnetR3CsEnter(pDevIns, pThis, VERR_SEM_BUSY); … … 1509 1509 * @callback_method_impl{FNTMTIMERDEV, Transmit Delay Timer handler.} 1510 1510 */ 1511 static DECLCALLBACK(void) vnetR3TxTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)1511 static DECLCALLBACK(void) vnetR3TxTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1512 1512 { 1513 1513 PVNETSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PVNETSTATE); 1514 1514 PVNETSTATECC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PVNETSTATECC); 1515 RT_NOREF( pTimer, pvUser);1515 RT_NOREF(hTimer, pvUser); 1516 1516 1517 1517 uint32_t u32MicroDiff = (uint32_t)((RTTimeNanoTS() - pThis->u64NanoTS) / 1000); … … 1527 1527 // Log3(("%s vnetR3TxTimer: Expired\n", INSTANCE(pThis))); 1528 1528 vnetR3TransmitPendingPackets(pDevIns, pThis, pThisCC, pThisCC->pTxQueue, false /*fOnWorkerThread*/); 1529 if (RT_FAILURE(vnetR3CsEnter(pDevIns, pThis, VERR_SEM_BUSY))) 1530 { 1531 LogRel(("vnetR3TxTimer: Failed to enter critical section!/n")); 1532 return; 1533 } 1529 int rc = vnetR3CsEnter(pDevIns, pThis, VERR_SEM_BUSY) 1530 AssertLogRelRCReturnVoid(rc); 1534 1531 vringSetNotification(pDevIns, &pThisCC->pTxQueue->VRing, true); 1535 1532 vnetR3CsLeave(pDevIns, pThis); -
trunk/src/VBox/Devices/Network/DevVirtioNet_1_0.cpp
r87760 r87767 2446 2446 * @callback_method_impl{FNTMTIMERDEV, Link Up Timer handler.} 2447 2447 */ 2448 static DECLCALLBACK(void) virtioNetR3LinkUpTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)2448 static DECLCALLBACK(void) virtioNetR3LinkUpTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 2449 2449 { 2450 2450 PVIRTIONET pThis = PDMDEVINS_2_DATA(pDevIns, PVIRTIONET); 2451 2451 PVIRTIONETCC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, PVIRTIONETCC); 2452 RT_NOREF( pTimer, pvUser);2452 RT_NOREF(hTimer, pvUser); 2453 2453 2454 2454 SET_LINK_UP(pThis); -
trunk/src/VBox/Devices/PC/DevACPI.cpp
r87760 r87767 1172 1172 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, pThis->hPmTimer)); 1173 1173 1174 pThis->uPmTimerVal = ASMMultU64ByU32DivByU32(u64Elapsed, PM_TMR_FREQ, 1175 PDMDevHlpTimerGetFreq(pDevIns, pThis->hPmTimer)) 1174 pThis->uPmTimerVal = ASMMultU64ByU32DivByU32(u64Elapsed, PM_TMR_FREQ, PDMDevHlpTimerGetFreq(pDevIns, pThis->hPmTimer)) 1176 1175 & TMR_VAL_MASK; 1177 1176 1178 if ( (pThis->uPmTimerVal & TMR_VAL_MSB) != msb)1177 if ((pThis->uPmTimerVal & TMR_VAL_MSB) != msb) 1179 1178 acpiUpdatePm1a(pDevIns, pThis, pThis->pm1a_sts | TMR_STS, pThis->pm1a_en); 1180 1179 } … … 1185 1184 * @callback_method_impl{FNTMTIMERDEV, PM Timer callback} 1186 1185 */ 1187 static DECLCALLBACK(void) acpiR3PmTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)1186 static DECLCALLBACK(void) acpiR3PmTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1188 1187 { 1189 1188 PACPISTATE pThis = PDMDEVINS_2_DATA(pDevIns, PACPISTATE); 1190 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, pThis->hPmTimer)); 1191 RT_NOREF(pTimer, pvUser); 1189 Assert(pThis->hPmTimer == hTimer); 1190 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, hTimer)); 1191 RT_NOREF(pvUser); 1192 1192 1193 1193 DEVACPI_LOCK_R3(pDevIns, pThis); … … 1195 1195 pThis->pm1a_sts, (pThis->pm1a_sts & TMR_STS) != 0, 1196 1196 pThis->pm1a_en, (pThis->pm1a_en & TMR_EN) != 0)); 1197 uint64_t u64Now = PDMDevHlpTimerGet(pDevIns, pThis->hPmTimer);1198 acpiPmTimerUpdate(pDevIns, pThis, u64Now);1197 uint64_t tsNow = PDMDevHlpTimerGet(pDevIns, hTimer); 1198 acpiPmTimerUpdate(pDevIns, pThis, tsNow); 1199 1199 DEVACPI_UNLOCK(pDevIns, pThis); 1200 1200 1201 acpiR3PmTimerReset(pDevIns, pThis, u64Now);1201 acpiR3PmTimerReset(pDevIns, pThis, tsNow); 1202 1202 } 1203 1203 -
trunk/src/VBox/Devices/PC/DevHPET.cpp
r87760 r87767 1104 1104 } 1105 1105 1106 /** 1107 * Device timer callback function. 1108 * 1109 * @param pDevIns Device instance of the device which registered the timer. 1110 * @param pTimer The timer handle. 1111 * @param pvUser Pointer to the HPET timer state. 1112 */ 1113 static DECLCALLBACK(void) hpetR3Timer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 1106 1107 /** 1108 * @callback_method_impl{FNTMTIMERDEV, Device timer callback function.} 1109 */ 1110 static DECLCALLBACK(void) hpetR3Timer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1114 1111 { 1115 1112 PHPET pThis = PDMDEVINS_2_DATA(pDevIns, PHPET); … … 1118 1115 uint64_t u64CurTick = hpetGetTicks(pDevIns, pThis); 1119 1116 uint64_t u64Diff; 1120 RT_NOREF(pTimer);1117 Assert(hTimer == pHpetTimer->hTimer); 1121 1118 1122 1119 if (pHpetTimer->u64Config & HPET_TN_PERIODIC) … … 1133 1130 Log4(("HPET: periodic: next in %llu\n", hpetTicksToNs(pThis, u64Diff))); 1134 1131 STAM_REL_COUNTER_INC(&pHpetTimer->StatSetTimer); 1135 PDMDevHlpTimerSetNano(pDevIns, pHpetTimer->hTimer, hpetTicksToNs(pThis, u64Diff));1132 PDMDevHlpTimerSetNano(pDevIns, hTimer, hpetTicksToNs(pThis, u64Diff)); 1136 1133 } 1137 1134 else … … 1147 1144 { 1148 1145 u64Diff = hpetComputeDiff(pHpetTimer, u64CurTick); 1149 PDMDevHlpTimerSetNano(pDevIns, pHpetTimer->hTimer, hpetTicksToNs(pThis, u64Diff));1146 PDMDevHlpTimerSetNano(pDevIns, hTimer, hpetTicksToNs(pThis, u64Diff)); 1150 1147 pHpetTimer->u8Wrap = 0; 1151 1148 } -
trunk/src/VBox/Devices/PC/DevPit-i8254.cpp
r87760 r87767 1114 1114 * @callback_method_impl{FNTMTIMERDEV, User argument points to the PIT channel state.} 1115 1115 */ 1116 static DECLCALLBACK(void) pitR3Timer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)1116 static DECLCALLBACK(void) pitR3Timer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1117 1117 { 1118 1118 PPITSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PPITSTATE); 1119 1119 PPITCHANNEL pChan = (PPITCHANNEL)pvUser; 1120 RT_NOREF(pTimer);1121 1120 STAM_PROFILE_ADV_START(&pThis->StatPITHandler, a); 1121 Assert(hTimer == pChan->hTimer); 1122 1122 1123 1123 Log(("pitR3Timer\n")); 1124 1124 Assert(PDMDevHlpCritSectIsOwner(pDevIns, &pThis->CritSect)); 1125 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, pChan->hTimer));1126 1127 pitR3IrqTimerUpdate(pDevIns, pThis, pChan, pChan->next_transition_time, PDMDevHlpTimerGet(pDevIns, pChan->hTimer), true);1125 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, hTimer)); 1126 1127 pitR3IrqTimerUpdate(pDevIns, pThis, pChan, pChan->next_transition_time, PDMDevHlpTimerGet(pDevIns, hTimer), true); 1128 1128 1129 1129 STAM_PROFILE_ADV_STOP(&pThis->StatPITHandler, a); -
trunk/src/VBox/Devices/PC/DevRTC.cpp
r87760 r87767 584 584 * @callback_method_impl{FNTMTIMERDEV, periodic} 585 585 */ 586 static DECLCALLBACK(void) rtcTimerPeriodic(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 587 { 588 RT_NOREF2(pTimer, pvUser); 586 static DECLCALLBACK(void) rtcTimerPeriodic(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 587 { 589 588 PRTCSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PRTCSTATE); 590 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, pThis->hPeriodicTimer)); 589 Assert(hTimer == pThis->hPeriodicTimer); 590 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, hTimer)); 591 591 Assert(PDMDevHlpCritSectIsOwner(pDevIns, pDevIns->CTX_SUFF(pCritSectRo))); 592 RT_NOREF2(hTimer, pvUser); 592 593 593 594 rtc_timer_update(pDevIns, pThis, pThis->next_periodic_time); … … 666 667 * @callback_method_impl{FNTMTIMERDEV, Second timer.} 667 668 */ 668 static DECLCALLBACK(void) rtcR3TimerSecond(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)669 static DECLCALLBACK(void) rtcR3TimerSecond(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 669 670 { 670 671 PRTCSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PRTCSTATE); … … 672 673 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, pThis->hPeriodicTimer)); 673 674 Assert(PDMDevHlpCritSectIsOwner(pDevIns, pDevIns->CTX_SUFF(pCritSectRo))); 674 RT_NOREF(pvUser, pTimer);675 RT_NOREF(pvUser, hTimer); 675 676 676 677 /* if the oscillator is not in normal operation, we do not update */ … … 728 729 * @callback_method_impl{FNTMTIMERDEV, Second2 timer.} 729 730 */ 730 static DECLCALLBACK(void) rtcR3TimerSecond2(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)731 static DECLCALLBACK(void) rtcR3TimerSecond2(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 731 732 { 732 733 PRTCSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PRTCSTATE); … … 734 735 Assert(PDMDevHlpTimerIsLockOwner(pDevIns, pThis->hPeriodicTimer)); 735 736 Assert(PDMDevHlpCritSectIsOwner(pDevIns, pDevIns->CTX_SUFF(pCritSectRo))); 736 RT_NOREF2( pTimer, pvUser);737 RT_NOREF2(hTimer, pvUser); 737 738 738 739 if (!(pThis->cmos_data[RTC_REG_B] & REG_B_SET)) -
trunk/src/VBox/Devices/Serial/UartCore.cpp
r87760 r87767 1499 1499 * @callback_method_impl{FNTMTIMERDEV, Fifo timer function.} 1500 1500 */ 1501 static DECLCALLBACK(void) uartR3RcvFifoTimeoutTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)1502 { 1503 LogFlowFunc(("pDevIns=%#p pTimer=%#p pvUser=%#p\n", pDevIns, pTimer, pvUser));1501 static DECLCALLBACK(void) uartR3RcvFifoTimeoutTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1502 { 1503 LogFlowFunc(("pDevIns=%#p hTimer=%#p pvUser=%#p\n", pDevIns, hTimer, pvUser)); 1504 1504 PUARTCORER3 pThisCC = (PUARTCORECC)pvUser; 1505 1505 PUARTCORE pThis = pThisCC->pShared; 1506 RT_NOREF( pTimer);1506 RT_NOREF(hTimer); 1507 1507 1508 1508 if (pThis->FifoRecv.cbUsed < pThis->FifoRecv.cbItl) … … 1514 1514 1515 1515 /** 1516 * @callback_method_impl{FNTMTIMERDEV, TX timer function when there is no driver connected for draining the THR/FIFO.} 1517 */ 1518 static DECLCALLBACK(void) uartR3TxUnconnectedTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 1519 { 1520 LogFlowFunc(("pDevIns=%#p pTimer=%#p pvUser=%#p\n", pDevIns, pTimer, pvUser)); 1516 * @callback_method_impl{FNTMTIMERDEV, 1517 * TX timer function when there is no driver connected for 1518 * draining the THR/FIFO.} 1519 */ 1520 static DECLCALLBACK(void) uartR3TxUnconnectedTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1521 { 1522 LogFlowFunc(("pDevIns=%#p hTimer=%#p pvUser=%#p\n", pDevIns, hTimer, pvUser)); 1521 1523 PUARTCORER3 pThisCC = (PUARTCORECC)pvUser; 1522 1524 PUARTCORE pThis = pThisCC->pShared; 1523 RT_NOREF(pTimer); 1524 1525 VBOXSTRICTRC rc1 = PDMDevHlpTimerLockClock2(pDevIns, pThis->hTimerTxUnconnected, &pThis->CritSect, 1526 VINF_SUCCESS /* must get it */); 1525 Assert(hTimer == pThis->hTimerTxUnconnected); 1526 1527 VBOXSTRICTRC rc1 = PDMDevHlpTimerLockClock2(pDevIns, hTimer, &pThis->CritSect, VINF_SUCCESS /* must get it */); 1527 1528 AssertRCReturnVoid(VBOXSTRICTRC_VAL(rc1)); 1528 1529 … … 1566 1567 1567 1568 if (cbRead == 1) 1568 PDMDevHlpTimerSetRelative(pDevIns, pThis->hTimerTxUnconnected, pThis->cSymbolXferTicks, NULL);1569 PDMDevHlpTimerSetRelative(pDevIns, hTimer, pThis->cSymbolXferTicks, NULL); 1569 1570 else 1570 1571 { … … 1573 1574 } 1574 1575 1575 PDMDevHlpTimerUnlockClock2(pDevIns, pThis->hTimerTxUnconnected, &pThis->CritSect);1576 PDMDevHlpTimerUnlockClock2(pDevIns, hTimer, &pThis->CritSect); 1576 1577 } 1577 1578 -
trunk/src/VBox/Devices/Storage/DevAHCI.cpp
r87760 r87767 963 963 * @callback_method_impl{FNTMTIMERDEV, Assert irq when an CCC timeout occurs.} 964 964 */ 965 static DECLCALLBACK(void) ahciCccTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)966 { 967 RT_NOREF(pDevIns, pTimer);965 static DECLCALLBACK(void) ahciCccTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 966 { 967 RT_NOREF(pDevIns, hTimer); 968 968 PAHCI pThis = (PAHCI)pvUser; 969 969 -
trunk/src/VBox/Devices/Storage/DevFdc.cpp
r87760 r87767 2214 2214 * @callback_method_impl{FNTMTIMERDEV} 2215 2215 */ 2216 static DECLCALLBACK(void) fdcTimerCallback(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)2216 static DECLCALLBACK(void) fdcTimerCallback(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 2217 2217 { 2218 2218 fdctrl_t *fdctrl = PDMDEVINS_2_DATA(pDevIns, fdctrl_t *); 2219 2219 fdrive_t *cur_drv = get_cur_drv(fdctrl); 2220 RT_NOREF( pTimer, pvUser);2220 RT_NOREF(hTimer, pvUser); 2221 2221 2222 2222 /* Pretend we are spinning. … … 2298 2298 * @callback_method_impl{FNTMTIMERDEV} 2299 2299 */ 2300 static DECLCALLBACK(void) fdcTransferDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)2300 static DECLCALLBACK(void) fdcTransferDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 2301 2301 { 2302 2302 fdctrl_t *fdctrl = PDMDEVINS_2_DATA(pDevIns, fdctrl_t *); 2303 RT_NOREF(pvUser, pTimer);2303 RT_NOREF(pvUser, hTimer); 2304 2304 fdctrl_stop_transfer_now(fdctrl, fdctrl->st0, fdctrl->st1, fdctrl->st2); 2305 2305 } … … 2309 2309 * @callback_method_impl{FNTMTIMERDEV} 2310 2310 */ 2311 static DECLCALLBACK(void) fdcIrqDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)2311 static DECLCALLBACK(void) fdcIrqDelayTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 2312 2312 { 2313 2313 fdctrl_t *fdctrl = PDMDEVINS_2_DATA(pDevIns, fdctrl_t *); 2314 RT_NOREF(pvUser, pTimer);2314 RT_NOREF(pvUser, hTimer); 2315 2315 fdctrl_raise_irq_now(fdctrl, fdctrl->st0); 2316 2316 } -
trunk/src/VBox/Devices/USB/DevOHCI.cpp
r87760 r87767 904 904 static int ohciR3InDoneQueueFind(POHCICC pThisCC, uint32_t GCPhysTD); 905 905 # endif 906 static DECLCALLBACK(void) ohciR3LoadReattachDevices(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser);907 906 #endif /* IN_RING3 */ 908 907 RT_C_DECLS_END … … 5804 5803 5805 5804 /** 5805 * @callback_method_impl{FNTMTIMERDEV, 5806 * Reattaches devices after a saved state load.} 5807 */ 5808 static DECLCALLBACK(void) ohciR3LoadReattachDevices(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 5809 { 5810 POHCICC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, POHCICC); 5811 POHCILOAD pLoad = pThisCC->pLoad; 5812 LogFlow(("ohciR3LoadReattachDevices:\n")); 5813 Assert(hTimer == pLoad->hTimer); RT_NOREF(pvUser); 5814 5815 /* 5816 * Reattach devices. 5817 */ 5818 for (unsigned i = 0; i < pLoad->cDevs; i++) 5819 VUSBIRhAttachDevice(pThisCC->RootHub.pIRhConn, pLoad->apDevs[i]); 5820 5821 /* 5822 * Cleanup. 5823 */ 5824 PDMDevHlpTimerDestroy(pDevIns, hTimer); 5825 pLoad->hTimer = NIL_TMTIMERHANDLE; 5826 PDMDevHlpMMHeapFree(pDevIns, pLoad); 5827 pThisCC->pLoad = NULL; 5828 } 5829 5830 5831 /** 5806 5832 * Done state load operation. 5807 5833 * … … 5830 5856 5831 5857 return VINF_SUCCESS; 5832 }5833 5834 5835 /**5836 * @callback_method_impl{FNTMTIMERDEV,5837 * Reattaches devices after a saved state load.}5838 */5839 static DECLCALLBACK(void) ohciR3LoadReattachDevices(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)5840 {5841 POHCICC pThisCC = PDMDEVINS_2_DATA_CC(pDevIns, POHCICC);5842 POHCILOAD pLoad = pThisCC->pLoad;5843 LogFlow(("ohciR3LoadReattachDevices:\n"));5844 RT_NOREF(pTimer, pvUser);5845 5846 /*5847 * Reattach devices.5848 */5849 for (unsigned i = 0; i < pLoad->cDevs; i++)5850 VUSBIRhAttachDevice(pThisCC->RootHub.pIRhConn, pLoad->apDevs[i]);5851 5852 /*5853 * Cleanup.5854 */5855 PDMDevHlpTimerDestroy(pDevIns, pLoad->hTimer);5856 pLoad->hTimer = NIL_TMTIMERHANDLE;5857 PDMDevHlpMMHeapFree(pDevIns, pLoad);5858 pThisCC->pLoad = NULL;5859 5858 } 5860 5859 -
trunk/src/VBox/Devices/USB/VUSBDevice.cpp
r87762 r87767 1372 1372 1373 1373 /** 1374 * Timer callback for doing reset completion. 1375 * 1376 * @param pUsbIns The USB device instance. 1377 * @param pTimer The timer instance. 1378 * @param pvUser The VUSB device data. 1379 * @thread EMT 1380 */ 1381 static DECLCALLBACK(void) vusbDevResetDoneTimer(PPDMUSBINS pUsbIns, PTMTIMER pTimer, void *pvUser) 1382 { 1383 RT_NOREF(pUsbIns, pTimer); 1374 * @callback_method_impl{FNTMTIMERUSB, 1375 * Timer callback for doing reset completion.} 1376 */ 1377 static DECLCALLBACK(void) vusbDevResetDoneTimer(PPDMUSBINS pUsbIns, TMTIMERHANDLE hTimer, void *pvUser) 1378 { 1384 1379 PVUSBDEV pDev = (PVUSBDEV)pvUser; 1385 1380 PVUSBRESETARGS pArgs = (PVUSBRESETARGS)pDev->pvArgs; 1386 1381 Assert(pDev->pUsbIns == pUsbIns); 1382 RT_NOREF(pUsbIns, hTimer); 1387 1383 1388 1384 AssertPtr(pArgs); -
trunk/src/VBox/Devices/VMMDev/VMMDev.cpp
r87766 r87767 511 511 * @remarks Does not take the VMMDev critsect. 512 512 */ 513 static DECLCALLBACK(void) vmmDevHeartbeatFlatlinedTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 514 { 515 RT_NOREF(pDevIns, pTimer); 513 static DECLCALLBACK(void) vmmDevHeartbeatFlatlinedTimer(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 514 { 516 515 PVMMDEV pThis = (PVMMDEV)pvUser; 516 Assert(hTimer == pThis->hFlatlinedTimer); 517 517 if (pThis->fHeartbeatActive) 518 518 { 519 uint64_t cNsElapsed = PDMDevHlpTimerGetNano(pDevIns, pThis->hFlatlinedTimer) - pThis->nsLastHeartbeatTS;519 uint64_t cNsElapsed = PDMDevHlpTimerGetNano(pDevIns, hTimer) - pThis->nsLastHeartbeatTS; 520 520 if ( !pThis->fFlatlined 521 521 && cNsElapsed >= pThis->cNsHeartbeatInterval) -
trunk/src/VBox/ExtPacks/BusMouseSample/DevBusMouse.cpp
r87760 r87767 237 237 * @callback_method_impl{FNTMTIMERDEV} 238 238 */ 239 static DECLCALLBACK(void) bmsR3TimerCallback(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)239 static DECLCALLBACK(void) bmsR3TimerCallback(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 240 240 { 241 241 PBMSSTATE pThis = PDMDEVINS_2_DATA(pDevIns, PBMSSTATE); 242 242 PBMSSTATER3 pThisCC = PDMDEVINS_2_DATA(pDevIns, PBMSSTATER3); 243 243 uint8_t irq_bit; 244 RT_NOREF(pvUser, pTimer); 244 RT_NOREF(pvUser, hTimer); 245 Assert(hTimer == pThis->hMouseTimer); 245 246 246 247 /* Toggle the IRQ line if interrupts are enabled. */ … … 283 284 284 285 /* Re-arm the timer. */ 285 PDMDevHlpTimerSetMillies(pDevIns, pThis->hMouseTimer, pThis->cTimerPeriodMs);286 PDMDevHlpTimerSetMillies(pDevIns, hTimer, pThis->cTimerPeriodMs); 286 287 } 287 288 -
trunk/src/VBox/VMM/VMMR3/APIC.cpp
r87760 r87767 1112 1112 * thread. 1113 1113 */ 1114 static DECLCALLBACK(void) apicR3TimerCallback(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)1114 static DECLCALLBACK(void) apicR3TimerCallback(PPDMDEVINS pDevIns, TMTIMERHANDLE hTimer, void *pvUser) 1115 1115 { 1116 1116 PVMCPU pVCpu = (PVMCPU)pvUser; … … 1119 1119 Assert(pVCpu); 1120 1120 LogFlow(("APIC%u: apicR3TimerCallback\n", pVCpu->idCpu)); 1121 RT_NOREF(pDevIns, pTimer, pApicCpu);1121 RT_NOREF(pDevIns, hTimer, pApicCpu); 1122 1122 1123 1123 PXAPICPAGE pXApicPage = VMCPU_TO_XAPICPAGE(pVCpu); -
trunk/src/VBox/VMM/VMMR3/TM.cpp
r87766 r87767 2303 2303 switch (pTimer->enmType) 2304 2304 { 2305 case TMTIMERTYPE_DEV: pTimer->u.Dev.pfnTimer(pTimer->u.Dev.pDevIns, pTimer , pTimer->pvUser); break;2306 case TMTIMERTYPE_USB: pTimer->u.Usb.pfnTimer(pTimer->u.Usb.pUsbIns, pTimer , pTimer->pvUser); break;2307 case TMTIMERTYPE_DRV: pTimer->u.Drv.pfnTimer(pTimer->u.Drv.pDrvIns, pTimer , pTimer->pvUser); break;2305 case TMTIMERTYPE_DEV: pTimer->u.Dev.pfnTimer(pTimer->u.Dev.pDevIns, pTimer->hSelf, pTimer->pvUser); break; 2306 case TMTIMERTYPE_USB: pTimer->u.Usb.pfnTimer(pTimer->u.Usb.pUsbIns, pTimer->hSelf, pTimer->pvUser); break; 2307 case TMTIMERTYPE_DRV: pTimer->u.Drv.pfnTimer(pTimer->u.Drv.pDrvIns, pTimer->hSelf, pTimer->pvUser); break; 2308 2308 case TMTIMERTYPE_INTERNAL: pTimer->u.Internal.pfnTimer(pVM, pTimer->hSelf, pTimer->pvUser); break; 2309 2309 default: … … 2487 2487 switch (pTimer->enmType) 2488 2488 { 2489 case TMTIMERTYPE_DEV: pTimer->u.Dev.pfnTimer(pTimer->u.Dev.pDevIns, pTimer , pTimer->pvUser); break;2490 case TMTIMERTYPE_USB: pTimer->u.Usb.pfnTimer(pTimer->u.Usb.pUsbIns, pTimer , pTimer->pvUser); break;2491 case TMTIMERTYPE_DRV: pTimer->u.Drv.pfnTimer(pTimer->u.Drv.pDrvIns, pTimer , pTimer->pvUser); break;2489 case TMTIMERTYPE_DEV: pTimer->u.Dev.pfnTimer(pTimer->u.Dev.pDevIns, pTimer->hSelf, pTimer->pvUser); break; 2490 case TMTIMERTYPE_USB: pTimer->u.Usb.pfnTimer(pTimer->u.Usb.pUsbIns, pTimer->hSelf, pTimer->pvUser); break; 2491 case TMTIMERTYPE_DRV: pTimer->u.Drv.pfnTimer(pTimer->u.Drv.pDrvIns, pTimer->hSelf, pTimer->pvUser); break; 2492 2492 case TMTIMERTYPE_INTERNAL: pTimer->u.Internal.pfnTimer(pVM, pTimer->hSelf, pTimer->pvUser); break; 2493 2493 default:
Note:
See TracChangeset
for help on using the changeset viewer.

