[Linaro-uefi,1/3] Hisilicon/D05: flash related driver switch to use generic BaseMemoryLib

Message ID 1479733729-100907-1-git-send-email-heyi.guo@linaro.org
State New
Headers show

Commit Message

Heyi Guo Nov. 21, 2016, 1:08 p.m.
The BaseMemoryLib has switch to use BaseMemoryLibOptDxe at OPP, but
the flash module is device attributes and have to be alignment accessed.
so we change the flash related drivers to use generic BaseMemoryLib which
is alignment access.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Heyi Guo <heyi.guo@linaro.org>
---
 Platforms/Hisilicon/D05/D05.dsc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

Comments

Ard Biesheuvel Nov. 21, 2016, 1:16 p.m. | #1
On 21 November 2016 at 13:08, Heyi Guo <heyi.guo@linaro.org> wrote:
> The BaseMemoryLib has switch to use BaseMemoryLibOptDxe at OPP, but
> the flash module is device attributes and have to be alignment accessed.
> so we change the flash related drivers to use generic BaseMemoryLib which
> is alignment access.
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Heyi Guo <heyi.guo@linaro.org>
> ---
>  Platforms/Hisilicon/D05/D05.dsc | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/Platforms/Hisilicon/D05/D05.dsc b/Platforms/Hisilicon/D05/D05.dsc
> index 6c4beef..7da2522 100644
> --- a/Platforms/Hisilicon/D05/D05.dsc
> +++ b/Platforms/Hisilicon/D05/D05.dsc
> @@ -72,6 +72,7 @@
>  !ifdef $(FDT_ENABLE)
>    #FDTUpdateLib
>    FdtUpdateLib|OpenPlatformPkg/Platforms/Hisilicon/Binary/D05/Library/FdtUpdateLib/FdtUpdateLib.inf
> +

Unrelated whitespace change

>  !endif #$(FDT_ENABLE)
>
>    CpldIoLib|OpenPlatformPkg/Chips/Hisilicon/Library/CpldIoLib/CpldIoLib.inf
> @@ -494,6 +495,7 @@
>    MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
>      <LibraryClasses>
>        NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
> +      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
>    }
>    MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
>    MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
> @@ -608,7 +610,10 @@
>    OpenPlatformPkg/Chips/Hisilicon/Drivers/Smbios/SmbiosMiscDxe/SmbiosMiscDxe.inf
>
>  !ifdef $(FDT_ENABLE)
> -  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf
> +  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf {
> +    <LibraryClasses>
> +      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf

Could you explain why this is necessary for this module as well?

Thanks,
Ard.
Heyi Guo Nov. 22, 2016, 1:17 a.m. | #2
Hi Ard,


在 11/21/2016 9:16 PM, Ard Biesheuvel 写道:
> On 21 November 2016 at 13:08, Heyi Guo <heyi.guo@linaro.org> wrote:
>> The BaseMemoryLib has switch to use BaseMemoryLibOptDxe at OPP, but
>> the flash module is device attributes and have to be alignment accessed.
>> so we change the flash related drivers to use generic BaseMemoryLib which
>> is alignment access.
>>
>> Contributed-under: TianoCore Contribution Agreement 1.0
>> Signed-off-by: Heyi Guo <heyi.guo@linaro.org>
>> ---
>>   Platforms/Hisilicon/D05/D05.dsc | 7 ++++++-
>>   1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/Platforms/Hisilicon/D05/D05.dsc b/Platforms/Hisilicon/D05/D05.dsc
>> index 6c4beef..7da2522 100644
>> --- a/Platforms/Hisilicon/D05/D05.dsc
>> +++ b/Platforms/Hisilicon/D05/D05.dsc
>> @@ -72,6 +72,7 @@
>>   !ifdef $(FDT_ENABLE)
>>     #FDTUpdateLib
>>     FdtUpdateLib|OpenPlatformPkg/Platforms/Hisilicon/Binary/D05/Library/FdtUpdateLib/FdtUpdateLib.inf
>> +
> Unrelated whitespace change
>>   !endif #$(FDT_ENABLE)
>>
>>     CpldIoLib|OpenPlatformPkg/Chips/Hisilicon/Library/CpldIoLib/CpldIoLib.inf
>> @@ -494,6 +495,7 @@
>>     MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
>>       <LibraryClasses>
>>         NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
>> +      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
>>     }
>>     MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
>>     MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
>> @@ -608,7 +610,10 @@
>>     OpenPlatformPkg/Chips/Hisilicon/Drivers/Smbios/SmbiosMiscDxe/SmbiosMiscDxe.inf
>>
>>   !ifdef $(FDT_ENABLE)
>> -  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf
>> +  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf {
>> +    <LibraryClasses>
>> +      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
> Could you explain why this is necessary for this module as well?
     The UpdateFdtDxe driver could also access the flash module,  the 
macro 'FDT_ENABLE' is not defined default,
     so it's have no problem, but if we define the macro at 
LinaroPkg/platforms.config, there will occur exception.

> Thanks,
> Ard.

Patch hide | download patch | download mbox

diff --git a/Platforms/Hisilicon/D05/D05.dsc b/Platforms/Hisilicon/D05/D05.dsc
index 6c4beef..7da2522 100644
--- a/Platforms/Hisilicon/D05/D05.dsc
+++ b/Platforms/Hisilicon/D05/D05.dsc
@@ -72,6 +72,7 @@ 
 !ifdef $(FDT_ENABLE)
   #FDTUpdateLib
   FdtUpdateLib|OpenPlatformPkg/Platforms/Hisilicon/Binary/D05/Library/FdtUpdateLib/FdtUpdateLib.inf
+
 !endif #$(FDT_ENABLE)
 
   CpldIoLib|OpenPlatformPkg/Chips/Hisilicon/Library/CpldIoLib/CpldIoLib.inf
@@ -494,6 +495,7 @@ 
   MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
     <LibraryClasses>
       NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
+      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
   }
   MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
   MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
@@ -608,7 +610,10 @@ 
   OpenPlatformPkg/Chips/Hisilicon/Drivers/Smbios/SmbiosMiscDxe/SmbiosMiscDxe.inf
 
 !ifdef $(FDT_ENABLE)
-  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf
+  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf {
+    <LibraryClasses>
+      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
+  }
 !endif #$(FDT_ENABLE)
 
   #PCIe Support