mb/google/nissa/var/rull: Add 6W and 15W DPTF parameters
[coreboot.git] / src / soc / intel / common / acpi / sgx.asl
blobcfd7f7ed2a9f58c7a56b0851cda062d7ca6c6a7a
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #if CONFIG(SOC_INTEL_COMMON_BLOCK_SGX_ENABLE)
4 Scope(\_SB)
6         // Secure Enclave memory
7         Device (EPC)
8         {
9                 External (EPCS, IntObj)
10                 External (EMNA, IntObj)
11                 External (ELNG, IntObj)
12                 Name (_HID, EISAID ("INT0E0C"))
13                 Name (_STR, Unicode ("Enclave Page Cache 1.0"))
14                 Name (_MLS, Package () {
15                         Package (2) { "en", Unicode ("Enclave Page Cache 1.0") }
16                 })
18                 Name (RBUF, ResourceTemplate ()
19                 {
20                         // _MIN, _MAX and  _LEN get patched runtime
21                         QWordMemory (
22                         ResourceConsumer, // ResourceUsage
23                         PosDecode,        // Decode             _DEC
24                         MinNotFixed,      // IsMinFixed         _MIF
25                         MaxNotFixed,      // IsMaxFixed         _MAF
26                         NonCacheable,     // Cacheable          _MEM
27                         ReadWrite,        // ReadAndWrite       _RW
28                         0,                // AddressGranularity _GRA
29                         0,                // AddressMinimum     _MIN
30                         0,                // AddressMaximum     _MAX
31                         0,                // AddressTranslation _TRA
32                         1,                // RangeLength        _LEN
33                         ,                 // ResourceSourceIndex
34                         ,                 // ResourceSource
35                         BAR0              // DescriptorName
36                         )
37                 })
39                 Method (_CRS, 0x0, NotSerialized)
40                 {
41                         CreateQwordField (RBUF, ^BAR0._MIN, EMIN)
42                         CreateQwordField (RBUF, ^BAR0._MAX, EMAX)
43                         CreateQwordField (RBUF, ^BAR0._LEN, ELEN)
44                         EMIN = EMNA
45                         ELEN = ELNG
46                         EMAX = EMNA + ELNG - 1
47                         Return (RBUF)
48                 }
50                 Method (_STA, 0x0, NotSerialized)
51                 {
52                         If (EPCS != 0)
53                         {
54                                 Return (0xF)
55                         }
56                         Return (0x0)
57                 }
59         } // end EPC Device
60 } // End of Scope(\_SB)
61 #endif