]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPlatformPkg/ArmJunoPkg/AcpiTables/Dsdt.asl
7a56f001a64b94ecfdf73db5983709b302a31194
[mirror_edk2.git] / ArmPlatformPkg / ArmJunoPkg / AcpiTables / Dsdt.asl
1 /** @file
2 Differentiated System Description Table Fields (DSDT)
3
4 Copyright (c) 2014-2015, ARM Ltd. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #include "ArmPlatform.h"
16
17 DefinitionBlock("DsdtTable.aml", "DSDT", 1, "ARMLTD", "ARM-JUNO", EFI_ACPI_ARM_OEM_REVISION) {
18 Scope(_SB) {
19 //
20 // A57x2-A53x4 Processor declaration
21 //
22 Device(CPU0) { // A53-0: Cluster 1, Cpu 0
23 Name(_HID, "ACPI0007")
24 Name(_UID, 0)
25 }
26 Device(CPU1) { // A53-1: Cluster 1, Cpu 1
27 Name(_HID, "ACPI0007")
28 Name(_UID, 1)
29 }
30 Device(CPU2) { // A53-2: Cluster 1, Cpu 2
31 Name(_HID, "ACPI0007")
32 Name(_UID, 2)
33 }
34 Device(CPU3) { // A53-3: Cluster 1, Cpu 3
35 Name(_HID, "ACPI0007")
36 Name(_UID, 3)
37 }
38 Device(CPU4) { // A57-0: Cluster 0, Cpu 0
39 Name(_HID, "ACPI0007")
40 Name(_UID, 4)
41 }
42 Device(CPU5) { // A57-1: Cluster 0, Cpu 1
43 Name(_HID, "ACPI0007")
44 Name(_UID, 5)
45 }
46
47 //
48 // Keyboard and Mouse
49 //
50 Device(KMI0) {
51 Name(_HID, "ARMH0501")
52 Name(_CID, "PL050_KBD")
53 Name(_CRS, ResourceTemplate() {
54 Memory32Fixed(ReadWrite, 0x1C060008, 0x4)
55 Memory32Fixed(ReadWrite, 0x1C060000, 0x4)
56 Memory32Fixed(ReadOnly, 0x1C060004, 0x4)
57 Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive) { 197 }
58 })
59 }
60
61 //
62 // LAN9118 Ethernet
63 //
64 Device(ETH0) {
65 Name(_HID, "ARMH9118")
66 Name(_UID, Zero)
67 Name(_CRS, ResourceTemplate() {
68 Memory32Fixed(ReadWrite, 0x1A000000, 0x1000)
69 Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive) { 192 }
70 })
71 }
72
73 // UART PL011
74 Device(COM0) {
75 Name(_HID, "ARMH0011")
76 Name(_CID, "PL011")
77 Name(_UID, Zero)
78 Name(_CRS, ResourceTemplate() {
79 Memory32Fixed(ReadWrite, 0x7FF80000, 0x1000)
80 Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive) { 115 }
81 })
82 }
83
84 //
85 // USB Host Controller
86 //
87 Device(USB0){
88 Name(_HID, "ARMH0D20")
89 Name(_CID, "PNP0D20")
90 Name(_UID, 2)
91
92 Method(_CRS, 0x0, Serialized){
93 Name(RBUF, ResourceTemplate(){
94 Memory32Fixed(ReadWrite, 0x7FFC0000, 0x000000B0)
95 Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive) {149} // INT ID=149 GIC IRQ ID=117 for Juno SoC USB EHCI Controller
96 })
97 Return(RBUF)
98 }
99
100 //
101 // Root Hub
102 //
103 Device(RHUB){
104 Name(_ADR, 0x00000000) // Address of Root Hub should be 0 as per ACPI 5.0 spec
105
106 //
107 // Ports connected to Root Hub
108 //
109 Device(HUB1){
110 Name(_ADR, 0x00000001)
111 Name(_UPC, Package(){
112 0x00, // Port is NOT connectable
113 0xFF, // Don't care
114 0x00000000, // Reserved 0 must be zero
115 0x00000000 // Reserved 1 must be zero
116 })
117
118 Device(PRT1){
119 Name(_ADR, 0x00000001)
120 Name(_UPC, Package(){
121 0xFF, // Port is connectable
122 0x00, // Port connector is A
123 0x00000000,
124 0x00000000
125 })
126 Name(_PLD, Package(){
127 Buffer(0x10){
128 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
129 0x31, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
130 }
131 })
132 } // USB0_RHUB_HUB1_PRT1
133 Device(PRT2){
134 Name(_ADR, 0x00000002)
135 Name(_UPC, Package(){
136 0xFF, // Port is connectable
137 0x00, // Port connector is A
138 0x00000000,
139 0x00000000
140 })
141 Name(_PLD, Package(){
142 Buffer(0x10){
143 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
144 0x31, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
145 }
146 })
147 } // USB0_RHUB_HUB1_PRT2
148
149 Device(PRT3){
150 Name(_ADR, 0x00000003)
151 Name(_UPC, Package(){
152 0xFF, // Port is connectable
153 0x00, // Port connector is A
154 0x00000000,
155 0x00000000
156 })
157 Name(_PLD, Package(){
158 Buffer(0x10){
159 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
160 0x31, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
161 }
162 })
163 } // USB0_RHUB_HUB1_PRT3
164
165 Device(PRT4){
166 Name(_ADR, 0x00000004)
167 Name(_UPC, Package(){
168 0xFF, // Port is connectable
169 0x00, // Port connector is A
170 0x00000000,
171 0x00000000
172 })
173 Name(_PLD, Package(){
174 Buffer(0x10){
175 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
176 0x31, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
177 }
178 })
179 } // USB0_RHUB_HUB1_PRT4
180 } // USB0_RHUB_HUB1
181 } // USB0_RHUB
182 } // USB0
183 } // Scope(_SB)
184 }