[dpdk-dev] [PATCH 1/5] pmdinfogen: fix cross compilation for ARM BE

Bruce Richardson bruce.richardson at intel.com
Mon Dec 11 13:40:32 CET 2017


On Thu, Nov 02, 2017 at 03:38:51PM +0530, Hemant Agrawal wrote:
> cross compiling DPDK for BE mode on ARM results into errors
> 
> "PMDINFO portal/dpaa2_hw_dpio.o.pmd.c No drivers registered"
> 
> Fixes: 98b0fdb0ffc6 ("pmdinfogen: add buildtools and pmdinfogen utility")
> Cc: Neil Horman <nhorman at tuxdriver.com>
> Cc: stable at dpdk.org
> 
> Signed-off-by: Jun Yang <jun.yang at nxp.com>
> Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
> ---
>  buildtools/pmdinfogen/pmdinfogen.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Comment could be a bit more specific about what the problem is and how
changing the hard-coded "32" fixes it.

Haven't tested the cross compilation part myself, but this causes no
errors for 32-bit or 64-bit builds on my system. So, with some more
detail on the specifics of the fix in the commit message:

Acked-by: Bruce Richardson <bruce.richardson at intel.com>

> diff --git a/buildtools/pmdinfogen/pmdinfogen.c b/buildtools/pmdinfogen/pmdinfogen.c
> index e73fc76..9119e52 100644
> --- a/buildtools/pmdinfogen/pmdinfogen.c
> +++ b/buildtools/pmdinfogen/pmdinfogen.c
> @@ -181,7 +181,7 @@ static int parse_elf(struct elf_info *info, const char *filename)
>  		sechdrs[i].sh_offset    =
>  			TO_NATIVE(endian, ADDR_SIZE, sechdrs[i].sh_offset);
>  		sechdrs[i].sh_size      =
> -			TO_NATIVE(endian, 32, sechdrs[i].sh_size);
> +			TO_NATIVE(endian, ADDR_SIZE, sechdrs[i].sh_size);
>  		sechdrs[i].sh_link      =
>  			TO_NATIVE(endian, 32, sechdrs[i].sh_link);
>  		sechdrs[i].sh_info      =
> -- 
> 2.7.4
> 


More information about the dev mailing list