Lines Matching +full:container +full:- +full:rules
3 * Copyright 2009-2013 Broadcom Corporation
10 * at http://www.gnu.org/licenses/old-licenses/gpl-2.0.html (the "GPL").
49 u32 cap; /* SR-IOV Capabilities */
50 u16 ctrl; /* SR-IOV Control */
81 /* VLAN-MACs object */
86 /* Queue Slow-path State object */
96 /* struct bnx2x_vf_queue_construct_params - prepare queue construction
97 * parameters: q-init, q-setup and SB index
157 * - xxq_count = 0 as the queues memory is not allocated yet.
159 * - sb_count = The number of status blocks configured for this VF in
162 * - xx_rules_count = The number of rules statically and equally
166 #define vf_rxq_count(vf) ((vf)->alloc_resc.num_rxqs)
167 #define vf_txq_count(vf) ((vf)->alloc_resc.num_txqs)
168 #define vf_sb_count(vf) ((vf)->alloc_resc.num_sbs)
169 #define vf_mac_rules_cnt(vf) ((vf)->alloc_resc.num_mac_filters)
170 #define vf_vlan_rules_cnt(vf) ((vf)->alloc_resc.num_vlan_filters)
171 #define vf_mc_rules_cnt(vf) ((vf)->alloc_resc.num_mc_filters)
178 #define bnx2x_vfq_is_leading(vfq) ((vfq)->index == LEADING_IDX)
179 #define bnx2x_vfq(vf, nr, var) ((vf)->vfqs[(nr)].var)
180 #define bnx2x_leading_vfq(vf, var) ((vf)->vfqs[LEADING_IDX].var)
185 u32 error; /* 0 means all's-well */
195 /* set-mac ramrod state 1-pending, 0-done */
209 /* slow-path operations */
219 #define BNX2X_NR_VIRTFN(bp) ((bp)->vfdb->sriov.nr_virtfn)
241 #define GET_NUM_VFS_PER_PF(bp) ((bp)->vfdb ? (bp)->vfdb->sriov.total \
253 /* VF mail box (aka vf-pf channel) */
255 /* a container for the bi-directional vf<-->pf messages.
318 #define BP_VFDB(bp) ((bp)->vfdb)
321 #define BP_VF(bp, idx) ((BP_VFDB(bp) && (bp)->vfdb->vfs) ? \
322 &((bp)->vfdb->vfs[idx]) : NULL)
323 #define bnx2x_vf(bp, idx, var) ((bp)->vfdb->vfs[idx].var)
325 /* queue array - for all vfs */
330 #define BP_VF_CXT_PAGE(bp, i) (&(bp)->vfdb->context[i])
332 /* SR-IOV information */
335 #define BP_VF_MBX_DMA(bp) (&((bp)->vfdb->mbx_dma))
337 #define BP_VF_MBX(bp, vfid) (&((bp)->vfdb->mbxs[vfid]))
340 #define BP_VF_BULLETIN_DMA(bp) (&((bp)->vfdb->bulletin_dma))
342 (((struct pf_vf_bulletin_content *)(BP_VF_BULLETIN_DMA(bp)->addr)) \
346 #define bnx2x_vf_sp(bp, vf, field) ((bp)->vfdb->sp_dma.addr + \
347 (vf)->index * sizeof(struct bnx2x_vf_sp) + \
349 #define bnx2x_vf_sp_map(bp, vf, field) ((bp)->vfdb->sp_dma.mapping + \
350 (vf)->index * sizeof(struct bnx2x_vf_sp) + \
371 return &(vf->vfqs[index]); in vfq_get()
377 return vf->igu_base_id + sb_idx; in vf_igu_sb()
387 return vf->igu_base_id + q->index; in vfq_cl_id()
392 if (vf->cfg_flags & VF_CFG_STATS_COALESCE) in vfq_stat_id()
393 return vf->leading_rss; in vfq_stat_id()
477 /* VF release ~ VF close + VF release-resources
521 strscpy(buf, bp->acquire_resp.pfdev_info.fw_ver, buf_len); in bnx2x_vf_fill_fw_str()
528 bp->acquire_resp.resc.hw_qid[fp->index] * in bnx2x_vf_ustorm_prods_offset()
541 return bp->vfdb->sriov.nr_virtfn * BNX2X_CIDS_PER_VF; in bnx2x_vf_headroom()