Changes

1,074 bytes added ,  18:01, 7 June 2022
no edit summary
Line 202: Line 202:     
Sends command messages 0x24 (DisconnectRequest), 0x34 (RequestSleep), 0x3D and 0x3E to the state machine.
 
Sends command messages 0x24 (DisconnectRequest), 0x34 (RequestSleep), 0x3D and 0x3E to the state machine.
 +
 +
First message GetState is sent, if state is 0x3 it does the following:
 +
 +
* Sends message 0x3D. If successful and the output u8 is 0, this then does the following:
 +
** Uses GetState to check for state 0x2/0x3. On success message DisconnectRequest is sent. If state is invalid or the command message failed, this will Abort.
 +
** Uses GetState to check for state 0x1/0x2/0xA. On success message 0x9A with param=0 is sent. If state is invalid or the command message failed, this will Abort.
 +
 +
Then message RequestSleep is sent. If the Result is not 0x146B (including success), it returns the Result. Otherwise when the Result is that value, it does the following:
 +
 +
* Sends message 0x3E.
 +
** Uses GetState to check for state 0x2/0x3. On success message DisconnectRequest is sent. If state is invalid or the command message failed, this will Abort.
 +
** Uses GetState to check for state 0x1/0x2/0xA. On success message 0x9A with param=0 is sent. If state is invalid or the command message failed, this will Abort.
 +
** Then this cmpl impl func will return the Result from calling itself.
    
This is used by [[Network_Interface_services|nifm]].
 
This is used by [[Network_Interface_services|nifm]].