|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. ! 3: * ! 4: * @APPLE_LICENSE_HEADER_START@ ! 5: * ! 6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights ! 7: * Reserved. This file contains Original Code and/or Modifications of ! 8: * Original Code as defined in and that are subject to the Apple Public ! 9: * Source License Version 1.1 (the "License"). You may not use this file ! 10: * except in compliance with the License. Please obtain a copy of the ! 11: * License at http://www.apple.com/publicsource and read it before using ! 12: * this file. ! 13: * ! 14: * The Original Code and all software distributed under the License are ! 15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ! 16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ! 17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ! 18: * FITNESS FOR A PARTICULAR PURPOSE OR NON- INFRINGEMENT. Please see the ! 19: * License for the specific language governing rights and limitations ! 20: * under the License. ! 21: * ! 22: * @APPLE_LICENSE_HEADER_END@ ! 23: */ ! 24: /* ! 25: * Copyright (c) 1993 NeXT Computer, Inc. ! 26: * ! 27: * PPC direct device implementation. ! 28: * ! 29: */ ! 30: ! 31: #import <machkit/NXLock.h> ! 32: #import <objc/List.h> ! 33: ! 34: #import <driverkit/IODirectDevice.h> ! 35: #import <driverkit/IODirectDevicePrivate.h> ! 36: #import <driverkit/driverTypes.h> ! 37: #import <driverkit/generalFuncs.h> ! 38: ! 39: #import <driverkit/ppc/directDevice.h> ! 40: #import <driverkit/ppc/IOPPCDeviceDescription.h> ! 41: #import <driverkit/ppc/driverTypes.h> ! 42: #import <driverkit/ppc/driverTypesPrivate.h> ! 43: #import <driverkit/kernelDriver.h> ! 44: #import <driverkit/ppc/PPCKernBus.h> ! 45: #import <driverkit/KernDevice.h> ! 46: #import <driverkit/KernDeviceDescription.h> ! 47: #import <driverkit/interruptMsg.h> ! 48: ! 49: #import <machdep/ppc/xpr.h> ! 50: ! 51: #import <kernserv/lock.h> ! 52: #import <kernserv/prototypes.h> ! 53: ! 54: #import <objc/HashTable.h> ! 55: ! 56: ! 57: @interface IODirectDevice(PPCPrivate) ! 58: ! 59: - initPPC; ! 60: - freePPC; ! 61: ! 62: @end ! 63: ! 64: struct _ppc_private { ! 65: Arch type; ! 66: }; ! 67: ! 68: @implementation IODirectDevice(PPCPrivate) ! 69: ! 70: - initPPC ! 71: { ! 72: struct _ppc_private *private; ! 73: ! 74: private = _busPrivate = (void *)IOMalloc(sizeof (*private)); ! 75: private->type = ArchPPC; ! 76: ! 77: return self; ! 78: } ! 79: ! 80: - freePPC ! 81: { ! 82: struct _ppc_private *private = _busPrivate; ! 83: ! 84: IOFree((void *)private, sizeof (*private)); ! 85: ! 86: return self; ! 87: } ! 88: ! 89: @end ! 90: ! 91: @implementation IODirectDevice(IOPPCDirectDevice) ! 92: ! 93: @end ! 94:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.