ReactOS 0.4.17-dev-1281-g065abb3
ControllerResetMachine Class Reference

#include <crsm.h>

Inheritance diagram for ControllerResetMachine:
Collaboration diagram for ControllerResetMachine:

Public Member Functions

VOID Initialize (_In_ UcxController *Controller)
 
UcxController * Controller () const
 
- Public Member Functions inherited from SmMachine< ControllerResetMachine, CrEvent >
VOID SmInitialize (_In_ const State *Initial)
 
BOOLEAN SmPost (_In_ CrEvent Ev)
 
VOID SmContinueOnPassive ()
 
const State * SmCurrent () const
 
ULONG SmDepth () const
 
const State * SmFrame (_In_ ULONG Index) const
 
BOOLEAN SmIsIn (_In_ const State *Ancestor) const
 
BOOLEAN SmIsPaused () const
 
BOOLEAN SmIsWaitingForTimer () const
 
ULONG SmUnexpectedCount () const
 

Static Public Attributes

static const SM_EVENT_INFO EventInfo []
 

Private Member Functions

VOID SmReference ()
 
VOID SmDereference ()
 
VOID SmQueuePassive ()
 
SM_RESULT OnRootHubOn (_In_ CrEvent Event)
 
SM_RESULT OnRootHubOff (_In_ CrEvent Event)
 m_ResetSeen: a reset done while off was caught up. m_ResetPending: a reset is owed.
 
SM_RESULT OnPreparingDevicesOff (_In_ CrEvent Event)
 
SM_RESULT OnResetting (_In_ CrEvent Event)
 
SM_RESULT OnDrainingReferences (_In_ CrEvent Event)
 
SM_RESULT OnPreparingDevices (_In_ CrEvent Event)
 
SM_RESULT OnResettingController (_In_ CrEvent Event)
 
SM_RESULT OnAwaitingResetDone (_In_ CrEvent Event)
 
SM_RESULT OnAwaitingHubReset (_In_ CrEvent Event)
 
SM_RESULT OnFailed (_In_ CrEvent Event)
 
SM_RESULT OnFailedOn (_In_ CrEvent Event)
 
SM_RESULT OnFailedOff (_In_ CrEvent Event)
 
SM_RESULT EnterDrainingReferences ()
 
SM_RESULT EnterPreparingDevices ()
 
SM_RESULT EnterResettingController ()
 
SM_RESULT StartReset (_In_ BOOLEAN ForHub)
 
SM_RESULT EndResetForHub ()
 
SM_RESULT PowerDown (_In_ BOOLEAN ResetSeen)
 
VOID ReferenceController ()
 
VOID DereferenceController ()
 
VOID QueuePassiveWork ()
 
VOID HoldDeviceRequests ()
 
VOID ReleaseDeviceRequests ()
 
VOID MarkResetInProgress ()
 
VOID MarkResetFinished ()
 
VOID FailRootHubIo ()
 
VOID UnblockRootHubTraffic ()
 
VOID DropResetBlock ()
 
VOID PrepareDevicesForReset ()
 
VOID NotifyDevicesResetDone ()
 
VOID ResetController ()
 
VOID CompleteHubReset (_In_ BOOLEAN Succeeded)
 
VOID SignalPortChange ()
 
VOID AllowRootHubPowerDown ()
 
VOID LetResetCompletionProceed ()
 
VOID ReleaseResetCompleteWaiter ()
 

Private Attributes

UcxController * m_Controller
 
BOOLEAN m_ForHub
 
BOOLEAN m_ResetPending
 
BOOLEAN m_ResetSeen
 

Static Private Attributes

static const State RootHubOn
 
static const State RootHubOff
 
static const State PreparingDevicesOff
 
static const State Resetting
 
static const State DrainingReferences
 
static const State PreparingDevices
 
static const State ResettingController
 
static const State AwaitingResetDone
 
static const State AwaitingHubReset
 
static const State Failed
 
static const State FailedOn
 
static const State FailedOff
 

Friends

class SmMachine< ControllerResetMachine, CrEvent >
 

Additional Inherited Members

