|
|
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: * 18 June 1998 sdouglas Start IOKit version. ! 24: * 17 Nov 1998 suurballe Port objc to c++ ! 25: */ ! 26: ! 27: #include <IOKit/adb/IOADBDevice.h> ! 28: ! 29: #define super IOService ! 30: OSDefineMetaClassAndStructors(IOADBDevice,IOService) ! 31: ! 32: // ********************************************************************************** ! 33: // init ! 34: // ! 35: // ********************************************************************************** ! 36: bool IOADBDevice::init ( OSDictionary * regEntry, ADBDeviceControl * us ) ! 37: { ! 38: if( !super::init(regEntry)) ! 39: return false; ! 40: ! 41: fBusRef = us; ! 42: return true; ! 43: } ! 44: ! 45: ! 46: // ********************************************************************************** ! 47: // attach ! 48: // ! 49: // ********************************************************************************** ! 50: bool IOADBDevice::attach ( IOADBBus * controller ) ! 51: { ! 52: if( !super::attach(controller)) ! 53: return false; ! 54: ! 55: bus = controller; ! 56: return true; ! 57: } ! 58: ! 59: // ********************************************************************************** ! 60: // matchPropertyTable ! 61: // ! 62: // ********************************************************************************** ! 63: ! 64: bool IOADBDevice::matchPropertyTable( OSDictionary * table ) ! 65: { ! 66: return( bus->matchNubWithPropertyTable( this, table )); ! 67: } ! 68: ! 69: // ********************************************************************************** ! 70: // seizeForClient ! 71: // ! 72: // ********************************************************************************** ! 73: bool IOADBDevice::seizeForClient ( IOService * client, ADB_callback_func handler ) ! 74: { ! 75: bus->setOwner(fBusRef,client,handler); ! 76: ! 77: return true; ! 78: } ! 79: ! 80: ! 81: // ********************************************************************************** ! 82: // releaseFromClient ! 83: // ! 84: // ********************************************************************************** ! 85: void IOADBDevice::releaseFromClient ( IORegistryEntry * ) ! 86: { ! 87: kprintf("IOADBDevice::releaseFromClient\n"); ! 88: bus->clearOwner(fBusRef); ! 89: } ! 90: ! 91: ! 92: // ********************************************************************************** ! 93: // flush ! 94: // ! 95: // ********************************************************************************** ! 96: IOReturn IOADBDevice::flush ( void ) ! 97: { ! 98: return( bus->flush(fBusRef) ); ! 99: } ! 100: ! 101: ! 102: // ********************************************************************************** ! 103: // readRegister ! 104: // ! 105: // ********************************************************************************** ! 106: IOReturn IOADBDevice::readRegister ( IOADBRegister adbRegister, UInt8 * data, ! 107: IOByteCount * length ) ! 108: { ! 109: return( bus->readRegister(fBusRef,adbRegister,data,length) ); ! 110: } ! 111: ! 112: ! 113: // ********************************************************************************** ! 114: // writeRegister ! 115: // ! 116: // ********************************************************************************** ! 117: IOReturn IOADBDevice::writeRegister ( IOADBRegister adbRegister, UInt8 * data, ! 118: IOByteCount * length ) ! 119: { ! 120: return( bus->writeRegister(fBusRef,adbRegister,data,length) ); ! 121: } ! 122: ! 123: ! 124: // ********************************************************************************** ! 125: // address ! 126: // ! 127: // ********************************************************************************** ! 128: IOADBAddress IOADBDevice::address ( void ) ! 129: { ! 130: return( bus->address(fBusRef) ); ! 131: } ! 132: ! 133: ! 134: // ********************************************************************************** ! 135: // defaultAddress ! 136: // ! 137: // ********************************************************************************** ! 138: IOADBAddress IOADBDevice::defaultAddress ( void ) ! 139: { ! 140: return( bus->defaultAddress(fBusRef) ); ! 141: } ! 142: ! 143: ! 144: // ********************************************************************************** ! 145: // handlerID ! 146: // ! 147: // ********************************************************************************** ! 148: UInt8 IOADBDevice::handlerID ( void ) ! 149: { ! 150: return( bus->handlerID(fBusRef) ); ! 151: } ! 152: ! 153: ! 154: // ********************************************************************************** ! 155: // defaultHandlerID ! 156: // ! 157: // ********************************************************************************** ! 158: UInt8 IOADBDevice::defaultHandlerID ( void ) ! 159: { ! 160: return( bus->defaultHandlerID(fBusRef) ); ! 161: } ! 162: ! 163: ! 164: // ********************************************************************************** ! 165: // setHandlerID ! 166: // ! 167: // ********************************************************************************** ! 168: IOReturn IOADBDevice::setHandlerID ( UInt8 handlerID ) ! 169: { ! 170: return( bus->setHandlerID(fBusRef,handlerID) ); ! 171: } ! 172: ! 173: ! 174: // ********************************************************************************** ! 175: // busRef ! 176: // ! 177: // ********************************************************************************** ! 178: void * IOADBDevice::busRef ( void ) ! 179: { ! 180: return fBusRef; ! 181: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.