[dpdk-dev] [PATCHv6 02/33] drivers/common/dpaa2: adding qbman driver
Ferruh Yigit
ferruh.yigit at intel.com
Mon Jan 23 18:30:44 CET 2017
On 1/23/2017 11:59 AM, Hemant Agrawal wrote:
> QBMAN, is a hardware block which interfaces with the other
> accelerating hardware blocks (For e.g., WRIOP) on NXP's DPAA2
> SoC for queue, buffer and packet scheduling.
>
> This patch introduces a userspace driver for interfacing with
> the QBMAN hw block.
>
> The qbman-portal component provides APIs to do the low level
> hardware bit twiddling for operations such as:
> -initializing Qman software portals
> -building and sending portal commands
> -portal interrupt configuration and processing
>
> This same/similar code is used in kernel and compat file is used
> to make it working in user space.
>
> Signed-off-by: Geoff Thorpe <Geoff.Thorpe at nxp.com>
> Signed-off-by: Roy Pledge <Roy.Pledge at nxp.com>
> Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
> ---
<...>
> --- a/config/common_base
> +++ b/config/common_base
> @@ -287,7 +287,6 @@ CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_TX=n
> CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_DRIVER=n
> CONFIG_RTE_LIBRTE_THUNDERX_NICVF_DEBUG_MBOX=n
>
> -#
Minor typo ..
> # Compile burst-oriented VIRTIO PMD driver
> #
> CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
<...>
> --- /dev/null
> +++ b/drivers/common/dpaa2/qbman/rte_common_dpaa2_qbman_version.map
> @@ -0,0 +1,27 @@
> +DPDK_17.02 {
> + global:
> +
> + qbman_check_command_complete;
> + qbman_eq_desc_clear;
> + qbman_eq_desc_set_fq;
> + qbman_eq_desc_set_no_orp;
> + qbman_eq_desc_set_qd;
> + qbman_eq_desc_set_response;
> + qbman_get_version;
> + qbman_pull_desc_clear;
> + qbman_pull_desc_set_fq;
> + qbman_pull_desc_set_numframes;
> + qbman_pull_desc_set_storage;
> + qbman_release_desc_clear;
> + qbman_release_desc_set_bpid;
> + qbman_result_DQ_fd;
> + qbman_result_DQ_flags;
> + qbman_result_has_new_result;
> + qbman_swp_acquire;
> + qbman_swp_init;
> + qbman_swp_pull;
> + qbman_swp_release;
> + qbman_swp_send_multiple;
Overall, dpdk library exported APIs not having DPDK prefix (rte_) is a
concern, which already pointed by Thomas.
I guess only user of this library will be other dpaa2 code, so these are
not really APIs. Not sure how to proceed.
I think I have seen "_rte" prefix used in some APIs to say that is
internal API, does it make sense to use that API here?
> +
> + local: *;
> +};
>
More information about the dev
mailing list