public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-platforms][PATCH V3 0/2] Uart segregation patch series
@ 2022-06-22 11:56 Rohit Mathew
  2022-06-22 11:56 ` [edk2-platforms][PATCH V3 1/2] Platform/Sgi: Remove redundant platform description from DSDT Rohit Mathew
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Rohit Mathew @ 2022-06-22 11:56 UTC (permalink / raw)
  To: devel; +Cc: Ard Biesheuvel, Sami Mujawar

Changes since V1:
- Rebased on top of latest master branch.
- Updated copyright and date.

Changes since V2:
- Addressed comments from Thomas.

This patch series aims at routing uart logs via different sets of uart ports,
namely secure port for secure partition logs and non-secure port for all other
logs.

The first patch deals with removing redundant DSDT descriptions. For sgi575,
a hardcoded uart base address was being used within the DSDT which hindered
migration to the required uart ports. The addition of this patch solves this
issue.

The second patch deals with the migration and grouping of uart related PCDs for
all Neoverese reference design platforms

Dependency:
https://edk2.groups.io/g/devel/message/90674

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

Rohit Mathew (2):
  Platform/Sgi: Remove redundant platform description from DSDT
  Platform/Sgi: Route logs to different sets of consoles

 Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc       |  8 +--
 Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc      |  6 +-
 Platform/ARM/SgiPkg/SgiPlatform.dsc.inc        |  3 +-
 Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc      |  3 +-
 Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc   |  4 +-
 Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc  |  4 +-
 Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl | 66 +-------------------
 7 files changed, 14 insertions(+), 80 deletions(-)

-- 
2.25.1


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

* [edk2-platforms][PATCH V3 1/2] Platform/Sgi: Remove redundant platform description from DSDT
  2022-06-22 11:56 [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Rohit Mathew
@ 2022-06-22 11:56 ` Rohit Mathew
  2022-06-22 11:56 ` [edk2-platforms][PATCH V3 2/2] Platform/Sgi: Route logs to different sets of consoles Rohit Mathew
  2022-06-22 12:10 ` [edk2-devel] [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Thomas Abraham
  2 siblings, 0 replies; 5+ messages in thread
From: Rohit Mathew @ 2022-06-22 11:56 UTC (permalink / raw)
  To: devel; +Cc: Ard Biesheuvel, Sami Mujawar

Remove redundant platform descriptions (descriptions which are already
part of SSDT) from DSDT for SGI-575 platform.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
---
 Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl | 66 +-------------------
 1 file changed, 1 insertion(+), 65 deletions(-)

diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl
index a292d20d8afb..80075ee1238b 100644
--- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl
+++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl
@@ -1,7 +1,7 @@
 /** @file
 *  Differentiated System Description Table Fields (DSDT)
 *
-*  Copyright (c) 2018 - 2021, ARM Ltd. All rights reserved.
+*  Copyright (c) 2018 - 2022, Arm Limited. All rights reserved.
 *
 *  SPDX-License-Identifier: BSD-2-Clause-Patent
 *
@@ -210,69 +210,5 @@ DefinitionBlock("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM
       }
     }
 
-    // UART PL011
-    Device(COM0) {
-      Name(_HID, "ARMH0011")
-      Name(_CID, "ARMH0011")
-      Name(_UID, Zero)
-      Name(_STA, 0xF)
-      Name(_CRS, ResourceTemplate() {
-        Memory32Fixed(ReadWrite, 0x7FF80000, 0x1000)
-        Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive) { 147 }
-      })
-    }
-
-    // SMSC 91C111
-    Device(ETH0) {
-      Name(_HID, "LNRO0003")
-      Name(_UID, Zero)
-      Name(_STA, 0xF)
-      Name(_CRS, ResourceTemplate() {
-            Memory32Fixed(ReadWrite, 0x18000000, 0x1000)
-            Interrupt(ResourceConsumer, Level, ActiveHigh, Exclusive) { 111 }
-      })
-      Name(_DSD, Package() {
-                 ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
-                     Package() {
-                     Package(2) {"reg-io-width", 4 },
-                    }
-      })
-    }
   } // Scope(_SB)
-
-  // VIRTIO DISK
-  Device (VR00) {
-    Name (_HID, "LNRO0005")
-    Name (_UID, 0)
-    Name (_CCA, 1)    // mark the device coherent
-
-    Name (_CRS, ResourceTemplate() {
-      Memory32Fixed (
-        ReadWrite,
-        FixedPcdGet32 (PcdVirtioBlkBaseAddress),
-        FixedPcdGet32 (PcdVirtioBlkSize)
-      )
-      Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) {
-        FixedPcdGet32 (PcdVirtioBlkInterrupt)
-      }
-    })
-  }
-
-  // VIRTIO NET
-  Device (VR01) {
-    Name (_HID, "LNRO0005")
-    Name (_UID, 1)
-    Name (_CCA, 1)    // mark the device coherent
-
-    Name (_CRS, ResourceTemplate() {
-      Memory32Fixed (
-        ReadWrite,
-        FixedPcdGet32 (PcdVirtioNetBaseAddress),
-        FixedPcdGet32 (PcdVirtioNetSize)
-      )
-      Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive) {
-        FixedPcdGet32 (PcdVirtioNetInterrupt)
-      }
-    })
-  }
 }
-- 
2.25.1


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

* [edk2-platforms][PATCH V3 2/2] Platform/Sgi: Route logs to different sets of consoles
  2022-06-22 11:56 [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Rohit Mathew
  2022-06-22 11:56 ` [edk2-platforms][PATCH V3 1/2] Platform/Sgi: Remove redundant platform description from DSDT Rohit Mathew
@ 2022-06-22 11:56 ` Rohit Mathew
  2022-06-22 12:10 ` [edk2-devel] [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Thomas Abraham
  2 siblings, 0 replies; 5+ messages in thread
From: Rohit Mathew @ 2022-06-22 11:56 UTC (permalink / raw)
  To: devel; +Cc: Ard Biesheuvel, Sami Mujawar

Route secure (from secure partition) and non-secure console messages
to different sets of UART console ports. This aligns with the security
state the PE is in when logs are put out. In addition, this allows
consolidation of UART related macros across all the variants of
Neoverse reference design platforms.

Signed-off-by: Rohit Mathew <rohit.mathew@arm.com>
---
 Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc      | 8 ++++----
 Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc     | 6 +++---
 Platform/ARM/SgiPkg/SgiPlatform.dsc.inc       | 3 ++-
 Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc     | 3 ++-
 Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc  | 4 +---
 Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc | 4 +---
 6 files changed, 13 insertions(+), 15 deletions(-)

diff --git a/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc b/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
index 76707be73d7b..5d4b6ae726f6 100644
--- a/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
+++ b/Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc
@@ -1,5 +1,5 @@
 #
-#  Copyright (c) 2020, ARM Limited. All rights reserved.
+#  Copyright (c) 2020 - 2022, ARM Limited. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 #
@@ -17,14 +17,14 @@
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0x0E800000
 
   # PL011 - Serial Terminal
-  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x7FF80000
+  gArmPlatformTokenSpaceGuid.PL011UartInterrupt|95
 
   # PL370 - HDLCD1
   gArmPlatformTokenSpaceGuid.PcdArmHdLcdBase|0x7FF60000
 
   # PL011 - Serial Debug UART
-  gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x7FF80000
-  gArmPlatformTokenSpaceGuid.PL011UartInterrupt|147
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x7FF70000
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt|147
 
   # PL031 RealTimeClock
   gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x1C170000
diff --git a/Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc b/Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc
index 2d612f9b9674..1e9cd0982f5c 100644
--- a/Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc
+++ b/Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc
@@ -1,5 +1,5 @@
 #
-#  Copyright (c) 2020, ARM Limited. All rights reserved.
+#  Copyright (c) 2020 - 2022, ARM Limited. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 #
@@ -17,14 +17,14 @@
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0x1052800000
 
   # PL011 - Serial Terminal
-  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x0EF70000
+  gArmPlatformTokenSpaceGuid.PL011UartInterrupt|112
 
   # PL370 - HDLCD1
   gArmPlatformTokenSpaceGuid.PcdArmHdLcdBase|0x0EF60000
 
   # PL011 - Serial Debug UART
   gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x0EF70000
-  gArmPlatformTokenSpaceGuid.PL011UartInterrupt|403
+  gArmPlatformTokenSpaceGuid.PcdSerialDbgInterrupt|403
 
   # PL031 RealTimeClock
   gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0C170000
diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc b/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
index 582efb0114c6..b0c5c7ddc9a9 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+++ b/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
@@ -1,5 +1,5 @@
 #
-#  Copyright (c) 2018-2021, ARM Limited. All rights reserved.
+#  Copyright (c) 2018 - 2022, ARM Limited. All rights reserved.
 #  (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR>
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -157,6 +157,7 @@
   gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|24
 
   ## PL011 - Serial Terminal
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x2A400000
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultReceiveFifoDepth|0
   gArmPlatformTokenSpaceGuid.PL011UartInteger|4
diff --git a/Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc b/Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc
index 5287e1f8e568..68fc3ad93a5f 100644
--- a/Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc
+++ b/Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc
@@ -1,7 +1,7 @@
 ## @file
 #  StandaloneMM platform description include file for all supported platforms.
 #
-#  Copyright (c) 2021, ARM Limited. All rights reserved.
+#  Copyright (c) 2021 - 2022, ARM Limited. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 ##
@@ -84,6 +84,7 @@
   gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x0f
 
   ## PL011 - Serial Terminal
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x2A410000
   gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200
 
   gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x2
diff --git a/Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc b/Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc
index 2cb4895cfcff..4b624a11c6d8 100644
--- a/Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc
+++ b/Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc
@@ -2,7 +2,7 @@
 #  StandaloneMM platform description file for SGI-575, RD-N1-Edge, RD-E1-Edge
 #  and RD-V1 platforms.
 #
-#  Copyright (c) 2021, ARM Limited. All rights reserved.
+#  Copyright (c) 2021 - 2022, ARM Limited. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 ##
@@ -37,8 +37,6 @@
 #
 ################################################################################
 [PcdsFixedAtBuild]
-  ## PL011 - Serial Terminal
-  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x7FF70000
 
 !if $(SECURE_STORAGE_ENABLE) == TRUE
   ##Secure NOR Flash 2
diff --git a/Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc b/Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc
index 46c2ae3529d1..134daf7f20fb 100644
--- a/Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc
+++ b/Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc
@@ -1,7 +1,7 @@
 ## @file
 #  StandaloneMM platform description file for RD-N2 platforms.
 #
-#  Copyright (c) 2021, ARM Limited. All rights reserved.
+#  Copyright (c) 2021 - 2022, ARM Limited. All rights reserved.
 #
 #  SPDX-License-Identifier: BSD-2-Clause-Patent
 ##
@@ -36,8 +36,6 @@
 #
 ################################################################################
 [PcdsFixedAtBuild]
-  ## PL011 - Serial Terminal
-  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x0EF80000
 
 !if $(SECURE_STORAGE_ENABLE) == TRUE
   ##Secure NOR Flash 2
-- 
2.25.1


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

* Re: [edk2-devel] [edk2-platforms][PATCH V3 0/2] Uart segregation patch series
  2022-06-22 11:56 [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Rohit Mathew
  2022-06-22 11:56 ` [edk2-platforms][PATCH V3 1/2] Platform/Sgi: Remove redundant platform description from DSDT Rohit Mathew
  2022-06-22 11:56 ` [edk2-platforms][PATCH V3 2/2] Platform/Sgi: Route logs to different sets of consoles Rohit Mathew
@ 2022-06-22 12:10 ` Thomas Abraham
  2022-06-22 14:52   ` Ard Biesheuvel
  2 siblings, 1 reply; 5+ messages in thread
From: Thomas Abraham @ 2022-06-22 12:10 UTC (permalink / raw)
  To: devel, rohit.mathew; +Cc: Ard Biesheuvel, Sami Mujawar



On 22/06/2022 12:56, Rohit Mathew via groups.io wrote:
> Changes since V1:
> - Rebased on top of latest master branch.
> - Updated copyright and date.
> 
> Changes since V2:
> - Addressed comments from Thomas.
> 
> This patch series aims at routing uart logs via different sets of uart ports,
> namely secure port for secure partition logs and non-secure port for all other
> logs.
> 
> The first patch deals with removing redundant DSDT descriptions. For sgi575,
> a hardcoded uart base address was being used within the DSDT which hindered
> migration to the required uart ports. The addition of this patch solves this
> issue.
> 
> The second patch deals with the migration and grouping of uart related PCDs for
> all Neoverese reference design platforms
> 
> Dependency:
> https://edk2.groups.io/g/devel/message/90674
> 
> Link to github branch with the patches in this series -
> https://github.com/rohit-arm/edk2-platforms/tree/uart_segregation
> 
> Rohit Mathew (2):
>    Platform/Sgi: Remove redundant platform description from DSDT
>    Platform/Sgi: Route logs to different sets of consoles
> 
>   Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc       |  8 +--
>   Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc      |  6 +-
>   Platform/ARM/SgiPkg/SgiPlatform.dsc.inc        |  3 +-
>   Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc      |  3 +-
>   Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc   |  4 +-
>   Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc  |  4 +-
>   Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl | 66 +-------------------
>   7 files changed, 14 insertions(+), 80 deletions(-)
> 

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

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

* Re: [edk2-devel] [edk2-platforms][PATCH V3 0/2] Uart segregation patch series
  2022-06-22 12:10 ` [edk2-devel] [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Thomas Abraham
@ 2022-06-22 14:52   ` Ard Biesheuvel
  0 siblings, 0 replies; 5+ messages in thread
From: Ard Biesheuvel @ 2022-06-22 14:52 UTC (permalink / raw)
  To: Thomas Abraham
  Cc: edk2-devel-groups-io, Rohit Mathew, Ard Biesheuvel, Sami Mujawar

On Wed, 22 Jun 2022 at 14:10, Thomas Abraham <thomas.abraham@arm.com> wrote:
>
>
>
> On 22/06/2022 12:56, Rohit Mathew via groups.io wrote:
> > Changes since V1:
> > - Rebased on top of latest master branch.
> > - Updated copyright and date.
> >
> > Changes since V2:
> > - Addressed comments from Thomas.
> >
> > This patch series aims at routing uart logs via different sets of uart ports,
> > namely secure port for secure partition logs and non-secure port for all other
> > logs.
> >
> > The first patch deals with removing redundant DSDT descriptions. For sgi575,
> > a hardcoded uart base address was being used within the DSDT which hindered
> > migration to the required uart ports. The addition of this patch solves this
> > issue.
> >
> > The second patch deals with the migration and grouping of uart related PCDs for
> > all Neoverese reference design platforms
> >
> > Dependency:
> > https://edk2.groups.io/g/devel/message/90674
> >
> > Link to github branch with the patches in this series -
> > https://github.com/rohit-arm/edk2-platforms/tree/uart_segregation
> >
> > Rohit Mathew (2):
> >    Platform/Sgi: Remove redundant platform description from DSDT
> >    Platform/Sgi: Route logs to different sets of consoles
> >
> >   Platform/ARM/SgiPkg/SgiMemoryMap.dsc.inc       |  8 +--
> >   Platform/ARM/SgiPkg/SgiMemoryMap2.dsc.inc      |  6 +-
> >   Platform/ARM/SgiPkg/SgiPlatform.dsc.inc        |  3 +-
> >   Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc      |  3 +-
> >   Platform/ARM/SgiPkg/PlatformStandaloneMm.dsc   |  4 +-
> >   Platform/ARM/SgiPkg/PlatformStandaloneMm2.dsc  |  4 +-
> >   Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl | 66 +-------------------
> >   7 files changed, 14 insertions(+), 80 deletions(-)
> >
>
> For this series -
> Reviewed-by: Thomas Abraham <thomas.abraham@arm.com>

Pushed as 14c218dd05ef..433b5b1b0f7f

Thanks all,

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

end of thread, other threads:[~2022-06-22 14:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-22 11:56 [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Rohit Mathew
2022-06-22 11:56 ` [edk2-platforms][PATCH V3 1/2] Platform/Sgi: Remove redundant platform description from DSDT Rohit Mathew
2022-06-22 11:56 ` [edk2-platforms][PATCH V3 2/2] Platform/Sgi: Route logs to different sets of consoles Rohit Mathew
2022-06-22 12:10 ` [edk2-devel] [edk2-platforms][PATCH V3 0/2] Uart segregation patch series Thomas Abraham
2022-06-22 14:52   ` Ard Biesheuvel

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