X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fdpaa2%2Frte_pmd_dpaa2.h;h=8ea42ee1301a360cadec91e20ec72016151449f3;hb=c75d560db32b04b29472dc9d91e63ab39e8945b8;hp=7052d9da940687ecbad0f09d4870e896e562b2e0;hpb=5f822962498e7bff162f3ed87e15652a5b4790b9;p=dpdk.git diff --git a/drivers/net/dpaa2/rte_pmd_dpaa2.h b/drivers/net/dpaa2/rte_pmd_dpaa2.h index 7052d9da94..8ea42ee130 100644 --- a/drivers/net/dpaa2/rte_pmd_dpaa2.h +++ b/drivers/net/dpaa2/rte_pmd_dpaa2.h @@ -1,5 +1,5 @@ /* SPDX-License-Identifier: BSD-3-Clause - * Copyright 2018 NXP + * Copyright 2018-2021 NXP */ #ifndef _RTE_PMD_DPAA2_H @@ -9,37 +9,11 @@ * @file rte_pmd_dpaa2.h * * NXP dpaa2 PMD specific functions. - * - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * */ #include -enum pmd_dpaa2_ts { - PMD_DPAA2_DISABLE_TS, - PMD_DPAA2_ENABLE_TS -}; - -/** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * - * Enable/Disable timestamping update in mbuf for LX2160 kind of devices. - * For LS2088/LS1088 devices, timestamping will be updated in mbuf without - * calling this API. - * - * @param pmd_dpaa2_ts - * Enum to enable/disable timestamp update in mbuf for LX2160 devices. - */ -__rte_experimental -void rte_pmd_dpaa2_set_timestamp(enum pmd_dpaa2_ts); - /** - * @warning - * @b EXPERIMENTAL: this API may change, or be removed, without prior notice - * * Create a flow rule to demultiplex ethernet traffic to separate network * interfaces. * @@ -53,7 +27,6 @@ void rte_pmd_dpaa2_set_timestamp(enum pmd_dpaa2_ts); * @return * A valid handle in case of success, NULL otherwise. */ -__rte_experimental struct rte_flow * rte_pmd_dpaa2_mux_flow_create(uint32_t dpdmux_id, struct rte_flow_item *pattern[], @@ -63,6 +36,19 @@ rte_pmd_dpaa2_mux_flow_create(uint32_t dpdmux_id, * @warning * @b EXPERIMENTAL: this API may change, or be removed, without prior notice * + * demultiplex interface max rx frame length configure + * + * @param dpdmux_id + * ID of the DPDMUX MC object. + * @param max_rx_frame_len + * maximum receive frame length (will be checked to be minimux of all dpnis) + * + */ +__rte_experimental +int +rte_pmd_dpaa2_mux_rx_frame_len(uint32_t dpdmux_id, uint16_t max_rx_frame_len); + +/** * Create a custom hash key on basis of offset of start of packet and size. * for e.g. if we need GRE packets (non-vlan and without any extra headers) * to be hashed on basis of inner IP header, we will provide offset as: @@ -81,10 +67,38 @@ rte_pmd_dpaa2_mux_flow_create(uint32_t dpdmux_id, * - 0 if successful. * - Negative in case of failure. */ -__rte_experimental int rte_pmd_dpaa2_set_custom_hash(uint16_t port_id, uint16_t offset, uint8_t size); +/** + * @warning + * @b EXPERIMENTAL: this API may change, or be removed, without prior notice + * + * Do thread specific initialization + */ +__rte_experimental +void +rte_pmd_dpaa2_thread_init(void); + +/** + * @warning + * @b EXPERIMENTAL: this API may change, or be removed, without prior notice + * + * Generate the DPAA2 WRIOP based hash value + * + * @param key + * Array of key data + * @param size + * Size of the hash input key in bytes + * + * @return + * - 0 if successful. + * - Negative in case of failure. + */ + +__rte_experimental +uint32_t +rte_pmd_dpaa2_get_tlu_hash(uint8_t *key, int size); #endif /* _RTE_PMD_DPAA2_H */