PCI-PDRC.asi 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. /** @file
  2. Copyright (c) 2023, Ampere Computing LLC. All rights reserved.<BR>
  3. SPDX-License-Identifier: BSD-2-Clause-Patent
  4. **/
  5. // Motherboard resource consumption for PCIE resource reservation
  6. // as upstream discussion "ACPI namespace details for ARM64"
  7. Device (PDRC) {
  8. Name (_HID, EISAID("PNP0C02"))
  9. Name (_UID, 1)
  10. // S0 Start here
  11. Name (PDRS, ResourceTemplate() {
  12. QWordMemory ( // PCIE0 256M CFG region for ECAM
  13. ResourceProducer, // ResourceUsage
  14. PosDecode, // Decode
  15. MinFixed, // IsMinFixed
  16. MaxFixed, // IsMaxFixed
  17. Cacheable, // Cacheable
  18. ReadWrite, // ReadAndWrite
  19. 0x0000000000000000, // AddressGranularity - GRA
  20. 0x00003BFFF0000000, // AddressMinimum - MIN
  21. 0x00003BFFFFFFFFFF, // AddressMaximum - MAX
  22. 0x0000000000000000, // AddressTranslation - TRA
  23. 0x0000000010000000 // RangeLength - LEN
  24. )
  25. QWordMemory ( // PCIE1 256M CFG region for ECAM
  26. ResourceProducer, // ResourceUsage
  27. PosDecode, // Decode
  28. MinFixed, // IsMinFixed
  29. MaxFixed, // IsMaxFixed
  30. Cacheable, // Cacheable
  31. ReadWrite, // ReadAndWrite
  32. 0x0000000000000000, // AddressGranularity - GRA
  33. 0x00003FFFF0000000, // AddressMinimum - MIN
  34. 0x00003FFFFFFFFFFF, // AddressMaximum - MAX
  35. 0x0000000000000000, // AddressTranslation - TRA
  36. 0x0000000010000000 // RangeLength - LEN
  37. )
  38. QWordMemory ( // PCIE2 256M CFG region for ECAM
  39. ResourceProducer, // ResourceUsage
  40. PosDecode, // Decode
  41. MinFixed, // IsMinFixed
  42. MaxFixed, // IsMaxFixed
  43. Cacheable, // Cacheable
  44. ReadWrite, // ReadAndWrite
  45. 0x0000000000000000, // AddressGranularity - GRA
  46. 0x000023FFF0000000, // AddressMinimum - MIN
  47. 0x000023FFFFFFFFFF, // AddressMaximum - MAX
  48. 0x0000000000000000, // AddressTranslation - TRA
  49. 0x0000000010000000 // RangeLength - LEN
  50. )
  51. QWordMemory ( // PCIE3 256M CFG region for ECAM
  52. ResourceProducer, // ResourceUsage
  53. PosDecode, // Decode
  54. MinFixed, // IsMinFixed
  55. MaxFixed, // IsMaxFixed
  56. Cacheable, // Cacheable
  57. ReadWrite, // ReadAndWrite
  58. 0x0000000000000000, // AddressGranularity - GRA
  59. 0x000027FFF0000000, // AddressMinimum - MIN
  60. 0x000027FFFFFFFFFF, // AddressMaximum - MAX
  61. 0x0000000000000000, // AddressTranslation - TRA
  62. 0x0000000010000000 // RangeLength - LEN
  63. )
  64. QWordMemory ( // PCIE4 256M CFG region for ECAM
  65. ResourceProducer, // ResourceUsage
  66. PosDecode, // Decode
  67. MinFixed, // IsMinFixed
  68. MaxFixed, // IsMaxFixed
  69. Cacheable, // Cacheable
  70. ReadWrite, // ReadAndWrite
  71. 0x0000000000000000, // AddressGranularity - GRA
  72. 0x00002BFFF0000000, // AddressMinimum - MIN
  73. 0x00002BFFFFFFFFFF, // AddressMaximum - MAX
  74. 0x0000000000000000, // AddressTranslation - TRA
  75. 0x0000000010000000 // RangeLength - LEN
  76. )
  77. QWordMemory ( // PCIE5 256M CFG region for ECAM
  78. ResourceProducer, // ResourceUsage
  79. PosDecode, // Decode
  80. MinFixed, // IsMinFixed
  81. MaxFixed, // IsMaxFixed
  82. Cacheable, // Cacheable
  83. ReadWrite, // ReadAndWrite
  84. 0x0000000000000000, // AddressGranularity - GRA
  85. 0x00002FFFF0000000, // AddressMinimum - MIN
  86. 0x00002FFFFFFFFFFF, // AddressMaximum - MAX
  87. 0x0000000000000000, // AddressTranslation - TRA
  88. 0x0000000010000000 // RangeLength - LEN
  89. )
  90. // S1 Start here
  91. QWordMemory ( // PCIE6 256M CFG region for ECAM
  92. ResourceProducer, // ResourceUsage
  93. PosDecode, // Decode
  94. MinFixed, // IsMinFixed
  95. MaxFixed, // IsMaxFixed
  96. Cacheable, // Cacheable
  97. ReadWrite, // ReadAndWrite
  98. 0x0000000000000000, // AddressGranularity - GRA
  99. 0x00007BFFF0000000, // AddressMinimum - MIN
  100. 0x00007BFFFFFFFFFF, // AddressMaximum - MAX
  101. 0x0000000000000000, // AddressTranslation - TRA
  102. 0x0000000010000000 // RangeLength - LEN
  103. )
  104. QWordMemory ( // PCIE7 256M CFG region for ECAM
  105. ResourceProducer, // ResourceUsage
  106. PosDecode, // Decode
  107. MinFixed, // IsMinFixed
  108. MaxFixed, // IsMaxFixed
  109. Cacheable, // Cacheable
  110. ReadWrite, // ReadAndWrite
  111. 0x0000000000000000, // AddressGranularity - GRA
  112. 0x00007FFFF0000000, // AddressMinimum - MIN
  113. 0x00007FFFFFFFFFFF, // AddressMaximum - MAX
  114. 0x0000000000000000, // AddressTranslation - TRA
  115. 0x0000000010000000 // RangeLength - LEN
  116. )
  117. QWordMemory ( // PCIE8 256M CFG region for ECAM
  118. ResourceProducer, // ResourceUsage
  119. PosDecode, // Decode
  120. MinFixed, // IsMinFixed
  121. MaxFixed, // IsMaxFixed
  122. Cacheable, // Cacheable
  123. ReadWrite, // ReadAndWrite
  124. 0x0000000000000000, // AddressGranularity - GRA
  125. 0x000063FFF0000000, // AddressMinimum - MIN
  126. 0x000063FFFFFFFFFF, // AddressMaximum - MAX
  127. 0x0000000000000000, // AddressTranslation - TRA
  128. 0x0000000010000000 // RangeLength - LEN
  129. )
  130. QWordMemory ( // PCIE9 256M CFG region for ECAM
  131. ResourceProducer, // ResourceUsage
  132. PosDecode, // Decode
  133. MinFixed, // IsMinFixed
  134. MaxFixed, // IsMaxFixed
  135. Cacheable, // Cacheable
  136. ReadWrite, // ReadAndWrite
  137. 0x0000000000000000, // AddressGranularity - GRA
  138. 0x000067FFF0000000, // AddressMinimum - MIN
  139. 0x000067FFFFFFFFFF, // AddressMaximum - MAX
  140. 0x0000000000000000, // AddressTranslation - TRA
  141. 0x0000000010000000 // RangeLength - LEN
  142. )
  143. QWordMemory ( // PCIEA 256M CFG region for ECAM
  144. ResourceProducer, // ResourceUsage
  145. PosDecode, // Decode
  146. MinFixed, // IsMinFixed
  147. MaxFixed, // IsMaxFixed
  148. Cacheable, // Cacheable
  149. ReadWrite, // ReadAndWrite
  150. 0x0000000000000000, // AddressGranularity - GRA
  151. 0x00006BFFF0000000, // AddressMinimum - MIN
  152. 0x00006BFFFFFFFFFF, // AddressMaximum - MAX
  153. 0x0000000000000000, // AddressTranslation - TRA
  154. 0x0000000010000000 // RangeLength - LEN
  155. )
  156. QWordMemory ( // PCIEB 256M CFG region for ECAM
  157. ResourceProducer, // ResourceUsage
  158. PosDecode, // Decode
  159. MinFixed, // IsMinFixed
  160. MaxFixed, // IsMaxFixed
  161. Cacheable, // Cacheable
  162. ReadWrite, // ReadAndWrite
  163. 0x0000000000000000, // AddressGranularity - GRA
  164. 0x00006FFFF0000000, // AddressMinimum - MIN
  165. 0x00006FFFFFFFFFFF, // AddressMaximum - MAX
  166. 0x0000000000000000, // AddressTranslation - TRA
  167. 0x0000000010000000 // RangeLength - LEN
  168. )
  169. QWordMemory ( // PCIEC 256M CFG region for ECAM
  170. ResourceProducer, // ResourceUsage
  171. PosDecode, // Decode
  172. MinFixed, // IsMinFixed
  173. MaxFixed, // IsMaxFixed
  174. Cacheable, // Cacheable
  175. ReadWrite, // ReadAndWrite
  176. 0x0000000000000000, // AddressGranularity - GRA
  177. 0x000033FFF0000000, // AddressMinimum - MIN
  178. 0x000033FFFFFFFFFF, // AddressMaximum - MAX
  179. 0x0000000000000000, // AddressTranslation - TRA
  180. 0x0000000010000000 // RangeLength - LEN
  181. )
  182. QWordMemory ( // PCIED 256M CFG region for ECAM
  183. ResourceProducer, // ResourceUsage
  184. PosDecode, // Decode
  185. MinFixed, // IsMinFixed
  186. MaxFixed, // IsMaxFixed
  187. Cacheable, // Cacheable
  188. ReadWrite, // ReadAndWrite
  189. 0x0000000000000000, // AddressGranularity - GRA
  190. 0x000037FFF0000000, // AddressMinimum - MIN
  191. 0x000037FFFFFFFFFF, // AddressMaximum - MAX
  192. 0x0000000000000000, // AddressTranslation - TRA
  193. 0x0000000010000000 // RangeLength - LEN
  194. )
  195. })
  196. // Current Resource Settings
  197. Method (_CRS, 0, Serialized) {
  198. Return (PDRS)
  199. }
  200. }