From: "Philippe Mathieu-Daudé" <philmd@redhat.com>
To: Pete Batard <pete@akeo.ie>, devel@edk2.groups.io
Cc: ard.biesheuvel@linaro.org, leif.lindholm@linaro.org,
samer.el-haj-mahmoud@arm.com
Subject: Re: [edk2-platforms][PATCH v2 3/7] Platform/RPi: Replace Bcm283x SoC base register address with a PCD
Date: Tue, 19 Nov 2019 12:43:41 +0100 [thread overview]
Message-ID: <092d22cc-cd21-61ad-0317-3b2a3fc6c2cf@redhat.com> (raw)
In-Reply-To: <20191119113809.2472-4-pete@akeo.ie>
On 11/19/19 12:38 PM, Pete Batard wrote:
> From: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@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?
Except this question, for the technical part:
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com>
> Signed-off-by: Pete Batard <pete@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.warkentin@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.warkentin@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.warkentin@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.warkentin@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.warkentin@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.warkentin@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.warkentin@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 <pete@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.warkentin@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.warkentin@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.warkentin@gmail.com>
> #
> # SPDX-License-Identifier: BSD-2-Clause-Patent
> @@ -30,4 +31,7 @@ [LibraryClasses]
> DebugLib
> IoLib
>
> +[FixedPcd]
> + gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress
> +
> [Guids]
>
next prev parent reply other threads:[~2019-11-19 11:43 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-19 11:38 [edk2-platforms][PATCH v2 0/7] Platform/RPi: Early Raspberry Pi 4 groundwork Pete Batard
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 1/7] Platform/RPi: Add missing model name Pete Batard
2019-11-19 12:02 ` Philippe Mathieu-Daudé
2019-11-19 12:14 ` [edk2-devel] " Leif Lindholm
2019-11-19 12:25 ` Philippe Mathieu-Daudé
2019-11-19 12:50 ` Leif Lindholm
2019-11-19 12:25 ` Pete Batard
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 2/7] Platform/RPi: Add model family detection Pete Batard
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 3/7] Platform/RPi: Replace Bcm283x SoC base register address with a PCD Pete Batard
2019-11-19 11:43 ` Philippe Mathieu-Daudé [this message]
2019-11-19 11:57 ` Pete Batard
2019-11-19 12:16 ` Philippe Mathieu-Daudé
2019-11-19 12:44 ` Leif Lindholm
2019-11-19 12:51 ` Ard Biesheuvel
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 4/7] Platform/RPi: Use offsets for Bcm238x SoC register addresses Pete Batard
2019-11-19 11:46 ` Philippe Mathieu-Daudé
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 5/7] Silicon/Broadcom: Add Bcm2711 header Pete Batard
2019-11-19 11:51 ` Philippe Mathieu-Daudé
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 6/7] Platform/RPi: Read more variables from VideoCore during early init Pete Batard
2019-11-19 11:38 ` [edk2-platforms][PATCH v2 7/7] Platform/RPi: Clean up and improve early memory init Pete Batard
2019-11-19 18:20 ` [edk2-platforms][PATCH v2 0/7] Platform/RPi: Early Raspberry Pi 4 groundwork Leif Lindholm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=092d22cc-cd21-61ad-0317-3b2a3fc6c2cf@redhat.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox