soc/intel: Remove blank lines before '}' and after '{'
[coreboot2.git] / src / mainboard / asus / p2b / dsdt.asl
blob5d53c1dfa6cb6016d6834d379f3ceaccff774d88
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #include <southbridge/intel/i82371eb/i82371eb.h>
5 #define SUPERIO_PNP_BASE 0x3F0
6 #define SUPERIO_SHOW_UARTA
7 #define SUPERIO_SHOW_UARTB
8 #define SUPERIO_SHOW_FDC
9 #define SUPERIO_SHOW_LPT
11 #include <acpi/acpi.h>
13 DefinitionBlock (
14         "dsdt.aml",
15         "DSDT",
16         ACPI_DSDT_REV_2,
17         OEM_ID,
18         ACPI_TABLE_CREATOR,
19         1
20         )
22         #include <acpi/dsdt_top.asl>
23         /* \_SB scope defining the main processor is generated in SSDT. */
25         #include <arch/x86/acpi/post.asl>
27         /*
28          * Intel 82371EB (PIIX4E) datasheet, section 7.2.3, page 142
29          *
30          * 0: soft off/suspend to disk                                  S5
31          * 1: suspend to ram                                            S3
32          * 2: powered on suspend, context lost                          S2
33          *    Note: 'context lost' means the CPU restarts at the reset
34          *          vector
35          * 3: powered on suspend, CPU context lost                      S1
36          *    Note: Looks like 'CPU context lost' does _not_ mean the
37          *          CPU restarts at the reset vector. Most likely only
38          *          caches are lost, so both 0x3 and 0x4 map to ACPI S1
39          * 4: powered on suspend, context maintained                    S1
40          * 5: working (clock control)                                   S0
41          * 6: reserved
42          * 7: reserved
43          */
44         Name (\_S0, Package () { 0x05, 0x05, 0x00, 0x00 })
45         Name (\_S1, Package () { 0x03, 0x03, 0x00, 0x00 })
46         Name (\_S5, Package () { 0x00, 0x00, 0x00, 0x00 })
48         OperationRegion (GPOB, SystemIO, DEFAULT_PMBASE+DEVCTL, 0x10)
49         Field (GPOB, ByteAcc, NoLock, Preserve)
50         {
51                 Offset (0x03),
52                 TO12,   1, /* Device trap 12 */
53                 Offset (0x08),
54                 FANM,   1, /* GPO0, meant for fan */
55                 Offset (0x09),
56                 PLED,   1, /* GPO8, meant for power LED. Per PIIX4 datasheet */
57                     ,   3, /* this goes low when power is cut from its core. */
58                     ,   2,
59                     ,   16,
60                 MSG0,   1 /* GPO30, message LED */
61         }
63         /* Prepare To Sleep, Arg0 is target S-state */
64         Method (\_PTS, 1, NotSerialized)
65         {
66                 /* Disable fan, blink power LED, if not turning off */
67                 If (Arg0 != 0x05)
68                 {
69                     FANM = 0
70                     PLED = 0
71                 }
73                 /* Arms SMI for device 12 */
74                 TO12 = 1
75                 /* Put out a POST code */
76                 DBG0 = Arg0 | 0xF0
77         }
79         Method (\_WAK, 1, NotSerialized)
80         {
81                 /* Re-enable fan, stop power led blinking */
82                 FANM = 1
83                 PLED = 1
84                 /* wake OK */
85                 Return(Package(0x02){0x00, 0x00})
86         }
88         /* Root of the bus hierarchy */
89         Scope (\_SB)
90         {
91                 #include <southbridge/intel/i82371eb/acpi/intx.asl>
93                 PCI_INTX_DEV(LNKA, \_SB.PCI0.PX40.PIRA, 1)
94                 PCI_INTX_DEV(LNKB, \_SB.PCI0.PX40.PIRB, 2)
95                 PCI_INTX_DEV(LNKC, \_SB.PCI0.PX40.PIRC, 3)
96                 PCI_INTX_DEV(LNKD, \_SB.PCI0.PX40.PIRD, 4)
98                 /* Top PCI device */
99                 Device (PCI0)
100                 {
101                         Name (_HID, EisaId ("PNP0A03"))
102                         Name (_UID, 0x00)
103                         Name (_BBN, 0x00)
105                         /* PCI Routing Table */
106                         Name (_PRT, Package () {
107                                 Package (0x04) { 0x0001FFFF, 0, LNKA, 0 },
108                                 Package (0x04) { 0x0001FFFF, 1, LNKB, 0 },
109                                 Package (0x04) { 0x0001FFFF, 2, LNKC, 0 },
110                                 Package (0x04) { 0x0001FFFF, 3, LNKD, 0 },
112                                 Package (0x04) { 0x0004FFFF, 0, LNKA, 0 },
113                                 Package (0x04) { 0x0004FFFF, 1, LNKB, 0 },
114                                 Package (0x04) { 0x0004FFFF, 2, LNKC, 0 },
115                                 Package (0x04) { 0x0004FFFF, 3, LNKD, 0 },
117 #if CONFIG(BOARD_ASUS_P2B_LS)
118                                 Package (0x04) { 0x0006FFFF, 0, LNKD, 0 },
119                                 Package (0x04) { 0x0006FFFF, 1, LNKA, 0 },
120                                 Package (0x04) { 0x0006FFFF, 2, LNKB, 0 },
121                                 Package (0x04) { 0x0006FFFF, 3, LNKC, 0 },
122 #endif
123                                 Package (0x04) { 0x0009FFFF, 0, LNKD, 0 },
124                                 Package (0x04) { 0x0009FFFF, 1, LNKA, 0 },
125                                 Package (0x04) { 0x0009FFFF, 2, LNKB, 0 },
126                                 Package (0x04) { 0x0009FFFF, 3, LNKC, 0 },
128                                 Package (0x04) { 0x000AFFFF, 0, LNKC, 0 },
129                                 Package (0x04) { 0x000AFFFF, 1, LNKD, 0 },
130                                 Package (0x04) { 0x000AFFFF, 2, LNKA, 0 },
131                                 Package (0x04) { 0x000AFFFF, 3, LNKB, 0 },
133 #if CONFIG(BOARD_ASUS_P2B_LS)
134                                 Package (0x04) { 0x0007FFFF, 0, LNKC, 0 },
135                                 Package (0x04) { 0x0007FFFF, 1, LNKD, 0 },
136                                 Package (0x04) { 0x0007FFFF, 2, LNKA, 0 },
137                                 Package (0x04) { 0x0007FFFF, 3, LNKB, 0 },
138 #endif
139                                 Package (0x04) { 0x000BFFFF, 0, LNKB, 0 },
140                                 Package (0x04) { 0x000BFFFF, 1, LNKC, 0 },
141                                 Package (0x04) { 0x000BFFFF, 2, LNKD, 0 },
142                                 Package (0x04) { 0x000BFFFF, 3, LNKA, 0 },
144                                 Package (0x04) { 0x000CFFFF, 0, LNKA, 0 },
145                                 Package (0x04) { 0x000CFFFF, 1, LNKB, 0 },
146                                 Package (0x04) { 0x000CFFFF, 2, LNKC, 0 },
147                                 Package (0x04) { 0x000CFFFF, 3, LNKD, 0 },
149 #if CONFIG(BOARD_ASUS_P3B_F)
150                                 Package (0x04) { 0x000DFFFF, 0, LNKD, 0 },
151                                 Package (0x04) { 0x000DFFFF, 1, LNKA, 0 },
152                                 Package (0x04) { 0x000DFFFF, 2, LNKB, 0 },
153                                 Package (0x04) { 0x000DFFFF, 3, LNKC, 0 },
155                                 Package (0x04) { 0x000EFFFF, 0, LNKC, 0 },
156                                 Package (0x04) { 0x000EFFFF, 1, LNKD, 0 },
157                                 Package (0x04) { 0x000EFFFF, 2, LNKA, 0 },
158                                 Package (0x04) { 0x000EFFFF, 3, LNKB, 0 },
159 #endif
160                         })
161                         #include <northbridge/intel/i440bx/acpi/sb_pci0_crs.asl>
162                         #include <southbridge/intel/i82371eb/acpi/isabridge.asl>
164                         #include <southbridge/intel/i82371eb/acpi/i82371eb.asl>
165                         #include <superio/winbond/w83977tf/acpi/superio.asl>
166                 }
167         }
169         /* ACPI Message */
170         Scope (\_SI)
171         {
172                 Method (_MSG, 1, NotSerialized)
173                 {
174                         If (Arg0 == 0)
175                         {
176                                 MSG0 = 1
177                         }
178                         Else
179                         {
180                                 MSG0 = 0
181                         }
182                 }
183         }