]> git.saurik.com Git - apple/xnu.git/blame - iokit/IOKit/IOKitServer.h
xnu-792.6.56.tar.gz
[apple/xnu.git] / iokit / IOKit / IOKitServer.h
CommitLineData
1c79356b
A
1/*
2 * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
ff6e181a
A
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
1c79356b 12 *
ff6e181a
A
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
1c79356b
A
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
ff6e181a
A
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
1c79356b
A
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*
24 * Copyright (c) 1998 Apple Computer, Inc. All rights reserved.
25 *
26 * HISTORY
27 *
28 */
29
30/*
31 * Internal definitions used between the iokit user library and
32 * server routines.
33 */
34
35#ifndef _IOKIT_IOKITSERVER_H
36#define _IOKIT_IOKITSERVER_H
37
38#include <IOKit/IOTypes.h>
39#include <IOKit/IOKitKeys.h>
40#include <IOKit/OSMessageNotification.h>
41
42#ifdef __cplusplus
43extern "C" {
44#endif
45#include <mach/kmod.h>
46#ifdef __cplusplus
47}
48#endif
49
50// IOMakeMatching
51/*!
52 @enum IOMakeMatching
53 @constant kIOServiceMatching
54 @constant kIOBSDNameMatching
55 @constant kIOOFPathMatching
56*/
57enum {
58 kIOServiceMatching = 100,
59 kIOBSDNameMatching = 101,
55e303ae 60 kIOOFPathMatching = 102
1c79356b
A
61};
62
63// IOCatalogueSendData
64/*!
65 @enum IOCatalogueSendData user-client flags.
66 @constant kIOCatalogAddDrivers Signals a call to the addDrivers function in IOCatalogue.
67 @constant kIOCatalogAddDriversNoMatch Signals a call to the addDrivers function in IOCatalogue but does not start a matching thread.
68 @constant kIOCatalogRemoveDrivers Signals a call to the removeDrivers function in IOCatalogue.
69 @constant kIOCatalogRemoveDriversNoMatch Signals a call to the removedrivers function in IOCatalogue but does not start a matching thread.
70 @constant kIOCatalogStartMatching Signals the IOCatalogue to start an IOService matching thread.
71*/
72enum {
73 kIOCatalogAddDrivers = 1,
74 kIOCatalogAddDriversNoMatch,
75 kIOCatalogRemoveDrivers,
76 kIOCatalogRemoveDriversNoMatch,
77 kIOCatalogStartMatching,
55e303ae 78 kIOCatalogRemoveKernelLinker
1c79356b
A
79};
80
81// IOCatalogueGetData
82/*!
83 @enum IOCatalogueGetData user-client flags
84 @constant kIOCatalogGetContents Returns a snapshot of the database to the caller.
85*/
86enum {
55e303ae
A
87 kIOCatalogGetContents = 1,
88 kIOCatalogGetModuleDemandList = 2,
89 kIOCatalogGetCacheMissList = 3,
90 kIOCatalogGetROMMkextList = 4
1c79356b
A
91};
92
93// IOCatalogueReset
94/*!
95 @enum IOCatalogueReset user-client flag
96 @constant kIOCatalogResetDefault Removes all entries from IOCatalogue except those used for booting the system.
97*/
98enum {
55e303ae 99 kIOCatalogResetDefault = 1
1c79356b
A
100};
101
102// IOCatalogueTerminate
103/*!
104 @enum IOCatalogueTerminate user-client flags.
105 @constant kIOCatalogModuleUnload Terminates all services which depend on a particular module and unloads the module.
106 @constant kIOCatalogModuleTerminate Terminates all services which depend on a particular module but does not unload the module.
107 @constant kIOCatalogServiceTerminate Terminates a particular service by name.
108*/
109enum {
110 kIOCatalogModuleUnload = 1,
111 kIOCatalogModuleTerminate,
55e303ae 112 kIOCatalogServiceTerminate
1c79356b
A
113};
114
115enum {
116 kIOCatalogMatchIdle = KMOD_IOKIT_END_RANGE_PACKET - 0x10
117};
118
119#endif /* ! _IOKIT_IOKITSERVER_H */
120