]> git.saurik.com Git - apple/xnu.git/blame - iokit/IOKit/IOKitKeys.h
xnu-517.tar.gz
[apple/xnu.git] / iokit / IOKit / IOKitKeys.h
CommitLineData
1c79356b
A
1/*
2 * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
43866e37 6 * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
1c79356b 7 *
43866e37
A
8 * This file contains Original Code and/or Modifications of Original Code
9 * as defined in and that are subject to the Apple Public Source License
10 * Version 2.0 (the 'License'). You may not use this file except in
11 * compliance with the License. Please obtain a copy of the License at
12 * http://www.opensource.apple.com/apsl/ and read it before using this
13 * file.
14 *
15 * The Original Code and all software distributed under the License are
16 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
1c79356b
A
17 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
18 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
43866e37
A
19 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
20 * Please see the License for the specific language governing rights and
21 * limitations under the License.
1c79356b
A
22 *
23 * @APPLE_LICENSE_HEADER_END@
24 */
25/*
26 * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
27 *
28 * Common symbol definitions for IOKit.
29 *
30 * HISTORY
31 *
32 */
33
34
35#ifndef _IOKIT_IOKITKEYS_H
36#define _IOKIT_IOKITKEYS_H
37
38// properties found in the registry root
39#define kIOKitBuildVersionKey "IOKitBuildVersion"
40#define kIOKitDiagnosticsKey "IOKitDiagnostics"
41 // a dictionary keyed by plane name
42#define kIORegistryPlanesKey "IORegistryPlanes"
43#define kIOCatalogueKey "IOCatalogue"
44
45// registry plane names
46#define kIOServicePlane "IOService"
47#define kIOPowerPlane "IOPower"
48#define kIODeviceTreePlane "IODeviceTree"
49#define kIOAudioPlane "IOAudio"
50#define kIOFireWirePlane "IOFireWire"
51#define kIOUSBPlane "IOUSB"
52
53// IOService class name
54#define kIOServiceClass "IOService"
55
56// IOResources class name
57#define kIOResourcesClass "IOResources"
58
59// IOService driver probing property names
60#define kIOClassKey "IOClass"
61#define kIOProbeScoreKey "IOProbeScore"
62#define kIOKitDebugKey "IOKitDebug"
63
64// IOService matching property names
65#define kIOProviderClassKey "IOProviderClass"
66#define kIONameMatchKey "IONameMatch"
67#define kIOPropertyMatchKey "IOPropertyMatch"
68#define kIOPathMatchKey "IOPathMatch"
69#define kIOLocationMatchKey "IOLocationMatch"
9bccf70c 70#define kIOParentMatchKey "IOParentMatch"
1c79356b
A
71#define kIOResourceMatchKey "IOResourceMatch"
72#define kIOMatchedServiceCountKey "IOMatchedServiceCountMatch"
73
74#define kIONameMatchedKey "IONameMatched"
75
76#define kIOMatchCategoryKey "IOMatchCategory"
77#define kIODefaultMatchCategoryKey "IODefaultMatchCategory"
78
79// IOService default user client class, for loadable user clients
80#define kIOUserClientClassKey "IOUserClientClass"
81
82// IOService notification types
83#define kIOPublishNotification "IOServicePublish"
84#define kIOFirstPublishNotification "IOServiceFirstPublish"
85#define kIOMatchedNotification "IOServiceMatched"
86#define kIOFirstMatchNotification "IOServiceFirstMatch"
87#define kIOTerminatedNotification "IOServiceTerminate"
88
89// IOService interest notification types
90#define kIOGeneralInterest "IOGeneralInterest"
91#define kIOBusyInterest "IOBusyInterest"
92#define kIOAppPowerStateInterest "IOAppPowerStateInterest"
0b4e3aa0 93#define kIOPriorityPowerStateInterest "IOPriorityPowerStateInterest"
1c79356b
A
94
95// IOService interest notification types
96#define kIOCFPlugInTypesKey "IOCFPlugInTypes"
97
98// properties found in services that implement command pooling
0b4e3aa0
A
99#define kIOCommandPoolSizeKey "IOCommandPoolSize" // (OSNumber)
100
101// properties found in services that have transfer constraints
b4c24cb9
A
102#define kIOMaximumBlockCountReadKey "IOMaximumBlockCountRead" // (OSNumber)
103#define kIOMaximumBlockCountWriteKey "IOMaximumBlockCountWrite" // (OSNumber)
104#define kIOMaximumByteCountReadKey "IOMaximumByteCountRead" // (OSNumber)
105#define kIOMaximumByteCountWriteKey "IOMaximumByteCountWrite" // (OSNumber)
106#define kIOMaximumSegmentCountReadKey "IOMaximumSegmentCountRead" // (OSNumber)
107#define kIOMaximumSegmentCountWriteKey "IOMaximumSegmentCountWrite" // (OSNumber)
108#define kIOMaximumSegmentByteCountReadKey "IOMaximumSegmentByteCountRead" // (OSNumber)
109#define kIOMaximumSegmentByteCountWriteKey "IOMaximumSegmentByteCountWrite" // (OSNumber)
1c79356b 110
9bccf70c
A
111// properties found in services that wish to describe an icon
112//
113// IOIcon =
114// {
115// CFBundleIdentifier = "com.example.driver.example";
116// IOBundleResourceFile = "example.icns";
117// };
118//
119// where IOBundleResourceFile is the filename of the resource
120
121#define kIOIconKey "IOIcon" // (OSDictionary)
122#define kIOBundleResourceFileKey "IOBundleResourceFile" // (OSString)
1c79356b 123
9bccf70c
A
124#define kIOBusBadgeKey "IOBusBadge" // (OSDictionary)
125#define kIODeviceIconKey "IODeviceIcon" // (OSDictionary)
126
55e303ae
A
127// property of root that describes the machine's serial number as a string
128#define kIOPlatformSerialNumberKey "IOPlatformSerialNumber" // (OSString)
129
9bccf70c 130#endif /* ! _IOKIT_IOKITKEYS_H */