disable(IOService *)
Handles a disable request from a client.
Declaration
virtual IOReturn disable(
IOService *client);Parameters
- client:
The client object requesting the disable.
Return Value
Returns the return from the overloaded disable() method, or kIOReturnBadArgument if the client type is unknown.
Overview
This method handles a disable request from a client. A client will call disable if it has previously enabled the controller, and it no longer needs to transport packets or perform I/O using the controller. The client object is typecasted using OSDynamicCast, and depending on whether the client is an IOKernelDebugger or an IONetworkInterface, then an overloaded disable method that takes a more specific argument type is called. If the client matches neither type, then kIOReturnBadArgument is returned. A driver has the option of overriding this base disable method, or the overloaded form. This method call is synchronized by the workloop's gate.
See Also
Miscellaneous
allocatePacketattachDebuggerClientattachInterfaceconfigureInterfacecopyMediumDictionarycopyPacketcreateInterfacecreateOutputQueuecreateWorkLoopdetachDebuggerClientdetachInterfacedisabledisable(IONetworkInterface *)disablePacketFilterdoDisabledoEnableenableenable(IONetworkInterface *)enable(IOService *)enablePacketFilterexecuteCommandfreefreePacketgetChecksumDemandgetChecksumSupportgetCommandClientgetCommandGategetDebuggerLinkStatusgetFeaturesgetHardwareAddressgetMaxPacketSizegetMediumDictionarygetMinPacketSizegetOutputHandlergetOutputQueuegetPacketBufferConstraintsgetPacketFiltersgetSelectedMediumhandleClosehandleIsOpenhandleOpeninitmessagenewModelStringnewRevisionStringnewVendorStringoutputPacketpreparepublishMediumDictionarypublishPropertiesreceivePacketregisterWithPolicyMakerreleaseDebuggerLockreleaseFreePacketsreplaceOrCopyPacketreplacePacketreserveDebuggerLockselectMediumselectMediumWithNamesendPacketsetChecksumResultsetDebuggerModesetHardwareAddresssetLinkStatussetMaxPacketSizesetSelectedMediumstartstopsystemWillShutdown