bnxt_en: Optimize doorbell write operations for newer chips.
authorMichael Chan <michael.chan@broadcom.com>
Mon, 29 May 2017 23:06:08 +0000 (19:06 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 30 May 2017 22:14:07 +0000 (18:14 -0400)
commit434c975a8fe2f70b70ac09ea5ddd008e0528adfa
treeb367d8a53e1f40dd4c7b34aa1c381eea17c9337a
parent3284f9e1ab505b41fa604c81e4b3271c6b88cdcb
bnxt_en: Optimize doorbell write operations for newer chips.

Older chips require the doorbells to be written twice, but newer chips
do not.  Add a new common function bnxt_db_write() to write all
doorbells appropriately depending on the chip.  Eliminating the extra
doorbell on newer chips has a significant performance improvement
on pktgen.

Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt.h
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c