Root/
Source at commit 1129 created 12 years 11 months ago. By meklort, Change options.o so that it reloads the system config as well. Also change it so that it uses that config for variables (NOTE: if the calue exists in chameleonConfig, it's used instead. | |
---|---|
1 | /*␊ |
2 | ␉File:␉␉BluetoothInternal.h␊ |
3 | ␉Contains:␉Internal types and macros needed by public kernel APIs.␊ |
4 | ␉Copyright:␉2003-2007 by Apple, Inc. All rights reserved.␊ |
5 | */␊ |
6 | ␊ |
7 | #pragma once␊ |
8 | ␊ |
9 | typedef enum IOBluetoothHCIControllerConfigState␊ |
10 | {␊ |
11 | ␉kIOBluetoothHCIControllerConfigStateOnline␉␉␉␉␉␉␉= 0,␉// Controller is configured and ready for clients␊ |
12 | ␉kIOBluetoothHCIControllerConfigStateKernelSetupPending␉␉␉␉= 1,␉// New controller - kernel setup in progress␊ |
13 | ␉kIOBluetoothHCIControllerConfigStateDaemonSetupPending␉␉␉␉= 2,␉// New controller - daemon setup in progress␊ |
14 | ␉kIOBluetoothHCIControllerConfigStateDaemonSetupComplete␉␉␉␉= 3,␉// New controller - daemon setup complete␊ |
15 | ␉kIOBluetoothHCIControllerConfigStateResetPending␉␉␉␉␉= 4,␉// HCI reset has been issued␊ |
16 | ␉kIOBluetoothHCIControllerConfigStateKernelPostResetSetupPending␉␉= 5,␉// HCI reset complete - kernel setup in progress␊ |
17 | ␉kIOBluetoothHCIControllerConfigStateDaemonPostResetSetupPending␉␉= 6,␉// HCI reset complete - daemon setup in progress␊ |
18 | ␉kIOBluetoothHCIControllerConfigStateDaemonPostResetSetupComplete␉= 7,␉// HCI reset complete - daemon setup complete␊ |
19 | ␉kIOBluetoothHCIControllerConfigStateUninitialized␉␉␉␉␉= 8␊ |
20 | } IOBluetoothHCIControllerConfigState;␊ |
21 | ␊ |
22 | typedef UInt32 IOBluetoothHCIControllerPowerOptions;␊ |
23 | enum␊ |
24 | {␊ |
25 | ␉kIOBluetoothHCIControllerPowerOptionPowerOffSupported␉␉␉␉␉= 0x00000001,␊ |
26 | ␉kIOBluetoothHCIControllerPowerOptionWakeFromExistingConnectionSupported␉= 0x00000002,␊ |
27 | ␉kIOBluetoothHCIControllerPowerOptionWakeFromNewConnectionSupported␉␉= 0x00000004,␊ |
28 | ␉kIOBluetoothHCIControllerPowerOptionIdleWithConnectionSupported␉␉␉= 0x00000008,␉␊ |
29 | ␉kIOBluetoothHCIControllerPowerOptionIdleWhenInternalPower␉␉␉␉= 0x00000010␉␊ |
30 | };␊ |
31 | ␊ |
32 | enum IOBluetoothHCIControllerSleepOptions␊ |
33 | {␊ |
34 | ␉kIOBluetoothHCIControllerAllowWakeFromExistingConnection␉␉␉␉= 0x00000001,␊ |
35 | ␉kIOBluetoothHCIControllerAllowWakeFromNewConnection␉␉␉␉␉␉= 0x00000002,␊ |
36 | ␉kIOBluetoothHCIControllerTemporaryOnFromIdle␉␉␉␉␉␉␉= 0x00000004␊ |
37 | };␊ |
38 | ␊ |
39 | #define HCI_CONTROLLER_POWER_OFF_SUPPORTED( _controllerPowerOptions )␉( ( _controllerPowerOptions & kIOBluetoothHCIControllerPowerOptionPowerOffSupported ) == kIOBluetoothHCIControllerPowerOptionPowerOffSupported )␊ |
40 | #define HCI_CONTROLLER_SLEEP_SUPPORTED( _controllerPowerOptions )␉\␊ |
41 | ␉( ( _controllerPowerOptions &␉\␊ |
42 | ␉␉( kIOBluetoothHCIControllerPowerOptionWakeFromExistingConnectionSupported |␉\␊ |
43 | ␉␉ kIOBluetoothHCIControllerPowerOptionWakeFromNewConnectionSupported ) ) != 0 )␊ |
44 | ␊ |
45 | typedef enum IOBluetoothHCIControllerInternalPowerState␊ |
46 | {␊ |
47 | ␉kIOBluetoothHCIControllerInternalPowerStateOff␉␉= 0,␊ |
48 | ␉kIOBluetoothHCIControllerInternalPowerStateOn␉␉= 1,␊ |
49 | ␉kIOBluetoothHCIControllerInternalPowerStateSleep␉= 2,␊ |
50 | ␉kIOBluetoothHCIControllerInternalPowerStateIdle␉␉= 3␊ |
51 | } IOBluetoothHCIControllerInternalPowerState;␊ |
52 | ␊ |
53 | enum IOBluetoothHCIControllerPowerStateOrdinal␊ |
54 | {␊ |
55 | ␉kIOBluetoothHCIControllerPowerStateOrdinalOff␉␉= 0,␊ |
56 | ␉kIOBluetoothHCIControllerPowerStateOrdinalIdle␉␉= 1,␊ |
57 | ␉kIOBluetoothHCIControllerPowerStateOrdinalOn␉␉= 2␊ |
58 | };␊ |
59 | ␊ |
60 | typedef UInt32 IOBluetoothHCIControllerFeatureFlags;␊ |
61 | ␊ |
62 | enum␊ |
63 | {␊ |
64 | ␉kIOBluetoothHCIControllerFeatureFlagVendorCommandFlowControl␉= 0x00000001,␊ |
65 | ␉kIOBluetoothHCIControllerFeatureFlagSCOSupported␉␉␉␉= 0x00000002,␊ |
66 | ␉kIOBluetoothHCIControllerFeatureFlagSerializeCommands␉␉␉= 0x10000000␊ |
67 | };␊ |
68 | ␊ |
69 | //===========================================================================================================================␊ |
70 | //␉Private_UnifiedInquiryResult␊ |
71 | //===========================================================================================================================␊ |
72 | ␊ |
73 | typedef struct␉IOBluetoothHCIUnifiedInquiryResult␉IOBluetoothHCIUnifiedInquiryResult;␊ |
74 | struct␉IOBluetoothHCIUnifiedInquiryResult␊ |
75 | {␊ |
76 | ␉BluetoothHCIInquiryResult␉␉␉originalInquiryResult;␊ |
77 | ␊ |
78 | ␉// event code will be either:␊ |
79 | ␉// kBluetoothHCIEventInquiryResult, kBluetoothHCIEventInquiryResultWithRSSI, or kBluetoothHCIEventExtendedInquiryResult␊ |
80 | ␊ |
81 | ␉BluetoothHCIEventCode eventCode;␊ |
82 | ␊ |
83 | ␉// kBluetoothHCIEventExtendedInquiryResult only␊ |
84 | ␊ |
85 | ␉BluetoothHCIExtendedInquiryResponse␉extendedInquiryResponse;␊ |
86 | ␊ |
87 | ␉// kBluetoothHCIEventExtendedInquiryResult or kBluetoothHCIEventInquiryResultWithRSSI only␊ |
88 | ␊ |
89 | ␉UInt8␉␉␉␉␉␉␉␉reserved;␊ |
90 | ␉BluetoothHCIRSSIValue␉␉␉␉RSSIValue;␊ |
91 | };␊ |
92 | ␊ |
93 | #if BLUETOOTH_VERSION_MAX_ALLOWED >= BLUETOOTH_VERSION_2_0␊ |
94 | ␊ |
95 | enum BluetoothHCIExtendedInquiryResponseDataTypesAppleSpecificInfo␊ |
96 | {␊ |
97 | ␉kBluetoothHCIExtendedInquiryResponseDataTypeAppleSpecificInfoReserved␉␉␉␉␉=␉0x00,␊ |
98 | ␉kBluetoothHCIExtendedInquiryResponseDataTypeAppleSpecificInfoModelIdentifier␉␉␉=␉0x01,␉/* UTF8String char data */␊ |
99 | ␉kBluetoothHCIExtendedInquiryResponseDataTypeAppleSpecificInfoThirdPartyAdvertising␉␉=␉0x02,␊ |
100 | };␊ |
101 | ␊ |
102 | #endif /* BLUETOOTH_VERSION_MAX_ALLOWED >= BLUETOOTH_VERSION_2_0 */␊ |
103 | ␊ |
104 |