On 2019.11.19 11:43, Philippe Mathieu-Daudé wrote:
On 11/19/19 12:38 PM, Pete Batard wrote:
From: Samer El-Haj-Mahmoud <samer.el-haj-mahm...@arm.com>

Define BCM2836_SOC_REGISTERS from PcdBcm283xRegistersAddress. This is
needed in preparation for adding Raspberry Pi 4 support, since the two
Pi's have a different base addresses for the Bcm283x specific registers.


Shouldn't this patch also include Samer's S-o-b tag?

I think we went over this already (but I can't seem to find that e-mail from the list).

As per Leif's comments in https://www.mail-archive.com/devel@edk2.groups.io/msg05292.html:

"I don't want patches submitted with anyone other than the
contributor's Signed-off-by"

Regards,

/Pete


Except this question, for the technical part:
Reviewed-by: Philippe Mathieu-Daude <phi...@redhat.com>

Signed-off-by: Pete Batard <p...@akeo.ie>
---
  Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.inf | 2 ++   Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.inf               | 2 ++   Platform/RaspberryPi/Drivers/DwUsbHostDxe/DwUsbHostDxe.inf         | 4 ++++   Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.inf     | 5 ++++-   Platform/RaspberryPi/Drivers/SdHostDxe/SdHostDxe.inf               | 2 ++   Platform/RaspberryPi/Library/PlatformLib/PlatformLib.inf           | 3 ++-   Platform/RaspberryPi/RPi3/RPi3.dsc                                 | 7 ++++++-   Silicon/Broadcom/Bcm283x/Bcm283x.dec                               | 7 +++++++   Silicon/Broadcom/Bcm283x/Drivers/InterruptDxe/InterruptDxe.inf     | 4 +++-   Silicon/Broadcom/Bcm283x/Drivers/RngDxe/RngDxe.inf                 | 5 +++++   Silicon/Broadcom/Bcm283x/Include/IndustryStandard/Bcm2836.h        | 3 ++-   Silicon/Broadcom/Bcm283x/Library/GpioLib/GpioLib.inf               | 4 ++++
  12 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.inf b/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.inf
index 3f0d7b6b9e9d..6db8a1c5e400 100644
--- a/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.inf
+++ b/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.inf
@@ -1,5 +1,6 @@
  #/** @file
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2017, Andrei Warkentin <andrey.warken...@gmail.com>
  #  Copyright (c) Microsoft Corporation. All rights reserved.
  #
@@ -41,6 +42,7 @@ [Protocols]
    gRaspberryPiFirmwareProtocolGuid ## CONSUMES
  [Pcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
    gRaspberryPiTokenSpaceGuid.PcdSdIsArasan
  [Depex]
diff --git a/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.inf b/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.inf
index 28fc2682b585..817cb98c1933 100644
--- a/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.inf
+++ b/Platform/RaspberryPi/Drivers/ConfigDxe/ConfigDxe.inf
@@ -1,5 +1,6 @@
  #/** @file
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2018, Andrei Warkentin <andrey.warken...@gmail.com>
  #
  #  SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -54,6 +55,7 @@ [Protocols]
    gRaspberryPiConfigAppliedProtocolGuid ## PRODUCES
  [Pcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
    gRaspberryPiTokenSpaceGuid.PcdCpuClock
    gRaspberryPiTokenSpaceGuid.PcdCustomCpuClock
    gRaspberryPiTokenSpaceGuid.PcdSdIsArasan
diff --git a/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DwUsbHostDxe.inf b/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DwUsbHostDxe.inf
index e880c2fb0261..8817f20622d6 100644
--- a/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DwUsbHostDxe.inf
+++ b/Platform/RaspberryPi/Drivers/DwUsbHostDxe/DwUsbHostDxe.inf
@@ -1,5 +1,6 @@
  #/** @file
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2017-2018, Andrei Warkentin <andrey.warken...@gmail.com>
  #  Copyright (c) 2015-2016, Linaro Limited. All rights reserved.
  #
@@ -51,5 +52,8 @@ [Protocols]
    gEfiUsb2HcProtocolGuid
    gRaspberryPiFirmwareProtocolGuid
+[FixedPcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
+
  [Depex]
    gRaspberryPiFirmwareProtocolGuid
diff --git a/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.inf b/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.inf
index 87bca98fec28..a3fc0fa49a3c 100644
--- a/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.inf
+++ b/Platform/RaspberryPi/Drivers/RpiFirmwareDxe/RpiFirmwareDxe.inf
@@ -1,5 +1,5 @@
  #/** @file
-#
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2017-2018, Andrei Warkentin <andrey.warken...@gmail.com>
  #  Copyright (c) 2016, Linaro, Ltd. All rights reserved.
  #
@@ -40,5 +40,8 @@ [LibraryClasses]
  [Protocols]
    gRaspberryPiFirmwareProtocolGuid    ## PRODUCES
+[FixedPcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
+
  [Depex]
    TRUE
diff --git a/Platform/RaspberryPi/Drivers/SdHostDxe/SdHostDxe.inf b/Platform/RaspberryPi/Drivers/SdHostDxe/SdHostDxe.inf
index 7386ff251864..ca8b30700328 100644
--- a/Platform/RaspberryPi/Drivers/SdHostDxe/SdHostDxe.inf
+++ b/Platform/RaspberryPi/Drivers/SdHostDxe/SdHostDxe.inf
@@ -1,5 +1,6 @@
  #/** @file
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2017, Andrei Warkentin <andrey.warken...@gmail.com>
  #  Copyright (c) Microsoft Corporation. All rights reserved.
  #
@@ -43,6 +44,7 @@ [Protocols]
    gRaspberryPiFirmwareProtocolGuid ## CONSUMES
  [Pcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
    gRaspberryPiTokenSpaceGuid.PcdSdIsArasan
  [Depex]
diff --git a/Platform/RaspberryPi/Library/PlatformLib/PlatformLib.inf b/Platform/RaspberryPi/Library/PlatformLib/PlatformLib.inf
index ed986034b957..bcc6f8b6ec13 100644
--- a/Platform/RaspberryPi/Library/PlatformLib/PlatformLib.inf
+++ b/Platform/RaspberryPi/Library/PlatformLib/PlatformLib.inf
@@ -2,7 +2,7 @@
  #
  #  Copyright (c) 2017-2018, Andrei Warkentin <andrey.warken...@gmail.com>
  #  Copyright (c) 2014-2016, Linaro Limited. All rights reserved.
-#  Copyright (c) 2011-2014, ARM Limited. All rights reserved.
+#  Copyright (c) 2011-2019, ARM Limited. All rights reserved.
  #
  #  SPDX-License-Identifier: BSD-2-Clause-Patent
  #
@@ -47,6 +47,7 @@ [FixedPcd]
    gArmTokenSpaceGuid.PcdArmPrimaryCoreMask
    gArmTokenSpaceGuid.PcdArmPrimaryCore
    gArmTokenSpaceGuid.PcdFdSize
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
    gEmbeddedTokenSpaceGuid.PcdDmaDeviceOffset
    gArmTokenSpaceGuid.PcdSystemMemoryBase
    gArmTokenSpaceGuid.PcdSystemMemorySize
diff --git a/Platform/RaspberryPi/RPi3/RPi3.dsc b/Platform/RaspberryPi/RPi3/RPi3.dsc
index a0365c5cf606..98c75e373fa7 100644
--- a/Platform/RaspberryPi/RPi3/RPi3.dsc
+++ b/Platform/RaspberryPi/RPi3/RPi3.dsc
@@ -1,6 +1,6 @@
  # @file
  #
-#  Copyright (c) 2011-2015, ARM Limited. All rights reserved.
+#  Copyright (c) 2011 - 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2014, Linaro Limited. All rights reserved.
  #  Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
  #  Copyright (c) 2017 - 2018, Andrei Warkentin <andrey.warken...@gmail.com>
@@ -372,6 +372,11 @@ [PcdsFixedAtBuild.common]
    gArmTokenSpaceGuid.PcdSystemMemoryBase|0x00400000
    gArmTokenSpaceGuid.PcdSystemMemorySize|0x3FC00000
+  #
+  # Device specific addresses
+  #
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress|0x3f000000
+
    ## NS16550 compatible UART
    gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x3f215040
    gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|TRUE
diff --git a/Silicon/Broadcom/Bcm283x/Bcm283x.dec b/Silicon/Broadcom/Bcm283x/Bcm283x.dec
index ec62ff27fbb3..5b839b00d286 100644
--- a/Silicon/Broadcom/Bcm283x/Bcm283x.dec
+++ b/Silicon/Broadcom/Bcm283x/Bcm283x.dec
@@ -1,5 +1,6 @@
  ## @file
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2019, Pete Batard <p...@akeo.ie>
  #
  #  SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -14,3 +15,9 @@ [Defines]
  [Includes]
    Include
+
+[Guids]
+  gBcm283xTokenSpaceGuid = {0x82f36a92, 0xfb7e, 0x43a1, {0xb9, 0x9e, 0x49, 0x13, 0x3f, 0xc7, 0xa4, 0x2e}}
+
+[PcdsFixedAtBuild.common]
+ gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress|0x0|UINT32|0x00000001 diff --git a/Silicon/Broadcom/Bcm283x/Drivers/InterruptDxe/InterruptDxe.inf b/Silicon/Broadcom/Bcm283x/Drivers/InterruptDxe/InterruptDxe.inf
index cdce11a51e14..f984c4b52623 100644
--- a/Silicon/Broadcom/Bcm283x/Drivers/InterruptDxe/InterruptDxe.inf
+++ b/Silicon/Broadcom/Bcm283x/Drivers/InterruptDxe/InterruptDxe.inf
@@ -1,5 +1,5 @@
  #/** @file
-#
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2017, Andrei Warkentin <andrey.warken...@gmail.com>
  #  Copyright (c) 2016 Linaro, Ltd. All rights reserved.
  #
@@ -27,6 +27,7 @@ [LibraryClasses]
    BaseLib
    DebugLib
    IoLib
+  PcdLib
    UefiBootServicesTableLib
    UefiLib
    UefiDriverEntryPoint
@@ -36,6 +37,7 @@ [Protocols]
    gEfiCpuArchProtocolGuid         ## CONSUMES ## NOTIFY
  [FixedPcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
    gEmbeddedTokenSpaceGuid.PcdInterruptBaseAddress
  [Depex]
diff --git a/Silicon/Broadcom/Bcm283x/Drivers/RngDxe/RngDxe.inf b/Silicon/Broadcom/Bcm283x/Drivers/RngDxe/RngDxe.inf
index cb1695bd2dfc..8eb90de85cfd 100644
--- a/Silicon/Broadcom/Bcm283x/Drivers/RngDxe/RngDxe.inf
+++ b/Silicon/Broadcom/Bcm283x/Drivers/RngDxe/RngDxe.inf
@@ -1,5 +1,6 @@
  #/** @file
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2019 Linaro, Ltd. All rights reserved.
  #
  #  SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -26,6 +27,7 @@ [LibraryClasses]
    BaseMemoryLib
    DebugLib
    IoLib
+  PcdLib
    UefiBootServicesTableLib
    UefiDriverEntryPoint
@@ -35,5 +37,8 @@ [Protocols]
  [Guids]
    gEfiRngAlgorithmRaw
+[FixedPcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
+
  [Depex]
    TRUE
diff --git a/Silicon/Broadcom/Bcm283x/Include/IndustryStandard/Bcm2836.h b/Silicon/Broadcom/Bcm283x/Include/IndustryStandard/Bcm2836.h
index 4007301228be..8bd68c234bfd 100644
--- a/Silicon/Broadcom/Bcm283x/Include/IndustryStandard/Bcm2836.h
+++ b/Silicon/Broadcom/Bcm283x/Include/IndustryStandard/Bcm2836.h
@@ -1,5 +1,6 @@
  /** @file
   *
+ *  Copyright (c) 2019, ARM Limited. All rights reserved.
   *  Copyright (c) 2017, Andrei Warkentin <andrey.warken...@gmail.com>
   *  Copyright (c) 2016, Linaro Limited. All rights reserved.
   *
@@ -13,7 +14,7 @@
  /*
   * Both "core" and SoC perpherals (1M each).
   */
-#define BCM2836_SOC_REGISTERS                               0x3f000000
+#define BCM2836_SOC_REGISTERS (FixedPcdGet64 (PcdBcm283xRegistersAddress))
  #define BCM2836_SOC_REGISTER_LENGTH                         0x02000000
  /*
diff --git a/Silicon/Broadcom/Bcm283x/Library/GpioLib/GpioLib.inf b/Silicon/Broadcom/Bcm283x/Library/GpioLib/GpioLib.inf
index 50da4eb771f3..ff1b5af6db6e 100644
--- a/Silicon/Broadcom/Bcm283x/Library/GpioLib/GpioLib.inf
+++ b/Silicon/Broadcom/Bcm283x/Library/GpioLib/GpioLib.inf
@@ -2,6 +2,7 @@
  #
  #  Manipulate GPIOs.
  #
+#  Copyright (c) 2019, ARM Limited. All rights reserved.
  #  Copyright (c) 2018, Andrei Warkentin <andrey.warken...@gmail.com>
  #
  #  SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -30,4 +31,7 @@ [LibraryClasses]
    DebugLib
    IoLib
+[FixedPcd]
+  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
+
  [Guids]




-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#50891): https://edk2.groups.io/g/devel/message/50891
Mute This Topic: https://groups.io/mt/60553574/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to