4ace85a7da
Add a top level functions to initialize ring groups, and functions to allocate and free all the rings via HWRM. A ring group is identified by an index. It consists of Rx or Tx ring id, completion ring id and a statistics context. Once a ring group is initialized, use this group index while creating the rings in the ASIC using the appropriate HWRM API added via earlier patches. Functions added: bnxt_free_cp_ring Calls the HWRM function generic ring free with arguments specific to a completion ring and sanitizes the host completion structure bnxt_free_all_hwrm_rings Frees all the HWRM allocated hardware rings bnxt_free_all_hwrm_resources Frees all the resources allocated via the HRM in the hardware bnxt_alloc_hwrm_rings Allocates all the HWRM rings needed in the current configuration This should be the last functionality needed to add start/stop device operations. Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Signed-off-by: Stephen Hurd <stephen.hurd@broadcom.com> Reviewed-by: David Christensen <david.christensen@broadcom.com>