public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage
@ 2022-07-04 16:59 Rohit Mathew
  2022-07-04 16:59 ` [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART Rohit Mathew
                   ` (4 more replies)
  0 siblings, 5 replies; 16+ messages in thread
From: Rohit Mathew @ 2022-07-04 16:59 UTC (permalink / raw)
  To: devel; +Cc: Ard Biesheuvel, Sami Mujawar, Thomas Abraham

Patch 433b5b1b0f7f ("Platform/Sgi: Route logs to different sets of
consoles") setup the routing of console messages to a different set
of UART ports. Following up with this change, this patch series updates
the ACPI tables to route the console messages to the console UART and
adds a device entry for the debug UART.

Link to github branch for the patches in this series -
https://github.com/rohit-arm/edk2-platforms/tree/serial_port_acpi

Rohit Mathew (2):
  Platform/Sgi: Update ACPI tables to use console UART
  Platform/Sgi: Add serial debug controller to SSDT

 .../SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf    |  3 +++
 .../SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf    |  3 +++
 .../SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf  |  3 +++
 .../ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf    |  3 +++
 .../SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf    |  3 +++
 .../ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf    |  3 +++
 .../ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf  |  3 +++
 .../ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf  |  3 +++
 Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc        |  2 +-
 Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl      | 17 ++++++++++++++++-
 10 files changed, 41 insertions(+), 2 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART
  2022-07-04 16:59 [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Rohit Mathew
@ 2022-07-04 16:59 ` Rohit Mathew
  2022-07-21 12:40   ` Sami Mujawar
  2022-07-04 16:59 ` [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT Rohit Mathew
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 16+ messages in thread
From: Rohit Mathew @ 2022-07-04 16:59 UTC (permalink / raw)
  To: devel; +Cc: Ard Biesheuvel, Sami Mujawar, Thomas Abraham

Patch 433b5b1b0f7f ("Platform/Sgi: Route logs to different sets of
consoles") assigns different address for the console UART and the debug
UART. Correspondingly, update the SPCR and SSDT ACPI tables to use the
address of the console UART port instead of the debug UART port.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
---
 Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf   | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf   | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf       | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf   | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf       | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf     | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf     | 2 ++
 Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc                | 2 +-
 Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl              | 2 +-
 10 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
index 8c34c2fa73e4..d2935f1e73e1 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
@@ -32,6 +32,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -69,4 +70,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
index ce89aa93ea7b..73f47ece7718 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
@@ -32,6 +32,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -70,4 +71,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
index c96d0e40d2cd..da14120bde69 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
@@ -34,6 +34,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -80,4 +81,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
index 25be2e276e85..90976250445e 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
@@ -32,6 +32,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -71,4 +72,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
index 4b36c3e5ceb2..95fb446c105d 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
@@ -32,6 +32,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -72,4 +73,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
index 97a87462932b..3540575dd641 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
@@ -32,6 +32,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -71,4 +72,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
index 61a2f3a2452b..c6bd69b4a538 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
@@ -34,6 +34,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -81,4 +82,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
index a1bd71fde761..cb3f3fcdb9b6 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
@@ -32,6 +32,7 @@ [Packages]
   ArmPkg/ArmPkg.dec
   ArmPlatformPkg/ArmPlatformPkg.dec
   EmbeddedPkg/EmbeddedPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
   MdePkg/MdePkg.dec
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
@@ -70,4 +71,5 @@ [FixedPcd]
   gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
   gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
 
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
   gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
diff --git a/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc b/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc
index 6467fcdf4fd0..6307777bd148 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc
+++ b/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc
@@ -34,7 +34,7 @@ STATIC EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE Spcr = {
     EFI_ACPI_RESERVED_BYTE
   },
   // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE  BaseAddress;
-  ARM_GAS32 (FixedPcdGet64 (PcdSerialDbgRegisterBase)),
+  ARM_GAS32 (FixedPcdGet64 (PcdSerialRegisterBase)),
   // UINT8                                   InterruptType;
   EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_INTERRUPT_TYPE_GIC,
   // UINT8                                   Irq;
diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
index 6b36da23cf0b..fd20c67e1225 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
@@ -22,7 +22,7 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
       Name (_CRS, ResourceTemplate () {
         Memory32Fixed (
           ReadWrite,
-          FixedPcdGet64 (PcdSerialDbgRegisterBase),
+          FixedPcdGet64 (PcdSerialRegisterBase),
           0x1000
           )
         Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PL011UartInterrupt) }
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-04 16:59 [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Rohit Mathew
  2022-07-04 16:59 ` [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART Rohit Mathew
@ 2022-07-04 16:59 ` Rohit Mathew
  2022-07-21 12:41   ` Sami Mujawar
  2022-07-04 21:38 ` [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Thomas Abraham
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 16+ messages in thread
From: Rohit Mathew @ 2022-07-04 16:59 UTC (permalink / raw)
  To: devel; +Cc: Ard Biesheuvel, Sami Mujawar, Thomas Abraham

Add a new device entry in the SSDT ACPI table to describe the serial
port used as the debug port. On the Neoverse reference design platforms,
the UART0 port of the SoC is used as the debug port.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
---
 Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf   |  1 +
 Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf   |  1 +
 Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf |  1 +
 Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf       |  1 +
 Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf   |  1 +
 Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf       |  1 +
 Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf     |  1 +
 Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf     |  1 +
 Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl              | 15 +++++++++++++++
 9 files changed, 23 insertions(+)

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
index d2935f1e73e1..d46ae0274d90 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
 [FixedPcd]
   gArmPlatformTokenSpaceGuid.PcdCoreCount
   gArmPlatformTokenSpaceGuid.PcdClusterCount
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
 
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
index 73f47ece7718..4bf681d3bc2e 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
 [FixedPcd]
   gArmPlatformTokenSpaceGuid.PcdCoreCount
   gArmPlatformTokenSpaceGuid.PcdClusterCount
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
 
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
index da14120bde69..89f532217ceb 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
@@ -41,6 +41,7 @@ [Packages]
 [FixedPcd]
   gArmPlatformTokenSpaceGuid.PcdCoreCount
   gArmPlatformTokenSpaceGuid.PcdClusterCount
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
 
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
index 90976250445e..66d5422df36b 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
 [FixedPcd]
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
   gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
index 95fb446c105d..742734ab7348 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
 [FixedPcd]
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PcdCoreCount
   gArmPlatformTokenSpaceGuid.PcdClusterCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
index 3540575dd641..cc41dda1a135 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
 [FixedPcd]
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
   gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
index c6bd69b4a538..ecb42bf3cc33 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
   Platform/ARM/SgiPkg/SgiPlatform.dec
 
 [FixedPcd]
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
   gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
index cb3f3fcdb9b6..379b5c9e6122 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
 [FixedPcd]
   gArmPlatformTokenSpaceGuid.PcdCoreCount
   gArmPlatformTokenSpaceGuid.PcdClusterCount
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
   gArmPlatformTokenSpaceGuid.PL011UartInterrupt
 
diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
index fd20c67e1225..ab8578072836 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
@@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
       })
     }
 
+    Device (COM1) {
+      Name (_HID, "ARMH0011")
+      Name (_CID, "ARMH0011")
+      Name (_UID, One)
+      Name (_STA, 0xF)
+      Name (_CRS, ResourceTemplate () {
+        Memory32Fixed (
+          ReadWrite,
+          FixedPcdGet64 (PcdSerialDbgRegisterBase),
+          0x1000
+          )
+        Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PcdSerialDbgInterrupt) }
+      })
+    }
+
     // VIRTIO DISK
     Device (VR00) {
       Name (_HID, "LNRO0005")
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage
  2022-07-04 16:59 [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Rohit Mathew
  2022-07-04 16:59 ` [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART Rohit Mathew
  2022-07-04 16:59 ` [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT Rohit Mathew
@ 2022-07-04 21:38 ` Thomas Abraham
  2022-07-18 18:00 ` [edk2-devel] " Rohit Mathew
  2022-09-15 17:13 ` Sami Mujawar
  4 siblings, 0 replies; 16+ messages in thread
From: Thomas Abraham @ 2022-07-04 21:38 UTC (permalink / raw)
  To: Rohit Mathew, devel; +Cc: Ard Biesheuvel, Sami Mujawar, nd, pierre.gondois



On 04/07/2022 17:59, Rohit Mathew wrote:
> Patch 433b5b1b0f7f ("Platform/Sgi: Route logs to different sets of
> consoles") setup the routing of console messages to a different set
> of UART ports. Following up with this change, this patch series updates
> the ACPI tables to route the console messages to the console UART and
> adds a device entry for the debug UART.
> 
> Link to github branch for the patches in this series -
> https://github.com/rohit-arm/edk2-platforms/tree/serial_port_acpi
> 
> Rohit Mathew (2):
>    Platform/Sgi: Update ACPI tables to use console UART
>    Platform/Sgi: Add serial debug controller to SSDT
> 
>   .../SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf    |  3 +++
>   .../SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf    |  3 +++
>   .../SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf  |  3 +++
>   .../ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf    |  3 +++
>   .../SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf    |  3 +++
>   .../ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf    |  3 +++
>   .../ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf  |  3 +++
>   .../ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf  |  3 +++
>   Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc        |  2 +-
>   Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl      | 17 ++++++++++++++++-
>   10 files changed, 41 insertions(+), 2 deletions(-)
> 

For this series -
Reviewed-by: Thomas Abraham <thomas.abraham@arm.com>
Tested-by: Thomas Abraham <thomas.abraham@arm.com>

Thanks.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage
  2022-07-04 16:59 [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Rohit Mathew
                   ` (2 preceding siblings ...)
  2022-07-04 21:38 ` [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Thomas Abraham
@ 2022-07-18 18:00 ` Rohit Mathew
  2022-09-15 17:13 ` Sami Mujawar
  4 siblings, 0 replies; 16+ messages in thread
From: Rohit Mathew @ 2022-07-18 18:00 UTC (permalink / raw)
  To: Rohit Mathew, devel

[-- Attachment #1: Type: text/plain, Size: 1382 bytes --]

Hi Team,

Gentle reminder for this patch set.

Regards,
Rohit

On Mon, Jul 4, 2022 at 05:59 PM, Rohit Mathew wrote:

> 
> Patch 433b5b1b0f7f ("Platform/Sgi: Route logs to different sets of
> consoles") setup the routing of console messages to a different set
> of UART ports. Following up with this change, this patch series updates
> the ACPI tables to route the console messages to the console UART and
> adds a device entry for the debug UART.
> 
> Link to github branch for the patches in this series -
> https://github.com/rohit-arm/edk2-platforms/tree/serial_port_acpi
> 
> Rohit Mathew (2):
> Platform/Sgi: Update ACPI tables to use console UART
> Platform/Sgi: Add serial debug controller to SSDT
> 
> .../SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 3 +++
> .../SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 3 +++
> .../SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 3 +++
> .../ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 3 +++
> .../SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 3 +++
> .../ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 3 +++
> .../ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 3 +++
> .../ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 3 +++
> Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc | 2 +-
> Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 17 ++++++++++++++++-
> 10 files changed, 41 insertions(+), 2 deletions(-)
> 
> --=20
> 2.17.1

[-- Attachment #2: Type: text/html, Size: 1596 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART
  2022-07-04 16:59 ` [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART Rohit Mathew
@ 2022-07-21 12:40   ` Sami Mujawar
  0 siblings, 0 replies; 16+ messages in thread
From: Sami Mujawar @ 2022-07-21 12:40 UTC (permalink / raw)
  To: Rohit Mathew, devel; +Cc: Ard Biesheuvel, Thomas Abraham, nd

Hi Rohit,

These changes are fine, just too repetitive.

Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>

Regards,

Sami Mujawar

On 04/07/2022 05:59 pm, Rohit Mathew wrote:
> Patch 433b5b1b0f7f ("Platform/Sgi: Route logs to different sets of
> consoles") assigns different address for the console UART and the debug
> UART. Correspondingly, update the SPCR and SSDT ACPI tables to use the
> address of the console UART port instead of the debug UART port.
>
> Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
> ---
>   Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf   | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf   | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf       | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf   | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf       | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf     | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf     | 2 ++
>   Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc                | 2 +-
>   Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl              | 2 +-
>   10 files changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
> index 8c34c2fa73e4..d2935f1e73e1 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
> @@ -32,6 +32,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -69,4 +70,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
> index ce89aa93ea7b..73f47ece7718 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
> @@ -32,6 +32,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -70,4 +71,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
> index c96d0e40d2cd..da14120bde69 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
> @@ -34,6 +34,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -80,4 +81,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> index 25be2e276e85..90976250445e 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> @@ -32,6 +32,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -71,4 +72,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
> index 4b36c3e5ceb2..95fb446c105d 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
> @@ -32,6 +32,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -72,4 +73,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
> index 97a87462932b..3540575dd641 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
> @@ -32,6 +32,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -71,4 +72,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
> index 61a2f3a2452b..c6bd69b4a538 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
> @@ -34,6 +34,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -81,4 +82,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
> index a1bd71fde761..cb3f3fcdb9b6 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
> @@ -32,6 +32,7 @@ [Packages]
>     ArmPkg/ArmPkg.dec
>     ArmPlatformPkg/ArmPlatformPkg.dec
>     EmbeddedPkg/EmbeddedPkg.dec
> +  MdeModulePkg/MdeModulePkg.dec
>     MdePkg/MdePkg.dec
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
> @@ -70,4 +71,5 @@ [FixedPcd]
>     gArmSgiTokenSpaceGuid.PcdWdogWS0Gsiv
>     gArmSgiTokenSpaceGuid.PcdWdogWS1Gsiv
>   
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase
>     gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc b/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc
> index 6467fcdf4fd0..6307777bd148 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc
> +++ b/Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc
> @@ -34,7 +34,7 @@ STATIC EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE Spcr = {
>       EFI_ACPI_RESERVED_BYTE
>     },
>     // EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE  BaseAddress;
> -  ARM_GAS32 (FixedPcdGet64 (PcdSerialDbgRegisterBase)),
> +  ARM_GAS32 (FixedPcdGet64 (PcdSerialRegisterBase)),
>     // UINT8                                   InterruptType;
>     EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_INTERRUPT_TYPE_GIC,
>     // UINT8                                   Irq;
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
> index 6b36da23cf0b..fd20c67e1225 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
> +++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
> @@ -22,7 +22,7 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
>         Name (_CRS, ResourceTemplate () {
>           Memory32Fixed (
>             ReadWrite,
> -          FixedPcdGet64 (PcdSerialDbgRegisterBase),
> +          FixedPcdGet64 (PcdSerialRegisterBase),
>             0x1000
>             )
>           Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PL011UartInterrupt) }

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-04 16:59 ` [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT Rohit Mathew
@ 2022-07-21 12:41   ` Sami Mujawar
  2022-07-22 12:46     ` [edk2-devel] " Rohit Mathew
  0 siblings, 1 reply; 16+ messages in thread
From: Sami Mujawar @ 2022-07-21 12:41 UTC (permalink / raw)
  To: Rohit Mathew, devel; +Cc: Ard Biesheuvel, Thomas Abraham, nd

Hi Rohit,

Have you considered moving to use Dynamic Tables Framework? There is 
just too much repetition in this series which can be easily avoided. It 
will also make the code more maintainable.

Apart from this I have a comment marked inline as [SAMI].

Regards,

Sami Mujawar

On 04/07/2022 05:59 pm, Rohit Mathew wrote:
> Add a new device entry in the SSDT ACPI table to describe the serial
> port used as the debug port. On the Neoverse reference design platforms,
> the UART0 port of the SoC is used as the debug port.
>
> Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
> ---
>   Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf   |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf   |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf       |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf   |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf       |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf     |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf     |  1 +
>   Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl              | 15 +++++++++++++++
>   9 files changed, 23 insertions(+)
>
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
> index d2935f1e73e1..d46ae0274d90 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
> @@ -39,6 +39,7 @@ [Packages]
>   [FixedPcd]
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
>     gArmPlatformTokenSpaceGuid.PcdClusterCount
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>   
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
> index 73f47ece7718..4bf681d3bc2e 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
> @@ -39,6 +39,7 @@ [Packages]
>   [FixedPcd]
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
>     gArmPlatformTokenSpaceGuid.PcdClusterCount
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>   
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
> index da14120bde69..89f532217ceb 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
> @@ -41,6 +41,7 @@ [Packages]
>   [FixedPcd]
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
>     gArmPlatformTokenSpaceGuid.PcdClusterCount
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>   
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> index 90976250445e..66d5422df36b 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
> @@ -37,6 +37,7 @@ [Packages]
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
>   [FixedPcd]
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
> index 95fb446c105d..742734ab7348 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
> @@ -37,6 +37,7 @@ [Packages]
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
>   [FixedPcd]
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
>     gArmPlatformTokenSpaceGuid.PcdClusterCount
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
> index 3540575dd641..cc41dda1a135 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
> @@ -37,6 +37,7 @@ [Packages]
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
>   [FixedPcd]
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
> index c6bd69b4a538..ecb42bf3cc33 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
> @@ -39,6 +39,7 @@ [Packages]
>     Platform/ARM/SgiPkg/SgiPlatform.dec
>   
>   [FixedPcd]
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
> index cb3f3fcdb9b6..379b5c9e6122 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
> @@ -39,6 +39,7 @@ [Packages]
>   [FixedPcd]
>     gArmPlatformTokenSpaceGuid.PcdCoreCount
>     gArmPlatformTokenSpaceGuid.PcdClusterCount
> +  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>     gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>     gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>   
> diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
> index fd20c67e1225..ab8578072836 100644
> --- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
> +++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
> @@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
>         })
>       }
>   
> +    Device (COM1) {
> +      Name (_HID, "ARMH0011")
> +      Name (_CID, "ARMH0011")
[SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the ACPI 
for Arm Components 1.1 specification)?
> +      Name (_UID, One)
> +      Name (_STA, 0xF)
> +      Name (_CRS, ResourceTemplate () {
> +        Memory32Fixed (
> +          ReadWrite,
> +          FixedPcdGet64 (PcdSerialDbgRegisterBase),
> +          0x1000
> +          )
> +        Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PcdSerialDbgInterrupt) }
> +      })
> +    }
> +
>       // VIRTIO DISK
>       Device (VR00) {
>         Name (_HID, "LNRO0005")

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-21 12:41   ` Sami Mujawar
@ 2022-07-22 12:46     ` Rohit Mathew
  2022-07-25 10:41       ` Sami Mujawar
  0 siblings, 1 reply; 16+ messages in thread
From: Rohit Mathew @ 2022-07-22 12:46 UTC (permalink / raw)
  To: Sami Mujawar, devel

[-- Attachment #1: Type: text/plain, Size: 7407 bytes --]

Hi Sami,

Thank you for the review.
Regarding the use of Dynamic Tables Framework, there are no short term plans to migrate to it. Please find my response for your comment inline -

On Thu, Jul 21, 2022 at 01:42 PM, Sami Mujawar wrote:

> 
> Hi Rohit,
> 
> Have you considered moving to use Dynamic Tables Framework? There is
> just too much repetition in this series which can be easily avoided. It
> will also make the code more maintainable.
> 
> Apart from this I have a comment marked inline as [SAMI].
> 
> Regards,
> 
> Sami Mujawar
> 
> On 04/07/2022 05:59 pm, Rohit Mathew wrote:
> 
>> Add a new device entry in the SSDT ACPI table to describe the serial
>> port used as the debug port. On the Neoverse reference design platforms,
>> the UART0 port of the SoC is used as the debug port.
>> 
>> Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
>> ---
>> Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 1 +
>> Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 15 +++++++++++++++
>> 9 files changed, 23 insertions(+)
>> 
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>> index d2935f1e73e1..d46ae0274d90 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>> @@ -39,6 +39,7 @@ [Packages]
>> [FixedPcd]
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> 
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>> index 73f47ece7718..4bf681d3bc2e 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>> @@ -39,6 +39,7 @@ [Packages]
>> [FixedPcd]
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> 
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>> index da14120bde69..89f532217ceb 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>> @@ -41,6 +41,7 @@ [Packages]
>> [FixedPcd]
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> 
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>> index 90976250445e..66d5422df36b 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>> @@ -37,6 +37,7 @@ [Packages]
>> Platform/ARM/SgiPkg/SgiPlatform.dec
>> 
>> [FixedPcd]
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>> index 95fb446c105d..742734ab7348 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>> @@ -37,6 +37,7 @@ [Packages]
>> Platform/ARM/SgiPkg/SgiPlatform.dec
>> 
>> [FixedPcd]
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>> index 3540575dd641..cc41dda1a135 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>> @@ -37,6 +37,7 @@ [Packages]
>> Platform/ARM/SgiPkg/SgiPlatform.dec
>> 
>> [FixedPcd]
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>> index c6bd69b4a538..ecb42bf3cc33 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>> @@ -39,6 +39,7 @@ [Packages]
>> Platform/ARM/SgiPkg/SgiPlatform.dec
>> 
>> [FixedPcd]
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>> b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>> index cb3f3fcdb9b6..379b5c9e6122 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>> @@ -39,6 +39,7 @@ [Packages]
>> [FixedPcd]
>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>> 
>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>> b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>> index fd20c67e1225..ab8578072836 100644
>> --- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>> +++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>> @@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2,
>> "ARMLTD", "ARMSGI",
>> })
>> }
>> 
>> + Device (COM1) {
>> + Name (_HID, "ARMH0011")
>> + Name (_CID, "ARMH0011")
> 
> [SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the ACPI
> for Arm Components 1.1 specification)?

[Rohit]: COM1 is based on PL011. Since PL011 would satisfy SBSA compliance, we have used PL011's HID.

> 
> 
>> + Name (_UID, One)
>> + Name (_STA, 0xF)
>> + Name (_CRS, ResourceTemplate () {
>> + Memory32Fixed (
>> + ReadWrite,
>> + FixedPcdGet64 (PcdSerialDbgRegisterBase),
>> + 0x1000
>> + )
>> + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) {
>> FixedPcdGet32 (PcdSerialDbgInterrupt) }
>> + })
>> + }
>> +
>> // VIRTIO DISK
>> Device (VR00) {
>> Name (_HID, "LNRO0005")
> 
> 

Regards,
Rohit

[-- Attachment #2: Type: text/html, Size: 7645 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-22 12:46     ` [edk2-devel] " Rohit Mathew
@ 2022-07-25 10:41       ` Sami Mujawar
  2022-07-25 11:36         ` Thanu Rangarajan
  0 siblings, 1 reply; 16+ messages in thread
From: Sami Mujawar @ 2022-07-25 10:41 UTC (permalink / raw)
  To: Rohit Mathew, devel; +Cc: Thanu.Rangarajan, nd

[-- Attachment #1: Type: text/plain, Size: 9408 bytes --]

Hi Rohit,

Please find my response inline marked [SAMI].

Regards,

Sami Mujawar

On 22/07/2022 01:46 pm, Rohit Mathew wrote:
> Hi Sami,
>
> Thank you for the review.
> Regarding the use of Dynamic Tables Framework, there are no short term 
> plans to migrate to it. Please find my response for your comment inline -
>
> On Thu, Jul 21, 2022 at 01:42 PM, Sami Mujawar wrote:
>
>     Hi Rohit,
>
>     Have you considered moving to use Dynamic Tables Framework? There is
>     just too much repetition in this series which can be easily
>     avoided. It
>     will also make the code more maintainable.
>
>     Apart from this I have a comment marked inline as [SAMI].
>
>     Regards,
>
>     Sami Mujawar
>
>     On 04/07/2022 05:59 pm, Rohit Mathew wrote:
>
>         Add a new device entry in the SSDT ACPI table to describe the
>         serial
>         port used as the debug port. On the Neoverse reference design
>         platforms,
>         the UART0 port of the SoC is used as the debug port.
>
>         Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
>         ---
>         Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 1 +
>         Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 15 +++++++++++++++
>         9 files changed, 23 insertions(+)
>
>         diff --git
>         a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>         index d2935f1e73e1..d46ae0274d90 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>         @@ -39,6 +39,7 @@ [Packages]
>         [FixedPcd]
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         gArmPlatformTokenSpaceGuid.PcdClusterCount
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>
>         diff --git
>         a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>         index 73f47ece7718..4bf681d3bc2e 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>         @@ -39,6 +39,7 @@ [Packages]
>         [FixedPcd]
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         gArmPlatformTokenSpaceGuid.PcdClusterCount
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>
>         diff --git
>         a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>         index da14120bde69..89f532217ceb 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>         @@ -41,6 +41,7 @@ [Packages]
>         [FixedPcd]
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         gArmPlatformTokenSpaceGuid.PcdClusterCount
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>
>         diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>         index 90976250445e..66d5422df36b 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>         @@ -37,6 +37,7 @@ [Packages]
>         Platform/ARM/SgiPkg/SgiPlatform.dec
>
>         [FixedPcd]
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         diff --git
>         a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>         index 95fb446c105d..742734ab7348 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>         @@ -37,6 +37,7 @@ [Packages]
>         Platform/ARM/SgiPkg/SgiPlatform.dec
>
>         [FixedPcd]
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         gArmPlatformTokenSpaceGuid.PcdClusterCount
>         diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>         index 3540575dd641..cc41dda1a135 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>         @@ -37,6 +37,7 @@ [Packages]
>         Platform/ARM/SgiPkg/SgiPlatform.dec
>
>         [FixedPcd]
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         diff --git
>         a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>         index c6bd69b4a538..ecb42bf3cc33 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>         @@ -39,6 +39,7 @@ [Packages]
>         Platform/ARM/SgiPkg/SgiPlatform.dec
>
>         [FixedPcd]
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         diff --git
>         a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>         b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>         index cb3f3fcdb9b6..379b5c9e6122 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>         @@ -39,6 +39,7 @@ [Packages]
>         [FixedPcd]
>         gArmPlatformTokenSpaceGuid.PcdCoreCount
>         gArmPlatformTokenSpaceGuid.PcdClusterCount
>         + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>         gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>         gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>
>         diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>         b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>         index fd20c67e1225..ab8578072836 100644
>         --- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>         +++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>         @@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml",
>         "SSDT", 2, "ARMLTD", "ARMSGI",
>         })
>         }
>
>         + Device (COM1) {
>         + Name (_HID, "ARMH0011")
>         + Name (_CID, "ARMH0011")
>
>     [SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the
>     ACPI
>     for Arm Components 1.1 specification)?
>
> [Rohit]: COM1 is based on PL011. Since PL011 would satisfy SBSA 
> compliance, we have used PL011's HID.

[SAMI] Following is an extract from Section 2.3 of the 'ACPI for Arm 
Components 1.1' specification.

"Some operating systems use the PL011 HID (see Table 5 above)
to bind to the Arm Generic UART in the system. While this
practice is flawed and not encouraged by Arm, Arm
acknowledges that it must be permitted until formal support for
the Arm Generic UART HID is made available in these operating
systems.
Arm strongly recommends use of the Arm Generic UART HID
going forward."

1. The Arm Generic UART is a subset of PL011. This means using the 
ARMHB000 should not be an issue.

2. This file is common to all platforms in SgiPkg, which are 
infrastructure platforms.

3. Some opreating systems (like Linux) have already integrated support 
for ARMHB000.

     Ref: serial: pl011: Add ACPI SBSA UART match id 
<https://github.com/torvalds/linux/commit/ac442a077acf9a6bf1db4320ec0c3f303be092b3>

Considering the above, I think ARMHB000 should be used, here.

[/SAMI]


>         + Name (_UID, One)
>         + Name (_STA, 0xF)
>         + Name (_CRS, ResourceTemplate () {
>         + Memory32Fixed (
>         + ReadWrite,
>         + FixedPcdGet64 (PcdSerialDbgRegisterBase),
>         + 0x1000
>         + )
>         + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) {
>         FixedPcdGet32 (PcdSerialDbgInterrupt) }
>         + })
>         + }
>         +
>         // VIRTIO DISK
>         Device (VR00) {
>         Name (_HID, "LNRO0005")
>
> Regards,
> Rohit 

[-- Attachment #2: Type: text/html, Size: 12004 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-25 10:41       ` Sami Mujawar
@ 2022-07-25 11:36         ` Thanu Rangarajan
  2022-07-25 14:55           ` Rohit Mathew
  0 siblings, 1 reply; 16+ messages in thread
From: Thanu Rangarajan @ 2022-07-25 11:36 UTC (permalink / raw)
  To: Sami Mujawar, Rohit Mathew, devel@edk2.groups.io,
	Samer El-Haj-Mahmoud; +Cc: nd

[-- Attachment #1: Type: text/plain, Size: 9054 bytes --]

Hi Rohit,
The decision to use the SBSA defined HID for the Generic UART was taken after extensive discussions within the Arm ecosystem. And as Sami points out, now that formal Linux driver support for this HID is available, it would be good if it is used by other components in the stack as well.

+ Samer for any additional comments/clarifications.

Regards,
Thanu
From: Sami Mujawar <Sami.Mujawar@arm.com>
Date: Monday, 25 July 2022 at 16:12
To: Rohit Mathew <Rohit.Mathew@arm.com>, "devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: Thanu Rangarajan <Thanu.Rangarajan@arm.com>, nd <nd@arm.com>
Subject: Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT


Hi Rohit,

Please find my response inline marked [SAMI].

Regards,

Sami Mujawar
On 22/07/2022 01:46 pm, Rohit Mathew wrote:
Hi Sami,

Thank you for the review.
Regarding the use of Dynamic Tables Framework, there are no short term plans to migrate to it. Please find my response for your comment inline -

On Thu, Jul 21, 2022 at 01:42 PM, Sami Mujawar wrote:
Hi Rohit,

Have you considered moving to use Dynamic Tables Framework? There is
just too much repetition in this series which can be easily avoided. It
will also make the code more maintainable.

Apart from this I have a comment marked inline as [SAMI].

Regards,

Sami Mujawar

On 04/07/2022 05:59 pm, Rohit Mathew wrote:
Add a new device entry in the SSDT ACPI table to describe the serial
port used as the debug port. On the Neoverse reference design platforms,
the UART0 port of the SoC is used as the debug port.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com><mailto:rohit.mathew@arm.com>
---
Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 15 +++++++++++++++
9 files changed, 23 insertions(+)

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
index d2935f1e73e1..d46ae0274d90 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
index 73f47ece7718..4bf681d3bc2e 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
index da14120bde69..89f532217ceb 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
@@ -41,6 +41,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
index 90976250445e..66d5422df36b 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
index 95fb446c105d..742734ab7348 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
index 3540575dd641..cc41dda1a135 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
index c6bd69b4a538..ecb42bf3cc33 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
index cb3f3fcdb9b6..379b5c9e6122 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
index fd20c67e1225..ab8578072836 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
@@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
})
}

+ Device (COM1) {
+ Name (_HID, "ARMH0011")
+ Name (_CID, "ARMH0011")
[SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the ACPI
for Arm Components 1.1 specification)?
[Rohit]: COM1 is based on PL011. Since PL011 would satisfy SBSA compliance, we have used PL011's HID.

[SAMI] Following is an extract from Section 2.3 of the 'ACPI for Arm Components 1.1' specification.

"Some operating systems use the PL011 HID (see Table 5 above)
to bind to the Arm Generic UART in the system. While this
practice is flawed and not encouraged by Arm, Arm
acknowledges that it must be permitted until formal support for
the Arm Generic UART HID is made available in these operating
systems.
Arm strongly recommends use of the Arm Generic UART HID
going forward."

1. The Arm Generic UART is a subset of PL011. This means using the ARMHB000 should not be an issue.

2. This file is common to all platforms in SgiPkg, which are infrastructure platforms.

3. Some opreating systems (like Linux) have already integrated support for ARMHB000.

    Ref: serial: pl011: Add ACPI SBSA UART match id<https://github.com/torvalds/linux/commit/ac442a077acf9a6bf1db4320ec0c3f303be092b3>

Considering the above, I think ARMHB000 should be used, here.

[/SAMI]


+ Name (_UID, One)
+ Name (_STA, 0xF)
+ Name (_CRS, ResourceTemplate () {
+ Memory32Fixed (
+ ReadWrite,
+ FixedPcdGet64 (PcdSerialDbgRegisterBase),
+ 0x1000
+ )
+ Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PcdSerialDbgInterrupt) }
+ })
+ }
+
// VIRTIO DISK
Device (VR00) {
Name (_HID, "LNRO0005")
Regards,
Rohit
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

[-- Attachment #2: Type: text/html, Size: 13154 bytes --]

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-25 11:36         ` Thanu Rangarajan
@ 2022-07-25 14:55           ` Rohit Mathew
  2022-08-02 13:50             ` Rohit Mathew
  2022-08-17  9:45             ` Sami Mujawar
  0 siblings, 2 replies; 16+ messages in thread
From: Rohit Mathew @ 2022-07-25 14:55 UTC (permalink / raw)
  To: Thanu Rangarajan, devel

[-- Attachment #1: Type: text/plain, Size: 11065 bytes --]

Hi Sami/Thanu,

Please find my response inline -

On Mon, Jul 25, 2022 at 02:54 PM, Thanu Rangarajan <Thanu.Rangarajan@arm.com> wrote:

> 
> 
> 
> Hi Rohit,
> 
> 
> 
> The decision to use the SBSA defined HID for the Generic UART was taken
> after extensive discussions within the Arm ecosystem. And as Sami points
> out, now that formal Linux driver support for this HID is available, it
> would be good if it is used by other components in the stack as well.
> 
> 
> 
> 
> 
> 
> 
> + Samer for any additional comments/clarifications.
> 
> 
> 
> 
> 
> 
> 
> Regards,
> 
> 
> 
> Thanu
> 
> 
> 
> *From:* Sami Mujawar <Sami.Mujawar@arm.com>
> *Date:* Monday, 25 July 2022 at 16:12
> *To:* Rohit Mathew <Rohit.Mathew@arm.com>, "devel@edk2.groups.io"
> <devel@edk2.groups.io>
> *Cc:* Thanu Rangarajan <Thanu.Rangarajan@arm.com>, nd <nd@arm.com>
> *Subject:* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug
> controller to SSDT
> 
> 
> 
> 
> 
> 
> 
> 
> 
> Hi Rohit,
> 
> 
> 
> Please find my response inline marked [SAMI].
> 
> 
> 
> Regards,
> 
> 
> 
> Sami Mujawar
> 
> 
> 
> On 22/07/2022 01:46 pm, Rohit Mathew wrote:
> 
> 
> 
>> 
>> 
>> Hi Sami,
>> 
>> Thank you for the review.
>> Regarding the use of Dynamic Tables Framework, there are no short term
>> plans to migrate to it. Please find my response for your comment inline -
>> 
>> On Thu, Jul 21, 2022 at 01:42 PM, Sami Mujawar wrote:
>> 
>> 
>>> 
>>> 
>>> Hi Rohit,
>>> 
>>> Have you considered moving to use Dynamic Tables Framework? There is
>>> just too much repetition in this series which can be easily avoided. It
>>> will also make the code more maintainable.
>>> 
>>> Apart from this I have a comment marked inline as [SAMI].
>>> 
>>> Regards,
>>> 
>>> Sami Mujawar
>>> 
>>> On 04/07/2022 05:59 pm, Rohit Mathew wrote:
>>> 
>>> 
>>>> 
>>>> 
>>>> Add a new device entry in the SSDT ACPI table to describe the serial
>>>> port used as the debug port. On the Neoverse reference design platforms,
>>>> the UART0 port of the SoC is used as the debug port.
>>>> 
>>>> Signed-off-by: Rohit Mathew <rohit.mathew@arm.com> ( rohit.mathew@arm.com )
>>>> 
>>>> ---
>>>> Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 1 +
>>>> Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 15 +++++++++++++++
>>>> 9 files changed, 23 insertions(+)
>>>> 
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>>>> index d2935f1e73e1..d46ae0274d90 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
>>>> @@ -39,6 +39,7 @@ [Packages]
>>>> [FixedPcd]
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> 
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>>>> index 73f47ece7718..4bf681d3bc2e 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
>>>> @@ -39,6 +39,7 @@ [Packages]
>>>> [FixedPcd]
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> 
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>>>> index da14120bde69..89f532217ceb 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
>>>> @@ -41,6 +41,7 @@ [Packages]
>>>> [FixedPcd]
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> 
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>>>> index 90976250445e..66d5422df36b 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
>>>> @@ -37,6 +37,7 @@ [Packages]
>>>> Platform/ARM/SgiPkg/SgiPlatform.dec
>>>> 
>>>> [FixedPcd]
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>>>> index 95fb446c105d..742734ab7348 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
>>>> @@ -37,6 +37,7 @@ [Packages]
>>>> Platform/ARM/SgiPkg/SgiPlatform.dec
>>>> 
>>>> [FixedPcd]
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>>>> index 3540575dd641..cc41dda1a135 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
>>>> @@ -37,6 +37,7 @@ [Packages]
>>>> Platform/ARM/SgiPkg/SgiPlatform.dec
>>>> 
>>>> [FixedPcd]
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>>>> index c6bd69b4a538..ecb42bf3cc33 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
>>>> @@ -39,6 +39,7 @@ [Packages]
>>>> Platform/ARM/SgiPkg/SgiPlatform.dec
>>>> 
>>>> [FixedPcd]
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>>>> b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>>>> index cb3f3fcdb9b6..379b5c9e6122 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
>>>> @@ -39,6 +39,7 @@ [Packages]
>>>> [FixedPcd]
>>>> gArmPlatformTokenSpaceGuid.PcdCoreCount
>>>> gArmPlatformTokenSpaceGuid.PcdClusterCount
>>>> + gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
>>>> gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
>>>> gArmPlatformTokenSpaceGuid.PL011UartInterrupt
>>>> 
>>>> diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>>>> b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>>>> index fd20c67e1225..ab8578072836 100644
>>>> --- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>>>> +++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
>>>> @@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2,
>>>> "ARMLTD", "ARMSGI",
>>>> })
>>>> }
>>>> 
>>>> + Device (COM1) {
>>>> + Name (_HID, "ARMH0011")
>>>> + Name (_CID, "ARMH0011")
>>>> 
>>>> 
>>> 
>>> 
>>> 
>>> [SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the ACPI
>>> for Arm Components 1.1 specification)?
>>> 
>>> 
>> 
>> 
>> 
>> [Rohit]: COM1 is based on PL011. Since PL011 would satisfy SBSA
>> compliance, we have used PL011's HID.
>> 
>> 
> 
> 
> 
> [SAMI] Following is an extract from Section 2.3 of the 'ACPI for Arm
> Components 1.1' specification.
> 
> 
> 
> "Some operating systems use the PL011 HID (see Table 5 above)
> to bind to the Arm Generic UART in the system. While this
> practice is flawed and not encouraged by Arm, Arm
> acknowledges that it must be permitted until formal support for
> the Arm Generic UART HID is made available in these operating
> systems.
> Arm strongly recommends use of the Arm Generic UART HID
> going forward."
> 
> 
> 
> 1. The Arm Generic UART is a subset of PL011. This means using the
> ARMHB000 should not be an issue.
> 
> 
> 
> 2. This file is common to all platforms in SgiPkg, which are
> infrastructure platforms.
> 
> 
> 
> 3. Some opreating systems (like Linux) have already integrated support for
> ARMHB000.
> 
> 
> 
> Ref: serial: pl011: Add ACPI SBSA UART match id (
> https://github.com/torvalds/linux/commit/ac442a077acf9a6bf1db4320ec0c3f303be092b3
> )
> 
> 
> 
> Considering the above, I think ARMHB000 should be used, here.
> 
> 
> 
> [/SAMI]
> 
> 
> 

[Rohit] Apologies for not adding more context earlier. RD FVPs instantiates PL011 UART and not the Generic SBSA UART. Although 'Generic UART' would work as it is a subset of PL011, PL011 HID accurately describes the UART controllers for infra platforms. I'm not sure if this is any better explanation; Please let me know if you think otherwise.
[/Rohit]

> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
>> 
>>> 
>>>> 
>>>> 
>>>> + Name (_UID, One)
>>>> + Name (_STA, 0xF)
>>>> + Name (_CRS, ResourceTemplate () {
>>>> + Memory32Fixed (
>>>> + ReadWrite,
>>>> + FixedPcdGet64 (PcdSerialDbgRegisterBase),
>>>> + 0x1000
>>>> + )
>>>> + Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) {
>>>> FixedPcdGet32 (PcdSerialDbgInterrupt) }
>>>> + })
>>>> + }
>>>> +
>>>> // VIRTIO DISK
>>>> Device (VR00) {
>>>> Name (_HID, "LNRO0005")
>>>> 
>>>> 
>>> 
>>> 
>> 
>> 
>> 
>> Regards,
>> Rohit
>> 
>> 
> 
> 
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy the
> information in any medium. Thank you.

[-- Attachment #2: Type: text/html, Size: 12666 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-25 14:55           ` Rohit Mathew
@ 2022-08-02 13:50             ` Rohit Mathew
  2022-08-17  9:19               ` Rohit Mathew
  2022-08-17  9:45             ` Sami Mujawar
  1 sibling, 1 reply; 16+ messages in thread
From: Rohit Mathew @ 2022-08-02 13:50 UTC (permalink / raw)
  To: devel@edk2.groups.io, Sami Mujawar; +Cc: Thanu Rangarajan, Thomas Abraham, nd

[-- Attachment #1: Type: text/plain, Size: 10146 bytes --]

Hi Sami,

Gentle reminder for this patch series.

Regards,
Rohit.

From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Rohit Mathew via groups.io
Sent: 25 July 2022 15:56
To: Thanu Rangarajan <Thanu.Rangarajan@arm.com>; devel@edk2.groups.io
Subject: Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT


Hi Sami/Thanu,

Please find my response inline -

On Mon, Jul 25, 2022 at 02:54 PM, Thanu Rangarajan <Thanu.Rangarajan@arm.com<mailto:Thanu.Rangarajan@arm.com>> wrote:

Hi Rohit,

The decision to use the SBSA defined HID for the Generic UART was taken after extensive discussions within the Arm ecosystem. And as Sami points out, now that formal Linux driver support for this HID is available, it would be good if it is used by other components in the stack as well.



+ Samer for any additional comments/clarifications.



Regards,

Thanu

From: Sami Mujawar <Sami.Mujawar@arm.com<mailto:Sami.Mujawar@arm.com>>
Date: Monday, 25 July 2022 at 16:12
To: Rohit Mathew <Rohit.Mathew@arm.com<mailto:Rohit.Mathew@arm.com>>, "devel@edk2.groups.io<mailto:devel@edk2.groups.io>" <devel@edk2.groups.io<mailto:devel@edk2.groups.io>>
Cc: Thanu Rangarajan <Thanu.Rangarajan@arm.com<mailto:Thanu.Rangarajan@arm.com>>, nd <nd@arm.com<mailto:nd@arm.com>>
Subject: Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT



Hi Rohit,

Please find my response inline marked [SAMI].

Regards,

Sami Mujawar

On 22/07/2022 01:46 pm, Rohit Mathew wrote:

Hi Sami,

Thank you for the review.
Regarding the use of Dynamic Tables Framework, there are no short term plans to migrate to it. Please find my response for your comment inline -

On Thu, Jul 21, 2022 at 01:42 PM, Sami Mujawar wrote:

Hi Rohit,

Have you considered moving to use Dynamic Tables Framework? There is
just too much repetition in this series which can be easily avoided. It
will also make the code more maintainable.

Apart from this I have a comment marked inline as [SAMI].

Regards,

Sami Mujawar

On 04/07/2022 05:59 pm, Rohit Mathew wrote:

Add a new device entry in the SSDT ACPI table to describe the serial
port used as the debug port. On the Neoverse reference design platforms,
the UART0 port of the SoC is used as the debug port.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com><mailto:rohit.mathew@arm.com>
---
Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 15 +++++++++++++++
9 files changed, 23 insertions(+)

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
index d2935f1e73e1..d46ae0274d90 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
index 73f47ece7718..4bf681d3bc2e 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
index da14120bde69..89f532217ceb 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
@@ -41,6 +41,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
index 90976250445e..66d5422df36b 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
index 95fb446c105d..742734ab7348 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
index 3540575dd641..cc41dda1a135 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
index c6bd69b4a538..ecb42bf3cc33 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
index cb3f3fcdb9b6..379b5c9e6122 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
index fd20c67e1225..ab8578072836 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
@@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
})
}

+ Device (COM1) {
+ Name (_HID, "ARMH0011")
+ Name (_CID, "ARMH0011")

[SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the ACPI
for Arm Components 1.1 specification)?

[Rohit]: COM1 is based on PL011. Since PL011 would satisfy SBSA compliance, we have used PL011's HID.

[SAMI] Following is an extract from Section 2.3 of the 'ACPI for Arm Components 1.1' specification.

"Some operating systems use the PL011 HID (see Table 5 above)
to bind to the Arm Generic UART in the system. While this
practice is flawed and not encouraged by Arm, Arm
acknowledges that it must be permitted until formal support for
the Arm Generic UART HID is made available in these operating
systems.
Arm strongly recommends use of the Arm Generic UART HID
going forward."

1. The Arm Generic UART is a subset of PL011. This means using the ARMHB000 should not be an issue.

2. This file is common to all platforms in SgiPkg, which are infrastructure platforms.

3. Some opreating systems (like Linux) have already integrated support for ARMHB000.

    Ref: serial: pl011: Add ACPI SBSA UART match id<https://github.com/torvalds/linux/commit/ac442a077acf9a6bf1db4320ec0c3f303be092b3>

Considering the above, I think ARMHB000 should be used, here.

[/SAMI]
[Rohit] Apologies for not adding more context earlier. RD FVPs instantiates PL011 UART and not the Generic SBSA UART. Although 'Generic UART' would work as it is a subset of PL011, PL011 HID accurately describes the UART controllers for infra platforms. I'm not sure if this is any better explanation; Please let me know if you think otherwise.
[/Rohit]





+ Name (_UID, One)
+ Name (_STA, 0xF)
+ Name (_CRS, ResourceTemplate () {
+ Memory32Fixed (
+ ReadWrite,
+ FixedPcdGet64 (PcdSerialDbgRegisterBase),
+ 0x1000
+ )
+ Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PcdSerialDbgInterrupt) }
+ })
+ }
+
// VIRTIO DISK
Device (VR00) {
Name (_HID, "LNRO0005")

Regards,
Rohit
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


[-- Attachment #2: Type: text/html, Size: 16447 bytes --]

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-08-02 13:50             ` Rohit Mathew
@ 2022-08-17  9:19               ` Rohit Mathew
  0 siblings, 0 replies; 16+ messages in thread
From: Rohit Mathew @ 2022-08-17  9:19 UTC (permalink / raw)
  To: devel@edk2.groups.io; +Cc: Thanu Rangarajan, Thomas Abraham, nd, Sami Mujawar

[-- Attachment #1: Type: text/plain, Size: 10636 bytes --]

Gentle reminder for this patch series.

Regards,
Rohit

From: Rohit Mathew
Sent: 02 August 2022 14:51
To: devel@edk2.groups.io; Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Thanu Rangarajan <Thanu.Rangarajan@arm.com>; Thomas Abraham <thomas.abraham@arm.com>; nd <nd@arm.com>
Subject: RE: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT

Hi Sami,

Gentle reminder for this patch series.

Regards,
Rohit.

From: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>> On Behalf Of Rohit Mathew via groups.io
Sent: 25 July 2022 15:56
To: Thanu Rangarajan <Thanu.Rangarajan@arm.com<mailto:Thanu.Rangarajan@arm.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io>
Subject: Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT


Hi Sami/Thanu,

Please find my response inline -

On Mon, Jul 25, 2022 at 02:54 PM, Thanu Rangarajan <Thanu.Rangarajan@arm.com<mailto:Thanu.Rangarajan@arm.com>> wrote:

Hi Rohit,

The decision to use the SBSA defined HID for the Generic UART was taken after extensive discussions within the Arm ecosystem. And as Sami points out, now that formal Linux driver support for this HID is available, it would be good if it is used by other components in the stack as well.



+ Samer for any additional comments/clarifications.



Regards,

Thanu

From: Sami Mujawar <Sami.Mujawar@arm.com<mailto:Sami.Mujawar@arm.com>>
Date: Monday, 25 July 2022 at 16:12
To: Rohit Mathew <Rohit.Mathew@arm.com<mailto:Rohit.Mathew@arm.com>>, "devel@edk2.groups.io<mailto:devel@edk2.groups.io>" <devel@edk2.groups.io<mailto:devel@edk2.groups.io>>
Cc: Thanu Rangarajan <Thanu.Rangarajan@arm.com<mailto:Thanu.Rangarajan@arm.com>>, nd <nd@arm.com<mailto:nd@arm.com>>
Subject: Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT



Hi Rohit,

Please find my response inline marked [SAMI].

Regards,

Sami Mujawar

On 22/07/2022 01:46 pm, Rohit Mathew wrote:

Hi Sami,

Thank you for the review.
Regarding the use of Dynamic Tables Framework, there are no short term plans to migrate to it. Please find my response for your comment inline -

On Thu, Jul 21, 2022 at 01:42 PM, Sami Mujawar wrote:

Hi Rohit,

Have you considered moving to use Dynamic Tables Framework? There is
just too much repetition in this series which can be easily avoided. It
will also make the code more maintainable.

Apart from this I have a comment marked inline as [SAMI].

Regards,

Sami Mujawar

On 04/07/2022 05:59 pm, Rohit Mathew wrote:

Add a new device entry in the SSDT ACPI table to describe the serial
port used as the debug port. On the Neoverse reference design platforms,
the UART0 port of the SoC is used as the debug port.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com><mailto:rohit.mathew@arm.com>
---
Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf | 1 +
Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl | 15 +++++++++++++++
9 files changed, 23 insertions(+)

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
index d2935f1e73e1..d46ae0274d90 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
index 73f47ece7718..4bf681d3bc2e 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
index da14120bde69..89f532217ceb 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf
@@ -41,6 +41,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
index 90976250445e..66d5422df36b 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
index 95fb446c105d..742734ab7348 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
index 3540575dd641..cc41dda1a135 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf
@@ -37,6 +37,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
index c6bd69b4a538..ecb42bf3cc33 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
Platform/ARM/SgiPkg/SgiPlatform.dec

[FixedPcd]
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt
gArmPlatformTokenSpaceGuid.PcdCoreCount
diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
index cb3f3fcdb9b6..379b5c9e6122 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
+++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf
@@ -39,6 +39,7 @@ [Packages]
[FixedPcd]
gArmPlatformTokenSpaceGuid.PcdCoreCount
gArmPlatformTokenSpaceGuid.PcdClusterCount
+ gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase
gArmPlatformTokenSpaceGuid.PL011UartInterrupt

diff --git a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
index fd20c67e1225..ab8578072836 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl
@@ -29,6 +29,21 @@ DefinitionBlock ("SsdtRosTable.aml", "SSDT", 2, "ARMLTD", "ARMSGI",
})
}

+ Device (COM1) {
+ Name (_HID, "ARMH0011")
+ Name (_CID, "ARMH0011")

[SAMI] Any reason for not using  ARMHB000 (see Section 2.3 of the ACPI
for Arm Components 1.1 specification)?

[Rohit]: COM1 is based on PL011. Since PL011 would satisfy SBSA compliance, we have used PL011's HID.

[SAMI] Following is an extract from Section 2.3 of the 'ACPI for Arm Components 1.1' specification.

"Some operating systems use the PL011 HID (see Table 5 above)
to bind to the Arm Generic UART in the system. While this
practice is flawed and not encouraged by Arm, Arm
acknowledges that it must be permitted until formal support for
the Arm Generic UART HID is made available in these operating
systems.
Arm strongly recommends use of the Arm Generic UART HID
going forward."

1. The Arm Generic UART is a subset of PL011. This means using the ARMHB000 should not be an issue.

2. This file is common to all platforms in SgiPkg, which are infrastructure platforms.

3. Some opreating systems (like Linux) have already integrated support for ARMHB000.

    Ref: serial: pl011: Add ACPI SBSA UART match id<https://github.com/torvalds/linux/commit/ac442a077acf9a6bf1db4320ec0c3f303be092b3>

Considering the above, I think ARMHB000 should be used, here.

[/SAMI]
[Rohit] Apologies for not adding more context earlier. RD FVPs instantiates PL011 UART and not the Generic SBSA UART. Although 'Generic UART' would work as it is a subset of PL011, PL011 HID accurately describes the UART controllers for infra platforms. I'm not sure if this is any better explanation; Please let me know if you think otherwise.
[/Rohit]





+ Name (_UID, One)
+ Name (_STA, 0xF)
+ Name (_CRS, ResourceTemplate () {
+ Memory32Fixed (
+ ReadWrite,
+ FixedPcdGet64 (PcdSerialDbgRegisterBase),
+ 0x1000
+ )
+ Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) { FixedPcdGet32 (PcdSerialDbgInterrupt) }
+ })
+ }
+
// VIRTIO DISK
Device (VR00) {
Name (_HID, "LNRO0005")

Regards,
Rohit
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


[-- Attachment #2: Type: text/html, Size: 17516 bytes --]

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-07-25 14:55           ` Rohit Mathew
  2022-08-02 13:50             ` Rohit Mathew
@ 2022-08-17  9:45             ` Sami Mujawar
  2022-08-17 10:31               ` Rohit Mathew
  1 sibling, 1 reply; 16+ messages in thread
From: Sami Mujawar @ 2022-08-17  9:45 UTC (permalink / raw)
  To: Rohit Mathew, devel

[-- Attachment #1: Type: text/plain, Size: 168 bytes --]

Hi Rohit,

Apologies for the delay. I will pick this up once the merge window opens.

Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>

Regards,

Sami Mujawar

[-- Attachment #2: Type: text/html, Size: 206 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT
  2022-08-17  9:45             ` Sami Mujawar
@ 2022-08-17 10:31               ` Rohit Mathew
  0 siblings, 0 replies; 16+ messages in thread
From: Rohit Mathew @ 2022-08-17 10:31 UTC (permalink / raw)
  To: Sami Mujawar, devel@edk2.groups.io; +Cc: nd, Thomas Abraham

[-- Attachment #1: Type: text/plain, Size: 457 bytes --]

Thanks Sami.

Regards,
Rohit

From: Sami Mujawar <sami.mujawar@arm.com>
Sent: 17 August 2022 10:46
To: Rohit Mathew <Rohit.Mathew@arm.com>; devel@edk2.groups.io
Subject: Re: [edk2-devel] [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT

Hi Rohit,

Apologies for the delay. I will pick this up once the merge window opens.

Reviewed-by: Sami Mujawar <sami.mujawar@arm.com<mailto:sami.mujawar@arm.com>>

Regards,

Sami Mujawar

[-- Attachment #2: Type: text/html, Size: 2574 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage
  2022-07-04 16:59 [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Rohit Mathew
                   ` (3 preceding siblings ...)
  2022-07-18 18:00 ` [edk2-devel] " Rohit Mathew
@ 2022-09-15 17:13 ` Sami Mujawar
  4 siblings, 0 replies; 16+ messages in thread
From: Sami Mujawar @ 2022-09-15 17:13 UTC (permalink / raw)
  To: Rohit Mathew, devel; +Cc: Ard Biesheuvel, Thomas Abraham, nd@arm.com

Apologies for the delay.

Merged as f4679715a40d..8d8bb28d2c4b

Regards,

Sami Mujawar

On 04/07/2022 05:59 pm, Rohit Mathew wrote:
> Patch 433b5b1b0f7f ("Platform/Sgi: Route logs to different sets of
> consoles") setup the routing of console messages to a different set
> of UART ports. Following up with this change, this patch series updates
> the ACPI tables to route the console messages to the console UART and
> adds a device entry for the debug UART.
>
> Link to github branch for the patches in this series -
> https://github.com/rohit-arm/edk2-platforms/tree/serial_port_acpi
>
> Rohit Mathew (2):
>    Platform/Sgi: Update ACPI tables to use console UART
>    Platform/Sgi: Add serial debug controller to SSDT
>
>   .../SgiPkg/AcpiTables/RdE1EdgeAcpiTables.inf    |  3 +++
>   .../SgiPkg/AcpiTables/RdN1EdgeAcpiTables.inf    |  3 +++
>   .../SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf  |  3 +++
>   .../ARM/SgiPkg/AcpiTables/RdN2AcpiTables.inf    |  3 +++
>   .../SgiPkg/AcpiTables/RdN2Cfg1AcpiTables.inf    |  3 +++
>   .../ARM/SgiPkg/AcpiTables/RdV1AcpiTables.inf    |  3 +++
>   .../ARM/SgiPkg/AcpiTables/RdV1McAcpiTables.inf  |  3 +++
>   .../ARM/SgiPkg/AcpiTables/Sgi575AcpiTables.inf  |  3 +++
>   Platform/ARM/SgiPkg/AcpiTables/Spcr.aslc        |  2 +-
>   Platform/ARM/SgiPkg/AcpiTables/SsdtRos.asl      | 17 ++++++++++++++++-
>   10 files changed, 41 insertions(+), 2 deletions(-)
>

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-09-15 17:14 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-04 16:59 [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Rohit Mathew
2022-07-04 16:59 ` [PATCH 1/2] Platform/Sgi: Update ACPI tables to use console UART Rohit Mathew
2022-07-21 12:40   ` Sami Mujawar
2022-07-04 16:59 ` [PATCH 2/2] Platform/Sgi: Add serial debug controller to SSDT Rohit Mathew
2022-07-21 12:41   ` Sami Mujawar
2022-07-22 12:46     ` [edk2-devel] " Rohit Mathew
2022-07-25 10:41       ` Sami Mujawar
2022-07-25 11:36         ` Thanu Rangarajan
2022-07-25 14:55           ` Rohit Mathew
2022-08-02 13:50             ` Rohit Mathew
2022-08-17  9:19               ` Rohit Mathew
2022-08-17  9:45             ` Sami Mujawar
2022-08-17 10:31               ` Rohit Mathew
2022-07-04 21:38 ` [edk2-platforms][PATCH 0/2] Platform/Sgi: Update serial port usage Thomas Abraham
2022-07-18 18:00 ` [edk2-devel] " Rohit Mathew
2022-09-15 17:13 ` Sami Mujawar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox