UcmUcsiPpmStop function (ucmucsippm.h)
Instructs the UcmUcsiCx class extension to stop sending requests to the client driver.
Syntax
void UcmUcsiPpmStop(
[in] UCMUCSIPPM PpmObject
);
Parameters
[in] PpmObject
A handle to a Platform Policy Manager (PPM) object that the client driver received in the previous call to UcmUcsiPpmCreate.
Return value
None
Remarks
UcmUcsiPpmStop indicates that the client driver is no longer ready to receive requests from the class extension. The class extension guarantees that there will not be any requests made to the client after this call returns. The driver should call this DDI when it encounters a fault and wants the class extension to stop sending PPM requests. After the call completes, the driver should start the PPM again using UcmUcsiPpmStart.
The client driver is expected to call this DDI on driver unload. This call indicates the class extension to start tearing down its internal state machines. It is recommended that the client calls UcmUcsiPpmStop from its EVT_WDF_DEVICE_RELEASE_HARDWARE callback.
Because UcmUcsiPpmStop relies on sending UCSI commands to PPM over the power-managed WDFQUEUE provided by the client driver, an attempt to call this function from EVT_WDF_DEVICE_D0_EXIT callback results in a failure. That is because at this time, the dispatch gates for the queue are closed.
After the UcmUcsiPpmStop returns, UcmUcsiPpmStart can be called to start the PPM again.
Requirements
Requirement | Value |
---|---|
Minimum KMDF version | 1.27 |
Minimum UMDF version | N/A |
Header | ucmucsippm.h (include UcmUcsiCx.h) |
Library | UcmUcsiCxStub.lib |
IRQL | PASSIVE_LEVEL |