|
|
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: #ifndef IOKIT_IOTIMESTAMP_H ! 23: #define IOKIT_IOTIMESTAMP_H ! 24: ! 25: #include <kdebug.h> ! 26: #include <sys/kdebug.h> ! 27: ! 28: static inline void ! 29: IOTimeStampStartConstant(unsigned int csc, ! 30: unsigned int a = 0, unsigned int b = 0, ! 31: unsigned int c = 0, unsigned int d = 0) ! 32: { ! 33: KERNEL_DEBUG_CONSTANT(csc | DBG_FUNC_START, a, b, c, d, 0); ! 34: } ! 35: ! 36: static inline void ! 37: IOTimeStampEndConstant(unsigned int csc, ! 38: unsigned int a = 0, unsigned int b = 0, ! 39: unsigned int c = 0, unsigned int d = 0) ! 40: { ! 41: KERNEL_DEBUG_CONSTANT(csc | DBG_FUNC_END, a, b, c, d, 0); ! 42: } ! 43: ! 44: static inline void ! 45: IOTimeStampConstant(unsigned int csc, ! 46: unsigned int a = 0, unsigned int b = 0, ! 47: unsigned int c = 0, unsigned int d = 0) ! 48: { ! 49: KERNEL_DEBUG_CONSTANT(csc | DBG_FUNC_NONE, a, b, c, d, 0); ! 50: } ! 51: ! 52: #if KDEBUG ! 53: ! 54: static inline void ! 55: IOTimeStampStart(unsigned int csc, ! 56: unsigned int a = 0, unsigned int b = 0, ! 57: unsigned int c = 0, unsigned int d = 0) ! 58: { ! 59: KERNEL_DEBUG(csc | DBG_FUNC_START, a, b, c, d, 0); ! 60: } ! 61: ! 62: static inline void ! 63: IOTimeStampEnd(unsigned int csc, ! 64: unsigned int a = 0, unsigned int b = 0, ! 65: unsigned int c = 0, unsigned int d = 0) ! 66: { ! 67: KERNEL_DEBUG(csc | DBG_FUNC_END, a, b, c, d, 0); ! 68: } ! 69: ! 70: static inline void ! 71: IOTimeStamp(unsigned int csc, ! 72: unsigned int a = 0, unsigned int b = 0, ! 73: unsigned int c = 0, unsigned int d = 0) ! 74: { ! 75: KERNEL_DEBUG(csc | DBG_FUNC_NONE, a, b, c, d, 0); ! 76: } ! 77: ! 78: #endif /* KDEBUG */ ! 79: ! 80: #define IODBG_SCSI(code) (KDBG_CODE(DBG_IOKIT, DBG_IOSCSI, code)) ! 81: #define IODBG_DISK(code) (KDBG_CODE(DBG_IOKIT, DBG_IODISK, code)) ! 82: #define IODBG_NETWORK(code) (KDBG_CODE(DBG_IOKIT, DBG_IONETWORK, code)) ! 83: #define IODBG_KEYBOARD(code) (KDBG_CODE(DBG_IOKIT, DBG_IOKEYBOARD, code)) ! 84: #define IODBG_POINTING(code) (KDBG_CODE(DBG_IOKIT, DBG_IOPOINTING, code)) ! 85: #define IODBG_AUDIO(code) (KDBG_CODE(DBG_IOKIT, DBG_IOAUDIO, code)) ! 86: #define IODBG_FLOPPY(code) (KDBG_CODE(DBG_IOKIT, DBG_IOFLOPPY, code)) ! 87: #define IODBG_SERIAL(code) (KDBG_CODE(DBG_IOKIT, DBG_IOSERIAL, code)) ! 88: #define IODBG_TTY(code) (KDBG_CODE(DBG_IOKIT, DBG_IOTTY, code)) ! 89: ! 90: /* IOKit infrastructure subclasses */ ! 91: #define IODBG_WORKLOOP(code) (KDBG_CODE(DBG_IOKIT, DBG_IOWORKLOOP, code)) ! 92: #define IODBG_INTES(code) (KDBG_CODE(DBG_IOKIT, DBG_IOINTES, code)) ! 93: #define IODBG_TIMES(code) (KDBG_CODE(DBG_IOKIT, DBG_IOCLKES, code)) ! 94: #define IODBG_CMDQ(code) (KDBG_CODE(DBG_IOKIT, DBG_IOCMDQ, code)) ! 95: #define IODBG_MCURS(code) (KDBG_CODE(DBG_IOKIT, DBG_IOMCURS, code)) ! 96: #define IODBG_MDESC(code) (KDBG_CODE(DBG_IOKIT, DBG_IOMDESC, code)) ! 97: ! 98: /* IOKit specific codes - within each subclass */ ! 99: ! 100: /* DBG_IOKIT/DBG_IOSCSI codes */ ! 101: ! 102: /* DBG_IOKIT/DBG_IODISK codes */ ! 103: ! 104: /* DBG_IOKIT/DBG_IONETWORK codes */ ! 105: ! 106: /* DBG_IOKIT/DBG_IOKEYBOARD codes */ ! 107: ! 108: /* DBG_IOKIT/DBG_IOPOINTING codes */ ! 109: ! 110: /* DBG_IOKIT/DBG_IOAUDIO codes */ ! 111: ! 112: /* DBG_IOKIT/DBG_IOFLOPPY codes */ ! 113: ! 114: /* DBG_IOKIT/DBG_IOSERIAL codes */ ! 115: ! 116: /* DBG_IOKIT/DBG_IOTTY codes */ ! 117: ! 118: /* DBG_IOKIT/DBG_IOWORKLOOP codes */ ! 119: #define IOWL_CLIENT 1 /* 0x050a0004 */ ! 120: #define IOWL_WORK 2 /* 0x050a0008 */ ! 121: ! 122: /* DBG_IOKIT/DBG_IOINTES codes */ ! 123: #define IOINTES_CLIENT 1 /* 0x050b0004 */ ! 124: #define IOINTES_LAT 2 /* 0x050b0008 */ ! 125: #define IOINTES_SEMA 3 /* 0x050b000c */ ! 126: #define IOINTES_INTCTXT 4 /* 0x050b0010 */ ! 127: #define IOINTES_INTFLTR 5 /* 0x050b0014 */ ! 128: #define IOINTES_ACTION 6 /* 0x050b0018 */ ! 129: #define IOINTES_FILTER 7 /* 0x050b001c */ ! 130: ! 131: /* DBG_IOKIT/DBG_IOTIMES codes */ ! 132: #define IOTIMES_CLIENT 1 /* 0x050c0004 */ ! 133: #define IOTIMES_LAT 2 /* 0x050c0008 */ ! 134: #define IOTIMES_SEMA 3 /* 0x050c000c */ ! 135: #define IOTIMES_ACTION 4 /* 0x050c0010 */ ! 136: ! 137: /* DBG_IOKIT/DBG_IOCMDQ codes */ ! 138: #define IOCMDQ_CLIENT 1 /* 0x050d0004 */ ! 139: #define IOCMDQ_LAT 2 /* 0x050d0008 */ ! 140: #define IOCMDQ_SEMA 3 /* 0x050d000c */ ! 141: #define IOCMDQ_PSEMA 4 /* 0x050d0010 */ ! 142: #define IOCMDQ_PLOCK 5 /* 0x050d0014 */ ! 143: #define IOCMDQ_ACTION 6 /* 0x050d0018 */ ! 144: ! 145: /* DBG_IOKIT/DBG_IOMCURS codes */ ! 146: ! 147: /* DBG_IOKIT/DBG_IOMDESC codes */ ! 148: ! 149: #endif /* ! IOKIT_IOTIMESTAMP_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.