2 File to contain all the hardware specific stuff for the Smm QNCn dispatch protocol.
4 Copyright (c) 2013-2015 Intel Corporation.
6 SPDX-License-Identifier: BSD-2-Clause-Patent
12 // Include common header file for this module.
14 #include "CommonHeader.h"
16 #include "QNCSmmHelpers.h"
18 QNC_SMM_SOURCE_DESC QNCN_SOURCE_DESCS
[NUM_ICHN_TYPES
] = {
21 NULL_SOURCE_DESC_INITIALIZER
,
24 NULL_SOURCE_DESC_INITIALIZER
,
30 {{ACPI_ADDR_TYPE
, {R_QNC_PM1BLK_PM1E
}}, S_QNC_PM1BLK_PM1E
, N_QNC_PM1BLK_PM1E_RTC
},
31 NULL_BIT_DESC_INITIALIZER
34 {{ACPI_ADDR_TYPE
, {R_QNC_PM1BLK_PM1S
}}, S_QNC_PM1BLK_PM1S
, N_QNC_PM1BLK_PM1S_RTC
}
38 // QNCnRingIndicate (3)
39 NULL_SOURCE_DESC_INITIALIZER
,
42 NULL_SOURCE_DESC_INITIALIZER
,
45 NULL_SOURCE_DESC_INITIALIZER
,
47 // QNCnY2KRollover (6)
48 NULL_SOURCE_DESC_INITIALIZER
,
51 NULL_SOURCE_DESC_INITIALIZER
,
54 NULL_SOURCE_DESC_INITIALIZER
,
57 NULL_SOURCE_DESC_INITIALIZER
,
59 // QNCnIntruderDetect (10)
60 NULL_SOURCE_DESC_INITIALIZER
,
64 QNC_SMM_CLEAR_WITH_ZERO
,
71 (PCI_BUS_NUMBER_QNC
<< 24) |
72 (PCI_DEVICE_NUMBER_QNC_LPC
<< 16) |
73 (PCI_FUNCTION_NUMBER_QNC_LPC
<< 8) |
79 N_QNC_LPC_BIOS_CNTL_BLE
81 NULL_BIT_DESC_INITIALIZER
89 (PCI_BUS_NUMBER_QNC
<< 24) |
90 (PCI_DEVICE_NUMBER_QNC_LPC
<< 16) |
91 (PCI_FUNCTION_NUMBER_QNC_LPC
<< 8) |
97 N_QNC_LPC_BIOS_CNTL_BIOSWE
103 NULL_SOURCE_DESC_INITIALIZER
,
106 NULL_SOURCE_DESC_INITIALIZER
,
110 QNC_SMM_SCI_EN_DEPENDENT
,
112 {{GPE_ADDR_TYPE
, {R_QNC_GPE0BLK_GPE0E
}}, S_QNC_GPE0BLK_GPE0E
, N_QNC_GPE0BLK_GPE0E_THRM
},
113 NULL_BIT_DESC_INITIALIZER
116 {{GPE_ADDR_TYPE
, {R_QNC_GPE0BLK_GPE0S
}}, S_QNC_GPE0BLK_GPE0S
, N_QNC_GPE0BLK_GPE0S_THRM
}
121 NULL_SOURCE_DESC_INITIALIZER
,
123 // QNCnIntelUsb2 (16)
124 NULL_SOURCE_DESC_INITIALIZER
,
127 NULL_SOURCE_DESC_INITIALIZER
,
130 NULL_SOURCE_DESC_INITIALIZER
,
133 NULL_SOURCE_DESC_INITIALIZER
,
136 NULL_SOURCE_DESC_INITIALIZER
,
138 // QNCnDevTrap13 (21)
139 NULL_SOURCE_DESC_INITIALIZER
,
141 // QNCnDevTrap12 (22)
142 NULL_SOURCE_DESC_INITIALIZER
,
144 // QNCnDevTrap11 (23)
145 NULL_SOURCE_DESC_INITIALIZER
,
147 // QNCnDevTrap10 (24)
148 NULL_SOURCE_DESC_INITIALIZER
,
151 NULL_SOURCE_DESC_INITIALIZER
,
154 NULL_SOURCE_DESC_INITIALIZER
,
157 NULL_SOURCE_DESC_INITIALIZER
,
160 NULL_SOURCE_DESC_INITIALIZER
,
163 NULL_SOURCE_DESC_INITIALIZER
,
166 NULL_SOURCE_DESC_INITIALIZER
,
169 NULL_SOURCE_DESC_INITIALIZER
,
172 NULL_SOURCE_DESC_INITIALIZER
,
175 NULL_SOURCE_DESC_INITIALIZER
,
178 NULL_SOURCE_DESC_INITIALIZER
,
181 NULL_SOURCE_DESC_INITIALIZER
,
184 NULL_SOURCE_DESC_INITIALIZER
,
187 NULL_SOURCE_DESC_INITIALIZER
,
189 // QNCnPciExpress (38)
190 NULL_SOURCE_DESC_INITIALIZER
,
193 NULL_SOURCE_DESC_INITIALIZER
,
196 NULL_SOURCE_DESC_INITIALIZER
,
199 NULL_SOURCE_DESC_INITIALIZER
,
201 // QNCnGpioUnlock (42)
202 NULL_SOURCE_DESC_INITIALIZER
206 QNCSmmQNCnClearSource(
207 QNC_SMM_SOURCE_DESC
*SrcDesc
210 QNCSmmClearSource (SrcDesc
);