[edk2-devel] [PATCH edk2-platforms 1/1] Platform: Add SerialUartClockLib for all platforms

Pete Batard pete at akeo.ie
Wed Feb 19 11:56:16 UTC 2020


Hi Pankaj,

Please see two comments inline:

On 2020.02.19 14:00, Pankaj Bansal wrote:
> From: Pankaj Bansal <pankaj.bansal at nxp.com>
> 
> BaseSerialPortLib16550 has been modified to use SerialUartClockLib.
> Therefore, add the default implementation of SerialUartClockLib for
> all the platforms using BaseSerialPortLib16550.
> 
> Signed-off-by: Pankaj Bansal <pankaj.bansal at nxp.com>
> ---
> 
> Notes:
>      [Dependency]
>        [PATCH 1/1] MdeModulePkg: UART Dynamic clock freq Support
>   Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc    | 1 +
>   Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc | 1 +
>   Platform/Intel/QuarkPlatformPkg/Quark.dsc                   | 1 +
>   Platform/Intel/QuarkPlatformPkg/QuarkMin.dsc                | 1 +
>   Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc        | 6 ++++++
>   Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgX64.dsc         | 6 ++++++
>   Platform/RaspberryPi/RPi3/RPi3.dsc                          | 1 +
>   Platform/RaspberryPi/RPi4/RPi4.dsc                          | 1 +
>   Platform/Socionext/DeveloperBox/DeveloperBox.dsc            | 1 +
>   Platform/Socionext/DeveloperBox/DeveloperBoxMm.dsc          | 1 +
>   Silicon/Intel/QuarkSocPkg/QuarkSocPkg.dsc                   | 1 +
>   Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc               | 1 +
>   12 files changed, 22 insertions(+)
> 
> diff --git a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> index b83e72b48c47..90cd72aff0d5 100644
> --- a/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> +++ b/Platform/Intel/AdvancedFeaturePkg/AdvancedFeaturePkg.dsc
> @@ -74,6 +74,7 @@ [LibraryClasses.common]
>     PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
>     PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
>     ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     SortLib|MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf
>     TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
> diff --git a/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc b/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
> index 23ab53dbfe12..172ba6822419 100644
> --- a/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
> +++ b/Platform/Intel/MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
> @@ -20,6 +20,7 @@ [LibraryClasses.common]
>     DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
>     UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
>     UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
>   
> diff --git a/Platform/Intel/QuarkPlatformPkg/Quark.dsc b/Platform/Intel/QuarkPlatformPkg/Quark.dsc
> index a02adb64e695..b275298a5ddb 100644
> --- a/Platform/Intel/QuarkPlatformPkg/Quark.dsc
> +++ b/Platform/Intel/QuarkPlatformPkg/Quark.dsc
> @@ -213,6 +213,7 @@ [LibraryClasses]
>     #
>     IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
>     I2cLib|QuarkSocPkg/QuarkSouthCluster/Library/I2cLib/I2cLib.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
>   
> diff --git a/Platform/Intel/QuarkPlatformPkg/QuarkMin.dsc b/Platform/Intel/QuarkPlatformPkg/QuarkMin.dsc
> index 3dbf616c664d..cffd777a6721 100644
> --- a/Platform/Intel/QuarkPlatformPkg/QuarkMin.dsc
> +++ b/Platform/Intel/QuarkPlatformPkg/QuarkMin.dsc
> @@ -185,6 +185,7 @@ [LibraryClasses]
>     #
>     IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
>     I2cLib|QuarkSocPkg/QuarkSouthCluster/Library/I2cLib/I2cLib.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
>   
> diff --git a/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc b/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc
> index 463b952e6582..91b2754ea509 100644
> --- a/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc
> +++ b/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgIA32.dsc
> @@ -184,6 +184,7 @@ [LibraryClasses.common]
>     SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
>   !else
>     DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>   !endif
>   
> @@ -200,6 +201,7 @@ [LibraryClasses.common]
>   !if $(SOURCE_DEBUG_ENABLE) == TRUE
>     PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
>     DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>   !else
>     PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
> @@ -280,6 +282,7 @@ [LibraryClasses.IA32.PEIM, LibraryClasses.IA32.PEI_CORE, LibraryClasses.IA32.SEC
>     SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
>   !else
>     DebugLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>   !endif
>   
> @@ -779,6 +782,7 @@ [Components.IA32]
>         PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
>         DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
>         PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
> +      SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>         SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>       }
>   !endif
> @@ -933,6 +937,7 @@ [Components.IA32]
>     MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
>       <LibraryClasses>
>         NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
> +      SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>         SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     }
>     Vlv2TbltDevicePkg/FvbRuntimeDxe/FvbSmm.inf
> @@ -1223,6 +1228,7 @@ [Components.IA32]
>       <LibraryClasses>
>         DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
>         PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
> +      SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>         SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     }
>   !endif
> diff --git a/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgX64.dsc b/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgX64.dsc
> index ee18b45c9712..749a2dd4948b 100644
> --- a/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgX64.dsc
> +++ b/Platform/Intel/Vlv2TbltDevicePkg/PlatformPkgX64.dsc
> @@ -186,6 +186,7 @@ [LibraryClasses.common]
>     SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
>   !else
>     DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>   !endif
>   
> @@ -202,6 +203,7 @@ [LibraryClasses.common]
>   !if $(SOURCE_DEBUG_ENABLE) == TRUE
>     PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
>     DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>   !else
>     PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
> @@ -282,6 +284,7 @@ [LibraryClasses.IA32.PEIM, LibraryClasses.IA32.PEI_CORE, LibraryClasses.IA32.SEC
>     SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
>   !else
>     DebugLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>   !endif
>   
> @@ -781,6 +784,7 @@ [Components.IA32]
>         PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
>         DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
>         PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
> +      SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>         SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>       }
>   !endif
> @@ -948,6 +952,7 @@ [Components.X64]
>     MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
>       <LibraryClasses>
>         NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
> +      SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>         SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     }
>     Vlv2TbltDevicePkg/FvbRuntimeDxe/FvbSmm.inf
> @@ -1238,6 +1243,7 @@ [Components.X64]
>       <LibraryClasses>
>         DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
>         PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
> +      SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>         SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     }
>   !endif
> diff --git a/Platform/RaspberryPi/RPi3/RPi3.dsc b/Platform/RaspberryPi/RPi3/RPi3.dsc
> index 2368b04f40a4..d2c4bfc1a1a8 100644
> --- a/Platform/RaspberryPi/RPi3/RPi3.dsc
> +++ b/Platform/RaspberryPi/RPi3/RPi3.dsc
> @@ -117,6 +117,7 @@ [LibraryClasses.common]
>     PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
>     PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

