]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmPkg: Update SCMI Base Protocol version to 0x20000
authorNicola Mazzucato <nicola.mazzucato@arm.com>
Mon, 10 May 2021 08:26:16 +0000 (09:26 +0100)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Mon, 10 May 2021 15:46:42 +0000 (15:46 +0000)
The SCP-firmware has moved to full support for SCMIv2 which means that
the base protocol can be either compliant with SCMI v1 or v2.

Allow any version between SCMI v1.0 and SCMI v2.0 to be compatible
with the current implementation.

Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com>
Tested-by: Sami Mujawar <sami.mujawar@arm.com>
Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
ArmPkg/Drivers/ArmScmiDxe/ScmiDxe.c
ArmPkg/Include/Protocol/ArmScmiBaseProtocol.h

index d5890a7633a2d23dabbb068ea417b38f1ae36b5c..fb4e79aa3610800d2d80b10ee297bcef7b5a72ac 100644 (file)
@@ -4,9 +4,9 @@
 \r
   SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
-  System Control and Management Interface V1.0\r
-    http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/\r
-    DEN0056A_System_Control_and_Management_Interface.pdf\r
+  @par Specification Reference:\r
+  - Arm System Control and Management Interface - Platform Design Document\r
+    (https://developer.arm.com/documentation/den0056/)\r
 **/\r
 \r
 #include <Base.h>\r
@@ -86,7 +86,9 @@ ArmScmiDxeEntryPoint (
     return Status;\r
   }\r
 \r
-  if (Version != BASE_PROTOCOL_VERSION) {\r
+  // Accept any version between SCMI v1.0 and SCMI v2.0\r
+  if ((Version < BASE_PROTOCOL_VERSION_V1) ||\r
+    (Version > BASE_PROTOCOL_VERSION_V2)) {\r
     ASSERT (FALSE);\r
     return EFI_UNSUPPORTED;\r
   }\r
index 73ad3e32a2f57da1bc4683ee3143501fe05501df..c4b81c0f56d35b8da3a73da1cf82cc2df0836c24 100644 (file)
@@ -4,9 +4,9 @@
 \r
   SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
-  System Control and Management Interface V1.0\r
-    http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/\r
-    DEN0056A_System_Control_and_Management_Interface.pdf\r
+  @par Specification Reference:\r
+  - Arm System Control and Management Interface - Platform Design Document\r
+    (https://developer.arm.com/documentation/den0056/)\r
 **/\r
 \r
 #ifndef ARM_SCMI_BASE_PROTOCOL_H_\r
@@ -14,7 +14,8 @@
 \r
 #include <Protocol/ArmScmi.h>\r
 \r
-#define BASE_PROTOCOL_VERSION  0x10000\r
+#define BASE_PROTOCOL_VERSION_V1  0x10000\r
+#define BASE_PROTOCOL_VERSION_V2  0x20000\r
 \r
 #define NUM_PROTOCOL_MASK      0xFFU\r
 #define NUM_AGENT_MASK         0xFFU\r
@@ -165,4 +166,3 @@ typedef enum {
 } SCMI_MESSAGE_ID_BASE;\r
 \r
 #endif /* ARM_SCMI_BASE_PROTOCOL_H_ */\r
-\r