- Public Types inherited from SmMachine< ControllerResetMachine, CrEvent >
typedef SmState< ControllerResetMachine, CrEvent > State
 
- Protected Member Functions inherited from SmMachine< ControllerResetMachine, CrEvent >
VOID SmBeginPause ()
 
VOID SmDiscardQueued (_In_ CrEvent Ev)
 
BOOLEAN SmAccepts (_In_ CrEvent Ev)
 
VOID SmReference ()
 
VOID SmDereference ()
 
VOID SmQueuePassive ()
 
VOID SmOnDequeue (_In_ CrEvent Ev)
 
VOID SmStateChanged ()
 
BOOLEAN SmCancelTimer ()
 
- Static Protected Member Functions inherited from SmMachine< ControllerResetMachine, CrEvent >
static SM_RESULT SmMakeResult (_In_ SM_RESULT_KIND Kind, _In_ USHORT Ev, _In_opt_ const VOID *Target)
 
static SM_RESULT SmHandled ()
 
static SM_RESULT SmUnhandled ()
 
static SM_RESULT SmTransition (_In_ const State *Target)
 
static SM_RESULT SmPaused ()
 
static SM_RESULT SmCall (_In_ const State *Start)
 
static SM_RESULT SmReturn (_In_ CrEvent Ev)
 
- Static Protected Attributes inherited from SmMachine< ControllerResetMachine, CrEvent >
static const BOOLEAN SmCompletionsFirst
 
static const USHORT SmTimerEventId
 

Detailed Description

Definition at line 33 of file crsm.h.

Member Function Documentation

◆ AllowRootHubPowerDown()

VOID ControllerResetMachine::AllowRootHubPowerDown ( )
private

Definition at line 242 of file hostreset.cpp.

243{
246}
UcxController * m_Controller
Definition: crsm.h:152
BOOLEAN m_WaitOnResetComplete
Definition: hostctl.h:322
KEVENT m_RootHubMayExitD0
Definition: hostctl.h:318
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define KeSetEvent(pEvt, foo, foo2)
Definition: env_spec_w32.h:476
#define IO_NO_INCREMENT
Definition: iotypes.h:598

Referenced by OnFailedOn(), and PowerDown().

◆ CompleteHubReset()

VOID ControllerResetMachine::CompleteHubReset ( _In_ BOOLEAN  Succeeded)
private

Definition at line 228 of file hostreset.cpp.

230{
231 DPRINT("Controller %p completing hub reset request, success %u\n", m_Controller, Succeeded);
233}
UcxRootHub * m_RootHub
Definition: hostctl.h:302
VOID FinishPortResetRequest(_In_ BOOLEAN Succeeded)
Definition: rhub.cpp:500
#define DPRINT
Definition: sndvol32.h:73

Referenced by EndResetForHub(), and OnFailedOn().

◆ Controller()

UcxController * ControllerResetMachine::Controller ( ) const
inline

Definition at line 43 of file crsm.h.

44 {
45 return m_Controller;
46 }

Referenced by Initialize().

◆ DereferenceController()

VOID ControllerResetMachine::DereferenceController ( )
private

Definition at line 152 of file hostreset.cpp.

153{
155}
UCXCONTROLLER m_Handle
Definition: hostctl.h:287
#define WdfObjectDereference(Handle)
Definition: wdfobject.h:826

Referenced by SmDereference().

◆ DropResetBlock()

VOID ControllerResetMachine::DropResetBlock ( )
private

Definition at line 202 of file hostreset.cpp.

203{
205}
VOID UnblockReset()
Definition: hostctl.cpp:522

Referenced by EnterDrainingReferences().

◆ EndResetForHub()

SM_RESULT ControllerResetMachine::EndResetForHub ( )
private

Definition at line 357 of file crsm.cpp.

358{
362 return SmTransition(&RootHubOn);
363}
static const State RootHubOn
Definition: crsm.h:52
VOID CompleteHubReset(_In_ BOOLEAN Succeeded)
Definition: hostreset.cpp:228
static SM_RESULT SmTransition(_In_ const State *Target)
Definition: smengine.h:194

