IOFireWireIPUnit.h [plain text]
#ifndef _IOKIT_IOFIREWIREIPUNIT_H
#define _IOKIT_IOFIREWIREIPUNIT_H
#include <IOKit/IOService.h>
#include <IOKit/firewire/IOFireWireUnit.h>
#include <IOKit/firewire/IOFWRegs.h>
#include <IOKit/firewire/IOFWAddressSpace.h>
#include "IOFireWireIP.h"
#include "IOFWIPDefinitions.h"
class IOFireWireNub;
class IOFireWireIPUnit : public IOService
{
OSDeclareDefaultStructors(IOFireWireIPUnit)
protected:
IOFireWireNub *fDevice;
IOFireWireIP *fIPLocalNode;
IOFWIPBusInterface *fFWBusInterface;
DRB *fDrb;
bool fStarted;
IONotifier *fTerminateNotifier;
struct ExpansionData { };
ExpansionData *reserved;
virtual void free(void);
public:
virtual bool start(IOService *provider);
bool finalize(IOOptionBits options);
virtual IOReturn message(UInt32 type, IOService *provider, void *argument);
void updateDrb();
IOFireWireIP *getIPNode(IOFireWireController *control);
bool configureFWBusInterface(IOFireWireController *controller);
IOFWIPBusInterface *getIPTransmitInterface(IOFireWireIP *fIPLocalNode);
static bool busInterfaceTerminate(void *target, void *refCon, IOService *newService);
private:
OSMetaClassDeclareReservedUnused(IOFireWireIPUnit, 0);
OSMetaClassDeclareReservedUnused(IOFireWireIPUnit, 1);
OSMetaClassDeclareReservedUnused(IOFireWireIPUnit, 2);
OSMetaClassDeclareReservedUnused(IOFireWireIPUnit, 3);
};
#endif // _IOKIT_IOFIREWIREIPUNIT_H