From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f67.google.com (mail-wr1-f67.google.com [209.85.221.67]) by mx.groups.io with SMTP id smtpd.web11.19965.1574164630362832950 for ; Tue, 19 Nov 2019 03:57:10 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@akeo-ie.20150623.gappssmtp.com header.s=20150623 header.b=beAoDYJH; spf=none, err=permanent DNS error (domain: akeo.ie, ip: 209.85.221.67, mailfrom: pete@akeo.ie) Received: by mail-wr1-f67.google.com with SMTP id q15so10677048wrw.7 for ; Tue, 19 Nov 2019 03:57:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akeo-ie.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=bGPxpAuyzq91XGP8Q4vpntSzf6vcgkGHAcRFoq2c06c=; b=beAoDYJHbNDQ39p7PILl3DnP665Qth5xvdsoCFIk/dLMYdC2DSY/GFnXLbtKNqWUSA QVR+uRtFGaMqosxyWJKWlhb85j90vbRhWTwwScpT7r5ScVxvMvRxxnuju28T1UpSy2da dGCU5TfX0ljPJu6H/6FeyqPb/5/webL0/8ktQBA/AaMpVaq2Q0FlN1hUjt99VqlykOTz SstgUywc0UQnV5FyY6WV6DvPHqBV1Vf2z5pWVHTJQESA0kZZR+1ro3qEt8ccfsbXPQsX hC7iM6i3D/Mn6HQPWDs0F1bnDSeDmOD58XdH2LXj+q3uXljmIgwyTYQLM6cpwD9gWTav uWYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=bGPxpAuyzq91XGP8Q4vpntSzf6vcgkGHAcRFoq2c06c=; b=TU0npG6QGb5VZ6dsivjqQMcnJZPhXloNP0eI/nzXsXp77pXQsEc2CTYwzXWQih/SvX 4Hk5QRkqxnevyQQeryYKhltJRcU9WcIZRul/c4c6hHO52N1wOMyFqbCCe11upFc3WIZC lVl/dOtnPqIYv9IvFmAJiQYF1si8pQEhhJVli7X0ci/qWxnufrV+RVCIlhMO1jM7WlCt SMHB8FH5nhyfrfiNjCvPDoW+mteZC6+DEs2Y1u85sU9CXyEFYqXEjIEp7T/HHkNaRU6D eB+yQF1I37PHyGHDJw8U/5/FJ/e0as22s0AAfiEFwCYW/yVYPrYemFievikaWlVU5Ewf ThHw== X-Gm-Message-State: APjAAAVzc6M+4XPBzjzL3JK/b7gswfTohGhF4eRnpidjHeoIhzz7nfz1 FGAHURmqBjzVwrRpMqio91iPdg== X-Google-Smtp-Source: APXvYqwhBFlnGlIZyydWHPthIUN3u+el76n5x58vDxwJQDaPuV9s/RkIYvzh+7ySLJuNHGqMFiMYAw== X-Received: by 2002:adf:f44a:: with SMTP id f10mr36574922wrp.63.1574164628441; Tue, 19 Nov 2019 03:57:08 -0800 (PST) Return-Path: Received: from [10.0.0.122] ([84.203.67.47]) by smtp.googlemail.com with ESMTPSA id c24sm30993943wrb.27.2019.11.19.03.57.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 19 Nov 2019 03:57:07 -0800 (PST) Subject: Re: [edk2-platforms][PATCH v2 3/7] Platform/RPi: Replace Bcm283x SoC base register address with a PCD To: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= , devel@edk2.groups.io Cc: ard.biesheuvel@linaro.org, leif.lindholm@linaro.org, samer.el-haj-mahmoud@arm.com References: <20191119113809.2472-1-pete@akeo.ie> <20191119113809.2472-4-pete@akeo.ie> <092d22cc-cd21-61ad-0317-3b2a3fc6c2cf@redhat.com> From: "Pete Batard" Message-ID: <1ae9ef75-aecb-e71c-c1b5-ce9f5d99c5a0@akeo.ie> Date: Tue, 19 Nov 2019 11:57:06 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1 MIME-Version: 1.0 In-Reply-To: <092d22cc-cd21-61ad-0317-3b2a3fc6c2cf@redhat.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 8bit 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 >> >> 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 > >> Signed-off-by: Pete Batard >> --- >>   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 >>   #  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 >>   # >>   #  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 >> >>   #  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 >> >>   #  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 >>   #  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 >> >>   #  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 >> >> @@ -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 >>   # >>   #  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 >>   #  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 >>    *  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 >>   # >>   #  SPDX-License-Identifier: BSD-2-Clause-Patent >> @@ -30,4 +31,7 @@ [LibraryClasses] >>     DebugLib >>     IoLib >> +[FixedPcd] >> +  gBcm283xTokenSpaceGuid.PcdBcm283xRegistersAddress >> + >>   [Guids] >> >