Referenced by OnAwaitingHubReset(), and OnResettingController().

◆ EnterDrainingReferences()

SM_RESULT ControllerResetMachine::EnterDrainingReferences ( )
private

Definition at line 197 of file crsm.cpp.

◆ EnterPreparingDevices()

SM_RESULT ControllerResetMachine::EnterPreparingDevices ( )
private

Definition at line 217 of file crsm.cpp.

218{
220 return SmHandled();
221}

◆ EnterResettingController()

SM_RESULT ControllerResetMachine::EnterResettingController ( )
private

Definition at line 234 of file crsm.cpp.

235{
237 return SmHandled();
238}

◆ FailRootHubIo()

VOID ControllerResetMachine::FailRootHubIo ( )
private

Definition at line 190 of file hostreset.cpp.

191{
193}
VOID FailIo()
Definition: rhub.cpp:477

Referenced by EnterDrainingReferences(), OnAwaitingHubReset(), OnRootHubOff(), and OnRootHubOn().

◆ HoldDeviceRequests()

VOID ControllerResetMachine::HoldDeviceRequests ( )
private

Definition at line 166 of file hostreset.cpp.

167{
168 WdfIoQueueStop(m_Controller->m_PendDuringResetQueue, NULL, NULL);
169}
WDFQUEUE m_PendDuringResetQueue
Definition: hostctl.h:296
#define NULL
Definition: types.h:112

Referenced by EnterDrainingReferences(), and OnAwaitingHubReset().

◆ Initialize()

VOID ControllerResetMachine::Initialize ( _In_ UcxController *  Controller)

Definition at line 80 of file crsm.cpp.

82{
87
89}
BOOLEAN m_ResetPending
Definition: crsm.h:154
static const State RootHubOff
Definition: crsm.h:53
BOOLEAN m_ForHub
Definition: crsm.h:153
UcxController * Controller() const
Definition: crsm.h:43
BOOLEAN m_ResetSeen
Definition: crsm.h:155
VOID SmInitialize(_In_ const State *Initial)
Definition: smengine.h:349

Referenced by UcxController::Initialize().

◆ LetResetCompletionProceed()

VOID ControllerResetMachine::LetResetCompletionProceed ( )
private

Definition at line 249 of file hostreset.cpp.

Referenced by OnFailedOff(), and OnRootHubOff().

◆ MarkResetFinished()

VOID ControllerResetMachine::MarkResetFinished ( )
private

Definition at line 184 of file hostreset.cpp.

185{
187}
VOID MarkResetFinished()
Definition: hostctl.cpp:551

Referenced by EndResetForHub(), and OnAwaitingHubReset().

◆ MarkResetInProgress()

VOID ControllerResetMachine::MarkResetInProgress ( )
private

Definition at line 178 of file hostreset.cpp.

179{
181}
VOID MarkResetInProgress()
Definition: hostctl.cpp:542

Referenced by EnterDrainingReferences().

◆ NotifyDevicesResetDone()

VOID ControllerResetMachine::NotifyDevicesResetDone ( )
private

Definition at line 214 of file hostreset.cpp.

215{
217}
VOID NotifyDevicesResetDone()
Definition: hostreset.cpp:110

Referenced by OnPreparingDevicesOff(), and OnResettingController().

◆ OnAwaitingHubReset()

SM_RESULT ControllerResetMachine::OnAwaitingHubReset ( _In_ CrEvent  Event)
private

Definition at line 273 of file crsm.cpp.

275{
276 switch (Event)
277 {
278 case CrEvent::HubRequestsReset:
279 return EndResetForHub();
280
281 case CrEvent::ControllerNeedsReset:
284
285 case CrEvent::RootHubPoweringDown:
288 return PowerDown(TRUE);
289
290 case CrEvent::ControllerLost:
293 return SmTransition(&FailedOn);
294
295 default:
296 return SmUnhandled();
297 }
298}
SM_RESULT EndResetForHub()
Definition: crsm.cpp:357
static const State FailedOn
Definition: crsm.h:62
static const State PreparingDevices
Definition: crsm.h:57
_Check_return_ _In_ DXGK_EVENT_TYPE _In_ ULONG Event
Definition: dispmprt.h:1287

