b7778e8a1c
1) Move the function reset to bnxt_dev_init. On the same lines, setup, enable and request interrupt to init path. Memory allocation is also being done in the init path. 2) After a function reset, configure the VFs. Distribute resources evenly between all functions (PF and VF) for now. In the future, this should be controllable. 3) The bnxt_vf_info and bnxt_pf_info had lot of duplication. Move the common items to struct bnxt. And only unique items specific to PF remain in the struct bnxt_pf_info. 4) Program the firmware to allow certain commands sent by a VF. Disallowing these will prevent clean VF driver cleanup. 5) Since PF/VF need to allocate resources from a pool in the hardware, use func_qcaps and func_qcfg to appropriately query the capabilities and available resources. 6) If a PF is being initialized and no VFs are allocated, explicitly call func_cfg to allocate the resources. 7) Once resources are requested from the firmware, update local copy of resource count in struct bnxt only after sending the func_qcfg to make sure the allocation request in the firmware went through. The changes in this patch will be used by the subsequent patches to allow proper initialization of PF/VF instance. Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com> |
||
---|---|---|
.. | ||
bnxt_cpr.c | ||
bnxt_cpr.h | ||
bnxt_ethdev.c | ||
bnxt_filter.c | ||
bnxt_filter.h | ||
bnxt_hwrm.c | ||
bnxt_hwrm.h | ||
bnxt_irq.c | ||
bnxt_irq.h | ||
bnxt_ring.c | ||
bnxt_ring.h | ||
bnxt_rxq.c | ||
bnxt_rxq.h | ||
bnxt_rxr.c | ||
bnxt_rxr.h | ||
bnxt_stats.c | ||
bnxt_stats.h | ||
bnxt_txq.c | ||
bnxt_txq.h | ||
bnxt_txr.c | ||
bnxt_txr.h | ||
bnxt_vnic.c | ||
bnxt_vnic.h | ||
bnxt.h | ||
hsi_struct_def_dpdk.h | ||
Makefile | ||
rte_pmd_bnxt_version.map |