|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved. ! 3: * ! 4: * @APPLE_LICENSE_HEADER_START@ ! 5: * ! 6: * The contents of this file constitute Original Code as defined in and ! 7: * are subject to the Apple Public Source License Version 1.1 (the ! 8: * "License"). You may not use this file except in compliance with the ! 9: * License. Please obtain a copy of the License at ! 10: * http://www.apple.com/publicsource and read it before using this file. ! 11: * ! 12: * This Original Code and all software distributed under the License are ! 13: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ! 14: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ! 15: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ! 16: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ! 17: * License for the specific language governing rights and limitations ! 18: * under the License. ! 19: * ! 20: * @APPLE_LICENSE_HEADER_END@ ! 21: */ ! 22: /* ! 23: * ! 24: * IOFireWireDevice.h ! 25: * ! 26: * ! 27: */ ! 28: #ifndef _IOKIT_IOFIREWIREDEVICE_H ! 29: #define _IOKIT_IOFIREWIREDEVICE_H ! 30: ! 31: #include <IOKit/firewire/IOFireWireNub.h> ! 32: ! 33: class IOFireWireDevice : public IOFireWireNub ! 34: { ! 35: OSDeclareDefaultStructors(IOFireWireDevice) ! 36: ! 37: /*------------------Useful info about device (also available in the registry)--------*/ ! 38: public: ! 39: int fNumSelfIDs; // Number we actually have (usually just one) ! 40: UInt32 fSelfIDs[kMaxSelfIDs]; ! 41: ! 42: // More info to come - device type, CSR ROM etc. ! 43: ! 44: protected: ! 45: ! 46: /*-----------Methods provided to FireWire device clients-------------*/ ! 47: public: ! 48: /* ! 49: * Create an iterator for the device ROM ! 50: */ ! 51: virtual IOReturn CSRROMCreateIterator (CSRROMEntryIterator *pCSRROMIterator); ! 52: ! 53: // Called after init or bus reset to update nodeID and ROM ! 54: virtual void setNodeROM(UInt32 generation, UInt16 nodeID, UInt16 localNodeID, ! 55: OSData *rom, UInt32 *selfIDs, int numSelfIDs); ! 56: ! 57: /* ! 58: * Matching language support ! 59: * Match on the following properties of the device: ! 60: * Vendor_ID ! 61: * GUID ! 62: */ ! 63: bool matchPropertyTable(OSDictionary * table); ! 64: ! 65: /* ! 66: * Standard nub initialization ! 67: */ ! 68: virtual bool attach(IOService * provider ); ! 69: }; ! 70: ! 71: #endif /* ! _IOKIT_IOFIREWIREDEVICE_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.