◆ OnAwaitingResetDone()

SM_RESULT ControllerResetMachine::OnAwaitingResetDone ( _In_ CrEvent  Event)
private

Definition at line 263 of file crsm.cpp.

265{
266 if (Event == CrEvent::ControllerResetDone)
268
269 return SmUnhandled();
270}
static const State ResettingController
Definition: crsm.h:58

◆ OnDrainingReferences()

SM_RESULT ControllerResetMachine::OnDrainingReferences ( _In_ CrEvent  Event)
private

Definition at line 207 of file crsm.cpp.

209{
210 if (Event == CrEvent::ResetBlocksCleared)
212
213 return SmUnhandled();
214}

◆ OnFailed()

SM_RESULT ControllerResetMachine::OnFailed ( _In_ CrEvent  Event)
private

Definition at line 301 of file crsm.cpp.

303{
304 if (Event == CrEvent::ControllerNeedsReset)
305 return SmHandled();
306
307 return SmUnhandled();
308}

◆ OnFailedOff()

SM_RESULT ControllerResetMachine::OnFailedOff ( _In_ CrEvent  Event)
private

Definition at line 330 of file crsm.cpp.

332{
333 switch (Event)
334 {
335 case CrEvent::ControllerResetDone:
337 return SmHandled();
338
339 case CrEvent::RootHubPoweredUp:
341 return SmTransition(&FailedOn);
342
343 default:
344 return SmUnhandled();
345 }
346}
VOID ReleaseResetCompleteWaiter()
Definition: hostreset.cpp:255
VOID LetResetCompletionProceed()
Definition: hostreset.cpp:249

◆ OnFailedOn()

SM_RESULT ControllerResetMachine::OnFailedOn ( _In_ CrEvent  Event)
private

Definition at line 311 of file crsm.cpp.

313{
314 switch (Event)
315 {
316 case CrEvent::HubRequestsReset:
318 return SmHandled();
319
320 case CrEvent::RootHubPoweringDown:
322 return SmTransition(&FailedOff);
323
324 default:
325 return SmUnhandled();
326 }
327}
static const State FailedOff
Definition: crsm.h:63

◆ OnPreparingDevices()

SM_RESULT ControllerResetMachine::OnPreparingDevices ( _In_ CrEvent  Event)
private

Definition at line 224 of file crsm.cpp.

226{
227 if (Event == CrEvent::DevicesReady)
229
230 return SmUnhandled();
231}

◆ OnPreparingDevicesOff()

SM_RESULT ControllerResetMachine::OnPreparingDevicesOff ( _In_ CrEvent  Event)
private

Definition at line 173 of file crsm.cpp.

175{
176 if (Event != CrEvent::DevicesReady)
177 return SmUnhandled();
178
182 return SmTransition(&RootHubOff);
183}

◆ OnResetting()

SM_RESULT ControllerResetMachine::OnResetting ( _In_ CrEvent  Event)
private

Definition at line 186 of file crsm.cpp.

188{
189 /* A reset is already under way */
190 if (Event == CrEvent::ControllerNeedsReset)
191 return SmHandled();
192
193 return SmUnhandled();
194}

◆ OnResettingController()

SM_RESULT ControllerResetMachine::OnResettingController ( _In_ CrEvent  Event)
private

Definition at line 241 of file crsm.cpp.

243{
244 switch (Event)
245 {
246 case CrEvent::ControllerResetDone:
249 if (m_ForHub)
250 return EndResetForHub();
251
253
254 case CrEvent::ControllerNeedsReset:
256
257 default:
258 return SmUnhandled();
259 }
260}
static const State AwaitingHubReset
Definition: crsm.h:60
static const State AwaitingResetDone
Definition: crsm.h:59

◆ OnRootHubOff()

SM_RESULT ControllerResetMachine::OnRootHubOff ( _In_ CrEvent  Event)
private

m_ResetSeen: a reset done while off was caught up. m_ResetPending: a reset is owed.

