[v2,1/1] eal: add internal function to get base address

Message ID 20220117133023.12768-1-syalavarthi@marvell.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series [v2,1/1] eal: add internal function to get base address |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/github-robot: build success github build: passed
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/iol-abi-testing success Testing PASS

Commit Message

Srikanth Yalavarthi Jan. 17, 2022, 1:30 p.m. UTC
  Added an internal helper to get OS-specific EAL mappping base addreess

This helper can be used by the drivers to map host address range with
offload devices and would be need for device specific operations like
firmware load

Signed-off-by: Srikanth Yalavarthi <syalavarthi@marvell.com>
---

v2:
* Dropped Change-Id

 lib/eal/common/eal_common_config.c | 7 +++++++
 lib/eal/include/rte_eal.h          | 9 +++++++++
 lib/eal/version.map                | 1 +
 3 files changed, 17 insertions(+)
  

Comments

Ray Kinsella Jan. 18, 2022, 12:35 p.m. UTC | #1
Srikanth Yalavarthi <syalavarthi@marvell.com> writes:

> Added an internal helper to get OS-specific EAL mappping base addreess

mapping
address

>
> This helper can be used by the drivers to map host address range with
> offload devices and would be need for device specific operations like
> firmware load
>
> Signed-off-by: Srikanth Yalavarthi <syalavarthi@marvell.com>
> ---
>
> v2:
> * Dropped Change-Id
>
>  lib/eal/common/eal_common_config.c | 7 +++++++
>  lib/eal/include/rte_eal.h          | 9 +++++++++
>  lib/eal/version.map                | 1 +
>  3 files changed, 17 insertions(+)
>
> diff --git a/lib/eal/common/eal_common_config.c b/lib/eal/common/eal_common_config.c
> index 1c4c4dd585..cec4991d96 100644
> --- a/lib/eal/common/eal_common_config.c
> +++ b/lib/eal/common/eal_common_config.c
> @@ -87,3 +87,10 @@ rte_eal_has_pci(void)
>  {
>  	return !internal_config.no_pci;
>  }
> +
> +/* Get the EAL base address */
> +uint64_t
> +rte_eal_get_baseaddr(void)
> +{
> +	return 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;

Acked-by: Ray Kinsella <mdr@ashroe.eu>
  

Patch

diff --git a/lib/eal/common/eal_common_config.c b/lib/eal/common/eal_common_config.c
index 1c4c4dd585..cec4991d96 100644
--- a/lib/eal/common/eal_common_config.c
+++ b/lib/eal/common/eal_common_config.c
@@ -87,3 +87,10 @@  rte_eal_has_pci(void)
 {
 	return !internal_config.no_pci;
 }
+
+/* Get the EAL base address */
+uint64_t
+rte_eal_get_baseaddr(void)
+{
+	return 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;