|
|
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: #include <mach/std_types.h> ! 23: ! 24: ! 25: #ifndef __cplusplus ! 26: #include <IOKit/IODevice.h> ! 27: ! 28: typedef void (*pmCallback_func)(id obj_id, UInt32 refNum, UInt32 length, UInt8 * buffer); ! 29: #else ! 30: typedef void (*pmCallback_func)(IOService * client, UInt32 length, UInt8 * buffer); ! 31: ! 32: #endif ! 33: ! 34: #define kPMUname "PMU Driver" ! 35: ! 36: enum { ! 37: kPMUNoError = 0, ! 38: kPMUInitError = 1, // PMU failed to initialize ! 39: kPMUParameterError = 2, // Bad parameters ! 40: kPMUNotSupported = 3, // PMU don't do that (Cuda does, though) ! 41: kPMUIOError = 4 // Nonspecific I/O failure ! 42: }; ! 43: ! 44: #ifndef __cplusplus ! 45: ! 46: // ********************************************************************************** ! 47: // ! 48: // exported protocols ! 49: // ! 50: // ********************************************************************************** ! 51: ! 52: @protocol RTCservice ! 53: ! 54: - (void) registerForClockTicks :(pmCallback_func)tickHandler ! 55: :(id)caller; ! 56: ! 57: - (IOReturn)setRealTimeClock :(UInt8 *)newTime; ! 58: ! 59: - (IOReturn)getRealTimeClock: (UInt8 *)currentTime ! 60: length: (IOByteCount *) length; ! 61: ! 62: @end ! 63: ! 64: ! 65: ! 66: @protocol NVRAMservice ! 67: ! 68: - (IOReturn) readNVRAM: (UInt32)Offset ! 69: length: (IOByteCount *)Length ! 70: contents:(UInt8 *)Buffer; ! 71: ! 72: - (IOReturn) writeNVRAM : (UInt32)Offset ! 73: length: (IOByteCount *)Length ! 74: contents: (UInt8 *)Buffer; ! 75: ! 76: @end ! 77: ! 78: ! 79: ! 80: @protocol PowerService ! 81: ! 82: - (void) registerForPowerInterrupts :(pmCallback_func)buttonHandler ! 83: :(id)caller; ! 84: ! 85: @end ! 86: ! 87: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.