public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH] EmbeddedPkg/libfdt: Add strncmp macro to use AsciiStrnCmp
@ 2020-08-06  2:34 Abner Chang
  2020-08-18 18:04 ` Leif Lindholm
  0 siblings, 1 reply; 3+ messages in thread
From: Abner Chang @ 2020-08-06  2:34 UTC (permalink / raw)
  To: devel; +Cc: abner.chang, Leif Lindholm, Ard Biesheuvel, Daniel Schaefer

For the implementation which utilizes libfdt provided in EmbeddedPkg
however it uses strncmp function in the libfdt helper library,
libfdt_env.h should provide the macro implied with edk2 strncmp
implementation.

The example is RISC-V OpenSBI library. edk2 RISC-V port uses OpenSBI
library and incorporate with edk2 libfdt. edk2 libfdt_env.h provides
the necessary macros to build OpenSBI which uses fdt functions in edk2
environment. However, OpenSBI also has libfdt helper library that uses
strncmp function which is not defined in edk2 libfdt_env.h. This commit
addresses the build issue caused by missing strncmp macro in
libfdt_env.h.

Check below three commits for the corresponding changes on OpenSBI,
https://github.com/riscv/opensbi/commit/8e47649eff96c303e02fbd58cdc6c4ed341066ec
https://github.com/riscv/opensbi/commit/2845d2d2cf4fb74a89452ba223995aa4a118c07e
https://github.com/riscv/opensbi/commit/2cfd2fc9048806353298a1b967abf985901e36e8

Signed-off-by: Abner Chang <abner.chang@hpe.com>

Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
Cc: Daniel Schaefer <daniel.schaefer@hpe.com>
---
 EmbeddedPkg/Include/libfdt_env.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/EmbeddedPkg/Include/libfdt_env.h b/EmbeddedPkg/Include/libfdt_env.h
index 11a9764733..7feff52bc0 100644
--- a/EmbeddedPkg/Include/libfdt_env.h
+++ b/EmbeddedPkg/Include/libfdt_env.h
@@ -76,4 +76,8 @@ static inline size_t strnlen (const char* str, size_t strsz ) {
   return AsciiStrnLenS (str, strsz);
 }
 
+static inline size_t strncmp (const char* str1, const char* str2, size_t strsz ) {
+  return AsciiStrnCmp (str1, str2, strsz);
+}
+
 #endif /* _LIBFDT_ENV_H */
-- 
2.25.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] EmbeddedPkg/libfdt: Add strncmp macro to use AsciiStrnCmp
  2020-08-06  2:34 [PATCH] EmbeddedPkg/libfdt: Add strncmp macro to use AsciiStrnCmp Abner Chang
@ 2020-08-18 18:04 ` Leif Lindholm
  2020-08-24 17:28   ` [edk2-devel] " Laszlo Ersek
  0 siblings, 1 reply; 3+ messages in thread
From: Leif Lindholm @ 2020-08-18 18:04 UTC (permalink / raw)
  To: Abner Chang; +Cc: devel, Ard Biesheuvel, Daniel Schaefer

On Thu, Aug 06, 2020 at 10:34:21 +0800, Abner Chang wrote:
> For the implementation which utilizes libfdt provided in EmbeddedPkg
> however it uses strncmp function in the libfdt helper library,
> libfdt_env.h should provide the macro implied with edk2 strncmp
> implementation.
> 
> The example is RISC-V OpenSBI library. edk2 RISC-V port uses OpenSBI
> library and incorporate with edk2 libfdt. edk2 libfdt_env.h provides
> the necessary macros to build OpenSBI which uses fdt functions in edk2
> environment. However, OpenSBI also has libfdt helper library that uses
> strncmp function which is not defined in edk2 libfdt_env.h. This commit
> addresses the build issue caused by missing strncmp macro in
> libfdt_env.h.
> 
> Check below three commits for the corresponding changes on OpenSBI,
> https://github.com/riscv/opensbi/commit/8e47649eff96c303e02fbd58cdc6c4ed341066ec
> https://github.com/riscv/opensbi/commit/2845d2d2cf4fb74a89452ba223995aa4a118c07e
> https://github.com/riscv/opensbi/commit/2cfd2fc9048806353298a1b967abf985901e36e8
> 
> Signed-off-by: Abner Chang <abner.chang@hpe.com>
> 
> Cc: Leif Lindholm <leif@nuviainc.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
> Cc: Daniel Schaefer <daniel.schaefer@hpe.com>

Whoops, I failed to file this away in my queue - apologies.
Many thanks for fixing this in opensbi.
Reviewed-by: Leif Lindholm <leif@nuviainc.com>


> ---
>  EmbeddedPkg/Include/libfdt_env.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/EmbeddedPkg/Include/libfdt_env.h b/EmbeddedPkg/Include/libfdt_env.h
> index 11a9764733..7feff52bc0 100644
> --- a/EmbeddedPkg/Include/libfdt_env.h
> +++ b/EmbeddedPkg/Include/libfdt_env.h
> @@ -76,4 +76,8 @@ static inline size_t strnlen (const char* str, size_t strsz ) {
>    return AsciiStrnLenS (str, strsz);
>  }
>  
> +static inline size_t strncmp (const char* str1, const char* str2, size_t strsz ) {
> +  return AsciiStrnCmp (str1, str2, strsz);
> +}
> +
>  #endif /* _LIBFDT_ENV_H */
> -- 
> 2.25.0
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [edk2-devel] [PATCH] EmbeddedPkg/libfdt: Add strncmp macro to use AsciiStrnCmp
  2020-08-18 18:04 ` Leif Lindholm