Definition at line 138 of file crsm.cpp.

140{
141 switch (Event)
142 {
143 case CrEvent::ControllerResetDone:
145 if (!m_ResetSeen)
147
149 return SmHandled();
150
151 case CrEvent::ControllerNeedsReset:
154 return SmHandled();
155
156 case CrEvent::RootHubPoweredUp:
158 if (m_ResetPending)
159 return StartReset(FALSE);
160
161 return SmTransition(&RootHubOn);
162
163 case CrEvent::ControllerLost:
165 return SmTransition(&FailedOff);
166
167 default:
168 return SmUnhandled();
169 }
170}
static const State PreparingDevicesOff
Definition: crsm.h:54
SM_RESULT StartReset(_In_ BOOLEAN ForHub)
Definition: crsm.cpp:349

◆ OnRootHubOn()

SM_RESULT ControllerResetMachine::OnRootHubOn ( _In_ CrEvent  Event)
private

Definition at line 110 of file crsm.cpp.

112{
113 switch (Event)
114 {
115 case CrEvent::ControllerLost:
117 return SmTransition(&FailedOn);
118
119 case CrEvent::ControllerNeedsReset:
120 return StartReset(FALSE);
121
122 case CrEvent::HubRequestsReset:
123 return StartReset(TRUE);
124
125 case CrEvent::RootHubPoweringDown:
126 return PowerDown(FALSE);
127
128 default:
129 return SmUnhandled();
130 }
131}

◆ PowerDown()

SM_RESULT ControllerResetMachine::PowerDown ( _In_ BOOLEAN  ResetSeen)
private

Definition at line 366 of file crsm.cpp.

368{
371 m_ResetSeen = ResetSeen;
372 return SmTransition(&RootHubOff);
373}

◆ PrepareDevicesForReset()

VOID ControllerResetMachine::PrepareDevicesForReset ( )
private

Definition at line 208 of file hostreset.cpp.

209{
211}
VOID PrepareDevicesForReset()
Definition: hostreset.cpp:86

Referenced by EnterPreparingDevices().

◆ QueuePassiveWork()

VOID ControllerResetMachine::QueuePassiveWork ( )
private

Definition at line 158 of file hostreset.cpp.

159{
163}
static UCXHUB_WORKITEM_ROUTINE ResetMachinePassiveRoutine
Definition: hostctl.h:389
UcxWorkItem * m_ResetMachineWorkItem
Definition: hostctl.h:316
@ UcxHubWorkItemDefault
Definition: hubucx.h:216
VOID Enqueue(_In_ PUCXHUB_WORKITEM_ROUTINE NewRoutine, _In_opt_ PVOID NewContext, _In_ UCXHUB_WORKITEM_ENQUEUE_OPTIONS Options)
Definition: workitem.cpp:56

Referenced by SmQueuePassive().

◆ ReferenceController()

VOID ControllerResetMachine::ReferenceController ( )
private

Definition at line 146 of file hostreset.cpp.

147{
149}
#define WdfObjectReference(Handle)
Definition: wdfobject.h:803

Referenced by SmReference().

◆ ReleaseDeviceRequests()

VOID ControllerResetMachine::ReleaseDeviceRequests ( )
private

Definition at line 172 of file hostreset.cpp.

173{
174 WdfIoQueueStart(m_Controller->m_PendDuringResetQueue);
175}

Referenced by OnResettingController().

◆ ReleaseResetCompleteWaiter()

VOID ControllerResetMachine::ReleaseResetCompleteWaiter ( )
private

Definition at line 255 of file hostreset.cpp.

Referenced by OnFailedOff(), OnPreparingDevicesOff(), and OnRootHubOff().

◆ ResetController()

VOID ControllerResetMachine::ResetController ( )
private

Definition at line 221 of file hostreset.cpp.

222{
223 DPRINT1("Controller %p being reset\n", m_Controller);
225}
#define DPRINT1
Definition: precomp.h:8
UCX_CONTROLLER_CONFIG m_Config
Definition: hostctl.h:289
PFN_UCX_CONTROLLER_RESET EvtControllerReset

