net/bnxt: add ULP flow counter manager
authorSomnath Kotur <somnath.kotur@broadcom.com>
Thu, 2 Jul 2020 23:28:36 +0000 (16:28 -0700)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 7 Jul 2020 21:38:27 +0000 (23:38 +0200)
commit9cf9c8385df7ada0ea77950b9a629d1d017b6512
treee56c3edbba3f720ea478eeae0a6698bcccfae9df
parent1e46b39626201b378f2f2031a5c93ecef6bbb845
net/bnxt: add ULP flow counter manager

The Flow counter manager allocates memory to hold the software view
of the counters where the on-chip counter data will be accumulated
along with another memory block that will be shadowing the on-chip
counter data i.e where the raw counter data will be DMAed into from
the chip.
It also keeps track of the first HW counter ID as that will be needed
to retrieve the counter data in bulk using a TF API. It issues this cmd
in an rte_alarm thread that keeps running every second.

Signed-off-by: Somnath Kotur <somnath.kotur@broadcom.com>
Reviewed-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
drivers/net/bnxt/meson.build
drivers/net/bnxt/tf_ulp/Makefile
drivers/net/bnxt/tf_ulp/bnxt_ulp.c
drivers/net/bnxt/tf_ulp/bnxt_ulp.h
drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c [new file with mode: 0644]
drivers/net/bnxt/tf_ulp/ulp_fc_mgr.h [new file with mode: 0644]
drivers/net/bnxt/tf_ulp/ulp_flow_db.c