@@ -3,11 +3,11 @@ ACPI on Arm systems
33===================
44
55ACPI can be used for Armv8 and Armv9 systems designed to follow
6- the Arm SBSA (Server Base System Architecture) [0] and SBBR (Server
7- Base Boot Requirements) [1] specifications. Please note that the SBBR
8- can be retrieved simply by visiting [1], but the SBSA is currently only
9- available to those with an ARM login due to ARM IP licensing concerns.
10-
6+ the BSA (Arm Base System Architecture) [0] and BBR (Arm
7+ Base Boot Requirements) [1] specifications. Both BSA and BBR are publicly
8+ accessible documents.
9+ Arm Servers, in addition to being BSA compliant, comply with a set
10+ of rules defined in SBSA (Server Base System Architecture) [2].
1111
1212The Arm kernel implements the reduced hardware model of ACPI version
13135.1 or later. Links to the specification and all external documents
@@ -31,7 +31,7 @@ Why ACPI on Arm?
3131Before examining the details of the interface between ACPI and Linux, it is
3232useful to understand why ACPI is being used. Several technologies already
3333exist in Linux for describing non-enumerable hardware, after all. In this
34- section we summarize a blog post [2 ] from Grant Likely that outlines the
34+ section we summarize a blog post [3 ] from Grant Likely that outlines the
3535reasoning behind ACPI on Arm systems. Actually, we snitch a good portion
3636of the summary text almost directly, to be honest.
3737
@@ -270,16 +270,14 @@ Drivers should look for device properties in the _DSD object ONLY; the _DSD
270270object is described in the ACPI specification section 6.2.5, but this only
271271describes how to define the structure of an object returned via _DSD, and
272272how specific data structures are defined by specific UUIDs. Linux should
273- only use the _DSD Device Properties UUID [5 ]:
273+ only use the _DSD Device Properties UUID [4 ]:
274274
275275 - UUID: daffd814-6eba-4d8c-8a91-bc9bbf4aa301
276276
277- - https://www.uefi.org/sites/default/files/resources/_DSD-device-properties-UUID.pdf
278-
279- The UEFI Forum provides a mechanism for registering device properties [4]
280- so that they may be used across all operating systems supporting ACPI.
281- Device properties that have not been registered with the UEFI Forum should
282- not be used.
277+ Common device properties can be registered by creating a pull request to [4] so
278+ that they may be used across all operating systems supporting ACPI.
279+ Device properties that have not been registered with the UEFI Forum can be used
280+ but not as "uefi-" common properties.
283281
284282Before creating new device properties, check to be sure that they have not
285283been defined before and either registered in the Linux kernel documentation
@@ -307,7 +305,7 @@ process.
307305
308306Once registration and review have been completed, the kernel provides an
309307interface for looking up device properties in a manner independent of
310- whether DT or ACPI is being used. This API should be used [6 ]; it can
308+ whether DT or ACPI is being used. This API should be used [5 ]; it can
311309eliminate some duplication of code paths in driver probing functions and
312310discourage divergence between DT bindings and ACPI device properties.
313311
@@ -491,31 +489,23 @@ Documentation/arm64/acpi_object_usage.rst.
491489
492490References
493491----------
494- [0] http://silver.arm.com
495- document ARM-DEN-0029, or newer:
496- "Server Base System Architecture", version 2.3, dated 27 Mar 2014
492+ [0] https://developer.arm.com/documentation/den0094/latest
493+ document Arm-DEN-0094: "Arm Base System Architecture", version 1.0C, dated 6 Oct 2022
494+
495+ [1] https://developer.arm.com/documentation/den0044/latest
496+ Document Arm-DEN-0044: "Arm Base Boot Requirements", version 2.0G, dated 15 Apr 2022
497497
498- [1] http://infocenter.arm.com/help/topic/com.arm.doc.den0044a/Server_Base_Boot_Requirements.pdf
499- Document ARM-DEN-0044A, or newer: "Server Base Boot Requirements, System
500- Software on ARM Platforms", dated 16 Aug 2014
498+ [2] https://developer.arm.com/documentation/den0029/latest
499+ Document Arm-DEN-0029: "Arm Server Base System Architecture", version 7.1, dated 06 Oct 2022
501500
502- [2 ] http://www.secretlab.ca/archives/151,
501+ [3 ] http://www.secretlab.ca/archives/151,
503502 10 Jan 2015, Copyright (c) 2015,
504503 Linaro Ltd., written by Grant Likely.
505504
506- [3] AMD ACPI for Seattle platform documentation
507- http://amd-dev.wpengine.netdna-cdn.com/wordpress/media/2012/10/Seattle_ACPI_Guide.pdf
508-
509-
510- [4] http://www.uefi.org/acpi
511- please see the link for the "ACPI _DSD Device
512- Property Registry Instructions"
513-
514- [5] http://www.uefi.org/acpi
515- please see the link for the "_DSD (Device
516- Specific Data) Implementation Guide"
505+ [4] _DSD (Device Specific Data) Implementation Guide
506+ https://github.com/UEFI/DSD-Guide/blob/main/dsd-guide.pdf
517507
518- [6 ] Kernel code for the unified device
508+ [5 ] Kernel code for the unified device
519509 property interface can be found in
520510 include/linux/property.h and drivers/base/property.c.
521511
0 commit comments