Referenced by EnterResettingController().

◆ SignalPortChange()

VOID ControllerResetMachine::SignalPortChange ( )
private

Definition at line 236 of file hostreset.cpp.

237{
239}
VOID PortChanged()
Definition: rhub.cpp:227

Referenced by OnRootHubOff().

◆ SmDereference()

VOID ControllerResetMachine::SmDereference ( )
private

Definition at line 98 of file crsm.cpp.

99{
101}

◆ SmQueuePassive()

VOID ControllerResetMachine::SmQueuePassive ( )
private

Definition at line 104 of file crsm.cpp.

105{
107}

◆ SmReference()

VOID ControllerResetMachine::SmReference ( )
private

Definition at line 92 of file crsm.cpp.

93{
95}

◆ StartReset()

SM_RESULT ControllerResetMachine::StartReset ( _In_ BOOLEAN  ForHub)
private

Definition at line 349 of file crsm.cpp.

351{
352 m_ForHub = ForHub;
354}
static const State DrainingReferences
Definition: crsm.h:56

Referenced by OnRootHubOff(), and OnRootHubOn().

◆ UnblockRootHubTraffic()

VOID ControllerResetMachine::UnblockRootHubTraffic ( )
private

Definition at line 196 of file hostreset.cpp.

197{
199}
VOID ResumeIo()
Definition: rhub.cpp:485

Referenced by EndResetForHub(), and OnAwaitingHubReset().

Friends And Related Function Documentation

◆ SmMachine< ControllerResetMachine, CrEvent >

Definition at line 1 of file crsm.h.

Member Data Documentation

◆ AwaitingHubReset