This will fail with current ed2-platform because of:
https://github.com/tianocore/edk2-platforms/commit/2fc6eb4b707c16a10fa42f0d8e385d52e656a8e8

The RPi platforms recently removed the use of BaseSerialPortLib16550 and 
it appears your commit was designed for an older version of edk2-platform...

>   
>     # Cryptographic libraries
> diff --git a/Platform/RaspberryPi/RPi4/RPi4.dsc b/Platform/RaspberryPi/RPi4/RPi4.dsc
> index b3a114b6e0ed..bd1eb9c15773 100644
> --- a/Platform/RaspberryPi/RPi4/RPi4.dsc
> +++ b/Platform/RaspberryPi/RPi4/RPi4.dsc
> @@ -126,6 +126,7 @@ [LibraryClasses.common]
>     PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
>     PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf

Likewise because of 
https://github.com/tianocore/edk2-platforms/commit/41c1d9ba33046637ef0f5d96ed75e884e28d67fd

Because we're no longer using BaseSerialPortLib16550 you should just 
ignore the RPi platforms.

Regards,

/Pete

>   !endif
>   
> diff --git a/Platform/Socionext/DeveloperBox/DeveloperBox.dsc b/Platform/Socionext/DeveloperBox/DeveloperBox.dsc
> index 9f8cb68cdd26..281de3197d0c 100644
> --- a/Platform/Socionext/DeveloperBox/DeveloperBox.dsc
> +++ b/Platform/Socionext/DeveloperBox/DeveloperBox.dsc
> @@ -32,6 +32,7 @@ [LibraryClasses]
>   !if $(DEBUG_ON_UART1) == FALSE
>     SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf
>   !else
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
>     PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
> diff --git a/Platform/Socionext/DeveloperBox/DeveloperBoxMm.dsc b/Platform/Socionext/DeveloperBox/DeveloperBoxMm.dsc
> index 00f6d4496377..ef3ed0f20911 100644
> --- a/Platform/Socionext/DeveloperBox/DeveloperBoxMm.dsc
> +++ b/Platform/Socionext/DeveloperBox/DeveloperBoxMm.dsc
> @@ -35,6 +35,7 @@ [LibraryClasses]
>     StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf
>     StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
>   
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
>     PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
> diff --git a/Silicon/Intel/QuarkSocPkg/QuarkSocPkg.dsc b/Silicon/Intel/QuarkSocPkg/QuarkSocPkg.dsc
> index e743a5e272e4..2e4bf8c1259c 100644
> --- a/Silicon/Intel/QuarkSocPkg/QuarkSocPkg.dsc
> +++ b/Silicon/Intel/QuarkSocPkg/QuarkSocPkg.dsc
> @@ -105,6 +105,7 @@ [LibraryClasses]
>     # Quark South Cluster
>     #
>     IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
>     #
> diff --git a/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc b/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> index 42f8bbba926c..4cf6429d7476 100644
> --- a/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> +++ b/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
> @@ -87,6 +87,7 @@ [LibraryClasses.common]
>     UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
>   
>     # Serial port libraries
> +  SerialUartClockLib|MdeModulePkg/Library/BaseSerialUartClockLib/BaseSerialUartClockLib.inf
>     SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
>     PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
>   
> 


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

View/Reply Online (#54632): https://edk2.groups.io/g/devel/message/54632
Mute This Topic: https://groups.io/mt/71393887/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list