• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* SPDX-License-Identifier: GPL-2.0-only */
2
3Device (EMMC)
4{
5	Name (_HID, "80860F14")
6	Name (_CID, "PNP0D40")
7	Name (_UID, 1)
8	Name (_DDN, "eMMC Controller 4.5")
9
10	Name (RBUF, ResourceTemplate()
11	{
12		Memory32Fixed (ReadWrite, 0, 0x1000, BAR0)
13		Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive,,,)
14		{
15			SCC_EMMC_IRQ
16		}
17	})
18
19	Method (_CRS)
20	{
21		CreateDwordField (^RBUF, ^BAR0._BAS, RBAS)
22		RBAS = \C0B0
23		Return (^RBUF)
24	}
25
26	Method (_STA)
27	{
28		If (\C0EN == 1) {
29			Return (0xF)
30		} Else {
31			Return (0x0)
32		}
33	}
34
35	OperationRegion (KEYS, SystemMemory, C0B1, 0x100)
36	Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
37	{
38		Offset (0x84),
39		PSAT, 32,
40	}
41
42	Method (_PS3)
43	{
44		PSAT |= 3
45		PSAT |= 0
46	}
47
48	Method (_PS0)
49	{
50		PSAT &= 0xfffffffc
51		PSAT |= 0
52	}
53
54	Device (EM45)
55	{
56		/* Slot 0, Function 8 */
57		Name (_ADR, 0x8)
58
59		Method (_RMV, 0, NotSerialized)
60		{
61			Return (0)
62		}
63	}
64}
65
66Device (SDIO)
67{
68	Name (_HID, "INT33BB")
69	Name (_CID, "PNP0D40")
70	Name (_UID, 2)
71	Name (_DDN, "SDIO Controller")
72
73	Name (RBUF, ResourceTemplate()
74	{
75		Memory32Fixed (ReadWrite, 0, 0x1000, BAR0)
76		Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive,,,)
77		{
78			SCC_SDIO_IRQ
79		}
80	})
81
82	Method (_CRS)
83	{
84		CreateDwordField (^RBUF, ^BAR0._BAS, RBAS)
85		RBAS = \C1B0
86		Return (^RBUF)
87	}
88
89	Method (_STA)
90	{
91		If (\C1EN == 1) {
92			Return (0xF)
93		} Else {
94			Return (0x0)
95		}
96	}
97
98	OperationRegion (KEYS, SystemMemory, C1B1, 0x100)
99	Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
100	{
101		Offset (0x84),
102		PSAT, 32,
103	}
104
105	Method (_PS3)
106	{
107		PSAT |= 3
108		PSAT |= 0
109	}
110
111	Method (_PS0)
112	{
113		PSAT &= 0xfffffffc
114		PSAT |= 0
115	}
116}
117
118Device (SDCD)
119{
120	Name (_HID, "80860F16")
121	Name (_CID, "PNP0D40")
122	Name (_UID, 3)
123	Name (_DDN, "SD Card Controller")
124
125	Name (RBUF, ResourceTemplate()
126	{
127		Memory32Fixed (ReadWrite, 0, 0x1000, BAR0)
128		Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive,,,)
129		{
130			SCC_SD_IRQ
131		}
132	})
133
134	Method (_CRS)
135	{
136		CreateDwordField (^RBUF, ^BAR0._BAS, RBAS)
137		RBAS = \C2B0
138		Return (^RBUF)
139	}
140
141	Method (_STA)
142	{
143		If (\C2EN == 1) {
144			Return (0xF)
145		} Else {
146			Return (0x0)
147		}
148	}
149
150	OperationRegion (KEYS, SystemMemory, C2B1, 0x100)
151	Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
152	{
153		Offset (0x84),
154		PSAT, 32,
155	}
156
157	Method (_PS3)
158	{
159		PSAT |= 3
160		PSAT |= 0
161	}
162
163	Method (_PS0)
164	{
165		PSAT &= 0xfffffffc
166		PSAT |= 0
167	}
168}
169