const ControllerResetMachine::State ControllerResetMachine::AwaitingHubReset
staticprivate
Initial value:
=
{ &Resetting, "AwaitingHubReset", SM_STATE_TAKES_REQUESTS,
SM_RESULT OnAwaitingHubReset(_In_ CrEvent Event)
Definition: crsm.cpp:273
static const State Resetting
Definition: crsm.h:55
#define SM_STATE_TAKES_REQUESTS
Definition: smengine.h:39

Definition at line 60 of file crsm.h.

Referenced by OnResettingController().

◆ AwaitingResetDone

const ControllerResetMachine::State ControllerResetMachine::AwaitingResetDone
staticprivate
Initial value:
=
SM_RESULT OnAwaitingResetDone(_In_ CrEvent Event)
Definition: crsm.cpp:263

Definition at line 59 of file crsm.h.

Referenced by OnResettingController().

◆ DrainingReferences

const ControllerResetMachine::State ControllerResetMachine::DrainingReferences
staticprivate
Initial value:
=
{ &Resetting, "DrainingReferences", 0,
SM_RESULT OnDrainingReferences(_In_ CrEvent Event)
Definition: crsm.cpp:207
SM_RESULT EnterDrainingReferences()
Definition: crsm.cpp:197

Definition at line 56 of file crsm.h.

Referenced by StartReset().

◆ EventInfo

const SM_EVENT_INFO ControllerResetMachine::EventInfo
static
Initial value:
=
{
{ "ControllerLost", SmEventRequest, FALSE },
{ "HubRequestsReset", SmEventRequest, FALSE },
{ "RootHubPoweredUp", SmEventRequest, FALSE },
{ "RootHubPoweringDown", SmEventRequest, FALSE },
{ "ControllerNeedsReset", SmEventCompletion, TRUE },
{ "ControllerResetDone", SmEventCompletion, TRUE },
{ "ResetBlocksCleared", SmEventCompletion, FALSE },
{ "DevicesReady", SmEventCompletion, FALSE },
}
@ SmEventRequest
Definition: smengine.h:25
@ SmEventCompletion
Definition: smengine.h:24

Definition at line 48 of file crsm.h.

◆ Failed

const ControllerResetMachine::State ControllerResetMachine::Failed
staticprivate
Initial value:
=
SM_RESULT OnFailed(_In_ CrEvent Event)
Definition: crsm.cpp:301

Definition at line 61 of file crsm.h.

◆ FailedOff

const ControllerResetMachine::State ControllerResetMachine::FailedOff
staticprivate
Initial value:
=
SM_RESULT OnFailedOff(_In_ CrEvent Event)
Definition: crsm.cpp:330
static const State Failed
Definition: crsm.h:61

Definition at line 63 of file crsm.h.

Referenced by OnFailedOn(), and OnRootHubOff().

◆ FailedOn

const ControllerResetMachine::State ControllerResetMachine::FailedOn
staticprivate
Initial value:
=
SM_RESULT OnFailedOn(_In_ CrEvent Event)
Definition: crsm.cpp:311

Definition at line 62 of file crsm.h.

Referenced by OnAwaitingHubReset(), OnFailedOff(), and OnRootHubOn().

◆ m_Controller

◆ m_ForHub

BOOLEAN ControllerResetMachine::m_ForHub
private

Definition at line 153 of file crsm.h.

Referenced by Initialize(), OnResettingController(), and StartReset().

◆ m_ResetPending

BOOLEAN ControllerResetMachine::m_ResetPending
private

Definition at line 154 of file crsm.h.

Referenced by Initialize(), OnRootHubOff(), and PowerDown().

◆ m_ResetSeen

BOOLEAN ControllerResetMachine::m_ResetSeen
private

Definition at line 155 of file crsm.h.

Referenced by Initialize(), OnPreparingDevicesOff(), OnRootHubOff(), and PowerDown().

◆ PreparingDevices

const ControllerResetMachine::State ControllerResetMachine::PreparingDevices
staticprivate
Initial value:
=
{ &Resetting, "PreparingDevices", 0,
SM_RESULT OnPreparingDevices(_In_ CrEvent Event)
Definition: crsm.cpp:224
SM_RESULT EnterPreparingDevices()
Definition: crsm.cpp:217

Definition at line 57 of file crsm.h.

Referenced by OnAwaitingHubReset(), and OnDrainingReferences().

◆ PreparingDevicesOff

const ControllerResetMachine::State ControllerResetMachine::PreparingDevicesOff
staticprivate
Initial value:
=
{ NULL, "PreparingDevicesOff", 0,
SM_RESULT OnPreparingDevicesOff(_In_ CrEvent Event)
Definition: crsm.cpp:173

Definition at line 54 of file crsm.h.

Referenced by OnRootHubOff().

◆ Resetting

const ControllerResetMachine::State ControllerResetMachine::Resetting
staticprivate
Initial value:
=
SM_RESULT OnResetting(_In_ CrEvent Event)
Definition: crsm.cpp:186

Definition at line 55 of file crsm.h.

◆ ResettingController

const ControllerResetMachine::State ControllerResetMachine::ResettingController
staticprivate
Initial value:
=
{ &Resetting, "ResettingController", SM_STATE_NEEDS_PASSIVE,
SM_RESULT OnResettingController(_In_ CrEvent Event)
Definition: crsm.cpp:241
SM_RESULT EnterResettingController()
Definition: crsm.cpp:234
#define SM_STATE_NEEDS_PASSIVE
Definition: smengine.h:40

Definition at line 58 of file crsm.h.

Referenced by OnAwaitingResetDone(), and OnPreparingDevices().

◆ RootHubOff

const ControllerResetMachine::State ControllerResetMachine::RootHubOff
staticprivate
Initial value:
=
SM_RESULT OnRootHubOff(_In_ CrEvent Event)
m_ResetSeen: a reset done while off was caught up. m_ResetPending: a reset is owed.
Definition: crsm.cpp:138

Definition at line 53 of file crsm.h.

Referenced by Initialize(), OnPreparingDevicesOff(), and PowerDown().

◆ RootHubOn

const ControllerResetMachine::State ControllerResetMachine::RootHubOn
staticprivate
Initial value:
=
SM_RESULT OnRootHubOn(_In_ CrEvent Event)
Definition: crsm.cpp:110

Definition at line 52 of file crsm.h.

Referenced by EndResetForHub(), and OnRootHubOff().


The documentation for this class was generated from the following files: