---
title: "enable(IONetworkInterface *)"
framework: kernel
role: pseudoSymbol
path: kernel/ionetworkcontroller/1813938-enable
---

# enable(IONetworkInterface *)

A request from an interface client to enable the controller.

## Declaration

```occ
virtual IOReturn enable(
 IONetworkInterface *interface); 
```

## Parameters

- `interface`: The interface client object that requested the enable.

## Return Value

Return Value Returns kIOReturnUnsupported. Drivers that override this method must return kIOReturnSuccess on success, or an error code otherwise.

## Overview

Overview This method is called by an interface client to enable the controller. Upon receiving this command, the controller driver must bring up the hardware and become ready to transmit and receive packets. A driver should also delay the allocation of most runtime resources until this method is called in order to conserve system resources. This method call is synchronized by the workloop's gate.

## See Also

### Miscellaneous

- [allocatePacket](kernel/ionetworkcontroller/1813917-allocatepacket.md)
- [attachDebuggerClient](kernel/ionetworkcontroller/1813919-attachdebuggerclient.md)
- [attachInterface](kernel/ionetworkcontroller/1813921-attachinterface.md)
- [configureInterface](kernel/ionetworkcontroller/1813923-configureinterface.md)
- [copyMediumDictionary](kernel/ionetworkcontroller/1813924-copymediumdictionary.md)
- [copyPacket](kernel/ionetworkcontroller/1813925-copypacket.md)
- [createInterface](kernel/ionetworkcontroller/1813926-createinterface.md)
- [createOutputQueue](kernel/ionetworkcontroller/1813927-createoutputqueue.md)
- [createWorkLoop](kernel/ionetworkcontroller/1813928-createworkloop.md)
- [detachDebuggerClient](kernel/ionetworkcontroller/1813929-detachdebuggerclient.md)
- [detachInterface](kernel/ionetworkcontroller/1813930-detachinterface.md)
- [disable](kernel/ionetworkcontroller/1813931-disable.md)
- [disable(IONetworkInterface *)](kernel/ionetworkcontroller/1813932-disable.md)
- [disable(IOService *)](kernel/ionetworkcontroller/1813933-disable.md)
- [disablePacketFilter](kernel/ionetworkcontroller/1813934-disablepacketfilter.md)
- [doDisable](kernel/ionetworkcontroller/1813935-dodisable.md)
- [doEnable](kernel/ionetworkcontroller/1813936-doenable.md)
- [enable](kernel/ionetworkcontroller/1813937-enable.md)
- [enable(IOService *)](kernel/ionetworkcontroller/1813939-enable.md)
- [enablePacketFilter](kernel/ionetworkcontroller/1813940-enablepacketfilter.md)
- [executeCommand](kernel/ionetworkcontroller/1813941-executecommand.md)
- [free](kernel/ionetworkcontroller/1813942-free.md)
- [freePacket](kernel/ionetworkcontroller/1813943-freepacket.md)
- [getChecksumDemand](kernel/ionetworkcontroller/1813944-getchecksumdemand.md)
- [getChecksumSupport](kernel/ionetworkcontroller/1813945-getchecksumsupport.md)
- [getCommandClient](kernel/ionetworkcontroller/1813946-getcommandclient.md)
- [getCommandGate](kernel/ionetworkcontroller/1813947-getcommandgate.md)
- [getDebuggerLinkStatus](kernel/ionetworkcontroller/1813949-getdebuggerlinkstatus.md)
- [getFeatures](kernel/ionetworkcontroller/1813951-getfeatures.md)
- [getHardwareAddress](kernel/ionetworkcontroller/1813953-gethardwareaddress.md)
- [getMaxPacketSize](kernel/ionetworkcontroller/1813954-getmaxpacketsize.md)
- [getMediumDictionary](kernel/ionetworkcontroller/1813956-getmediumdictionary.md)
- [getMinPacketSize](kernel/ionetworkcontroller/1813957-getminpacketsize.md)
- [getOutputHandler](kernel/ionetworkcontroller/1813959-getoutputhandler.md)
- [getOutputQueue](kernel/ionetworkcontroller/1813960-getoutputqueue.md)
- [getPacketBufferConstraints](kernel/ionetworkcontroller/1813962-getpacketbufferconstraints.md)
- [getPacketFilters](kernel/ionetworkcontroller/1813964-getpacketfilters.md)
- [getSelectedMedium](kernel/ionetworkcontroller/1813966-getselectedmedium.md)
- [handleClose](kernel/ionetworkcontroller/1813967-handleclose.md)
- [handleIsOpen](kernel/ionetworkcontroller/1813968-handleisopen.md)
- [handleOpen](kernel/ionetworkcontroller/1813969-handleopen.md)
- [init](kernel/ionetworkcontroller/1813970-init.md)
- [message](kernel/ionetworkcontroller/1813971-message.md)
- [newModelString](kernel/ionetworkcontroller/1813972-newmodelstring.md)
- [newRevisionString](kernel/ionetworkcontroller/1813973-newrevisionstring.md)
- [newVendorString](kernel/ionetworkcontroller/1813974-newvendorstring.md)
- [outputPacket](kernel/ionetworkcontroller/1813975-outputpacket.md)
- [prepare](kernel/ionetworkcontroller/1813976-prepare.md)
- [publishMediumDictionary](kernel/ionetworkcontroller/1813977-publishmediumdictionary.md)
- [publishProperties](kernel/ionetworkcontroller/1813978-publishproperties.md)
- [receivePacket](kernel/ionetworkcontroller/1813979-receivepacket.md)
- [registerWithPolicyMaker](kernel/ionetworkcontroller/1813980-registerwithpolicymaker.md)
- [releaseDebuggerLock](kernel/ionetworkcontroller/1813981-releasedebuggerlock.md)
- [releaseFreePackets](kernel/ionetworkcontroller/1813982-releasefreepackets.md)
- [replaceOrCopyPacket](kernel/ionetworkcontroller/1813983-replaceorcopypacket.md)
- [replacePacket](kernel/ionetworkcontroller/1813984-replacepacket.md)
- [reserveDebuggerLock](kernel/ionetworkcontroller/1813985-reservedebuggerlock.md)
- [selectMedium](kernel/ionetworkcontroller/1813986-selectmedium.md)
- [selectMediumWithName](kernel/ionetworkcontroller/1813987-selectmediumwithname.md)
- [sendPacket](kernel/ionetworkcontroller/1813988-sendpacket.md)
- [setChecksumResult](kernel/ionetworkcontroller/1813989-setchecksumresult.md)
- [setDebuggerMode](kernel/ionetworkcontroller/1813990-setdebuggermode.md)
- [setHardwareAddress](kernel/ionetworkcontroller/1813991-sethardwareaddress.md)
- [setLinkStatus](kernel/ionetworkcontroller/1813992-setlinkstatus.md)
- [setMaxPacketSize](kernel/ionetworkcontroller/1813993-setmaxpacketsize.md)
- [setSelectedMedium](kernel/ionetworkcontroller/1813994-setselectedmedium.md)
- [start](kernel/ionetworkcontroller/1813995-start.md)
- [stop](kernel/ionetworkcontroller/1813996-stop.md)
- [systemWillShutdown](kernel/ionetworkcontroller/1813997-systemwillshutdown.md)
