Dmitry, Anatoly,
any new comment on this v5?

18/01/2022 14:33, Srikanth Yalavarthi:
> Added an internal helper to get OS-specific EAL mapping base address
> 
> This helper can be used by the drivers to program offload / accelerator
> devices, where the base address can be used as a reference address by
> the accelerator to access the host memory
> 
> An address can also be represented as an offset relative to the base
> address using smaller data types
> 
> Signed-off-by: Srikanth Yalavarthi <syalavar...@marvell.com>
> ---
>  lib/eal/common/eal_common_config.c | 9 +++++++++
>  lib/eal/include/rte_eal.h          | 9 +++++++++
>  lib/eal/version.map                | 1 +
>  3 files changed, 19 insertions(+)
> 
> diff --git a/lib/eal/common/eal_common_config.c 
> b/lib/eal/common/eal_common_config.c
> index 1c4c4dd585..19598cb28d 100644
> --- a/lib/eal/common/eal_common_config.c
> +++ b/lib/eal/common/eal_common_config.c
> @@ -87,3 +87,12 @@ rte_eal_has_pci(void)
>  {
>       return !internal_config.no_pci;
>  }
> +
> +/* Get the EAL base address */
> +uint64_t
> +rte_eal_get_baseaddr(void)
> +{
> +     return (internal_config.base_virtaddr != 0) ?
> +                    (uint64_t) internal_config.base_virtaddr :
> +                    eal_get_baseaddr();
> +}
> diff --git a/lib/eal/include/rte_eal.h b/lib/eal/include/rte_eal.h
> index 5a34a6acd9..29298c3c83 100644
> --- a/lib/eal/include/rte_eal.h
> +++ b/lib/eal/include/rte_eal.h
> @@ -475,6 +475,15 @@ rte_eal_mbuf_user_pool_ops(void);
>  const char *
>  rte_eal_get_runtime_dir(void);
>  
> +/**
> + * Get the OS-specific EAL base address.
> + *
> + * @return
> + *    The base address.
> + */
> +__rte_internal
> +uint64_t rte_eal_get_baseaddr(void);
> +
>  #ifdef __cplusplus
>  }
>  #endif
> diff --git a/lib/eal/version.map b/lib/eal/version.map
> index ab28c22791..b53eeb30d7 100644
> --- a/lib/eal/version.map
> +++ b/lib/eal/version.map
> @@ -425,6 +425,7 @@ EXPERIMENTAL {
>  INTERNAL {
>       global:
>  
> +     rte_eal_get_baseaddr;
>       rte_firmware_read;
>       rte_intr_allow_others;
>       rte_intr_cap_multiple;
> 





Reply via email to