X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fdpaa2%2Fmc%2Ffsl_dpni.h;h=598911ddd101990d4f00d25d4bae9b746e6d7630;hb=eadcfd95ffde80b679b757d060f889f683c96266;hp=97fde316ecbc547a9f66a531798232f7dcde2795;hpb=a712067d846959ea21f65179d7cd6f51978e4a32;p=dpdk.git diff --git a/drivers/net/dpaa2/mc/fsl_dpni.h b/drivers/net/dpaa2/mc/fsl_dpni.h index 97fde316ec..598911ddd1 100644 --- a/drivers/net/dpaa2/mc/fsl_dpni.h +++ b/drivers/net/dpaa2/mc/fsl_dpni.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0) * * Copyright 2013-2016 Freescale Semiconductor Inc. - * Copyright 2016-2017 NXP + * Copyright 2016-2019 NXP * */ #ifndef __FSL_DPNI_H @@ -199,6 +199,8 @@ int dpni_destroy(struct fsl_mc_io *mc_io, /** * struct dpni_pools_cfg - Structure representing buffer pools configuration * @num_dpbp: Number of DPBPs + * @pool_options: Buffer assignment options + * This field is a combination of DPNI_POOL_ASSOC_flags * @pools: Array of buffer pools parameters; The number of valid entries * must match 'num_dpbp' value * @pools.dpbp_id: DPBP object ID @@ -207,8 +209,13 @@ int dpni_destroy(struct fsl_mc_io *mc_io, * @pools.buffer_size: Buffer size * @pools.backup_pool: Backup pool */ + +#define DPNI_POOL_ASSOC_QPRI 0 +#define DPNI_POOL_ASSOC_QDBIN 1 + struct dpni_pools_cfg { uint8_t num_dpbp; + uint8_t pool_options; struct { int dpbp_id; uint8_t priority_mask; @@ -581,6 +588,7 @@ int dpni_get_tx_data_offset(struct fsl_mc_io *mc_io, * @page_5.policer_cnt_green: number of green colored frames * @page_5.policer_cnt_re_red: number of recolored red frames * @page_5.policer_cnt_re_yellow: number of recolored yellow frames + * @page_6.tx_pending_frames_cnt: total number of frames pending in Tx queues * @raw: raw statistics structure, used to index counters */ union dpni_statistics { @@ -624,6 +632,9 @@ union dpni_statistics { uint64_t policer_cnt_re_red; uint64_t policer_cnt_re_yellow; } page_5; + struct { + uint64_t tx_pending_frames_cnt; + } page_6; struct { uint64_t counter[DPNI_STATISTICS_CNT]; } raw; @@ -773,7 +784,10 @@ int dpni_get_primary_mac_addr(struct fsl_mc_io *mc_io, int dpni_add_mac_addr(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t token, - const uint8_t mac_addr[6]); + const uint8_t mac_addr[6], + uint8_t flags, + uint8_t tc_id, + uint8_t flow_id); int dpni_remove_mac_addr(struct fsl_mc_io *mc_io, uint32_t cmd_flags, @@ -796,10 +810,18 @@ int dpni_enable_vlan_filter(struct fsl_mc_io *mc_io, uint16_t token, int en); +/** + * Set vlan filter queue action + */ +#define DPNI_VLAN_SET_QUEUE_ACTION 1 + int dpni_add_vlan_id(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t token, - uint16_t vlan_id); + uint16_t vlan_id, + uint8_t flags, + uint8_t tc_id, + uint8_t flow_id); int dpni_remove_vlan_id(struct fsl_mc_io *mc_io, uint32_t cmd_flags, @@ -1181,7 +1203,9 @@ int dpni_add_qos_entry(struct fsl_mc_io *mc_io, uint16_t token, const struct dpni_rule_cfg *cfg, uint8_t tc_id, - uint16_t index); + uint16_t index, + uint8_t flags, + uint8_t flow_id); int dpni_remove_qos_entry(struct fsl_mc_io *mc_io, uint32_t cmd_flags,