@ 2020-08-24 17:28   ` Laszlo Ersek
  0 siblings, 0 replies; 3+ messages in thread
From: Laszlo Ersek @ 2020-08-24 17:28 UTC (permalink / raw)
  To: devel, leif, Abner Chang; +Cc: Ard Biesheuvel, Daniel Schaefer

On 08/18/20 20:04, Leif Lindholm wrote:
> On Thu, Aug 06, 2020 at 10:34:21 +0800, Abner Chang wrote:
>> For the implementation which utilizes libfdt provided in EmbeddedPkg
>> however it uses strncmp function in the libfdt helper library,
>> libfdt_env.h should provide the macro implied with edk2 strncmp
>> implementation.
>>
>> The example is RISC-V OpenSBI library. edk2 RISC-V port uses OpenSBI
>> library and incorporate with edk2 libfdt. edk2 libfdt_env.h provides
>> the necessary macros to build OpenSBI which uses fdt functions in edk2
>> environment. However, OpenSBI also has libfdt helper library that uses
>> strncmp function which is not defined in edk2 libfdt_env.h. This commit
>> addresses the build issue caused by missing strncmp macro in
>> libfdt_env.h.
>>
>> Check below three commits for the corresponding changes on OpenSBI,
>> https://github.com/riscv/opensbi/commit/8e47649eff96c303e02fbd58cdc6c4ed341066ec
>> https://github.com/riscv/opensbi/commit/2845d2d2cf4fb74a89452ba223995aa4a118c07e
>> https://github.com/riscv/opensbi/commit/2cfd2fc9048806353298a1b967abf985901e36e8
>>
>> Signed-off-by: Abner Chang <abner.chang@hpe.com>
>>
>> Cc: Leif Lindholm <leif@nuviainc.com>
>> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
>> Cc: Daniel Schaefer <daniel.schaefer@hpe.com>
> 
> Whoops, I failed to file this away in my queue - apologies.
> Many thanks for fixing this in opensbi.
> Reviewed-by: Leif Lindholm <leif@nuviainc.com>

Merged as commit 019f513a19f8, via
<https://github.com/tianocore/edk2/pull/898>.

If there is an associated TianoCore BZ (the commit message does not
mention one), please flip it to RESOLVED|FIXED, and mark the commit hash
on it.

Thanks,
Laszlo

> 
> 
>> ---
>>  EmbeddedPkg/Include/libfdt_env.h | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/EmbeddedPkg/Include/libfdt_env.h b/EmbeddedPkg/Include/libfdt_env.h
>> index 11a9764733..7feff52bc0 100644
>> --- a/EmbeddedPkg/Include/libfdt_env.h
>> +++ b/EmbeddedPkg/Include/libfdt_env.h
>> @@ -76,4 +76,8 @@ static inline size_t strnlen (const char* str, size_t strsz ) {
>>    return AsciiStrnLenS (str, strsz);
>>  }
>>  
>> +static inline size_t strncmp (const char* str1, const char* str2, size_t strsz ) {
>> +  return AsciiStrnCmp (str1, str2, strsz);
>> +}
>> +
>>  #endif /* _LIBFDT_ENV_H */
>> -- 
>> 2.25.0
>>
> 
> 
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-08-24 17:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-06  2:34 [PATCH] EmbeddedPkg/libfdt: Add strncmp macro to use AsciiStrnCmp Abner Chang
2020-08-18 18:04 ` Leif Lindholm
2020-08-24 17:28   ` [edk2-devel] " Laszlo Ersek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox