linux_dsm_epyc7002/drivers/net/ethernet/broadcom/bnxt
Sinan Kaya fd141fa47c bnxt_en: Eliminate duplicate barriers on weakly-ordered archs
Code includes wmb() followed by writel(). writel() already has a barrier on
some architectures like arm64.

This ends up CPU observing two barriers back to back before executing the
register write.

Create a new wrapper function with relaxed write operator. Use the new
wrapper when a write is following a wmb().

Since code already has an explicit barrier call, changing writel() to
writel_relaxed().

Also add mmiowb() so that write code doesn't move outside of scope.

Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
Acked-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-03-26 12:47:56 -04:00
..
bnxt_dcb.c ethernet/broadcom: Use zeroing memory allocator than allocator/memset 2018-01-02 21:56:40 -05:00
bnxt_dcb.h bnxt_en: Set ETS min_bw parameter for older firmware. 2017-07-24 17:29:58 -07:00
bnxt_devlink.c bnxt_en: add support for Flower based vxlan encap/decap offload 2017-10-28 00:02:45 +09:00
bnxt_devlink.h bnxt: Move generic devlink code to new file 2017-10-21 12:28:39 +01:00
bnxt_dim.c bnxt_en: add support for software dynamic interrupt moderation 2018-01-10 15:27:45 -05:00
bnxt_ethtool.c bnxt_en: add support for software dynamic interrupt moderation 2018-01-10 15:27:45 -05:00
bnxt_ethtool.h bnxt_en: Add ETH_RESET_AP support 2017-12-01 15:29:40 -05:00
bnxt_fw_hdr.h bnxt_en: Added support for Secure Firmware Update 2016-09-19 21:32:24 -04:00
bnxt_hsi.h bnxt_en: Update firmware interface to 1.9.0. 2018-01-17 14:48:25 -05:00
bnxt_nvm_defs.h bnxt_en: Add support for updating flash more securely 2016-07-02 14:52:35 -04:00
bnxt_sriov.c bnxt_en: Forward VF MAC address to the PF. 2018-01-17 14:48:27 -05:00
bnxt_sriov.h bnxt_en: Update firmware interface spec to 1.7.6.2. 2017-04-05 06:24:26 -07:00
bnxt_tc.c bnxt_en: Return standard Linux error codes for hwrm flow cmds. 2018-03-12 10:57:59 -04:00
bnxt_tc.h bnxt_en: alloc tc_info{} struct only when tc flower is enabled 2017-10-28 00:02:45 +09:00
bnxt_ulp.c bnxt_en: Free MSIX vectors when unregistering the device from bnxt_re. 2017-08-23 22:42:42 -07:00
bnxt_ulp.h bnxt_en: Add a callback to inform RDMA driver during PCI shutdown. 2017-05-30 18:14:07 -04:00
bnxt_vfr.c bnxt: use tc_cls_can_offload_and_chain0() 2018-01-25 21:23:08 -05:00
bnxt_vfr.h bnxt_en: export a common switchdev PARENT_ID for all reps of an adapter 2018-01-17 14:48:27 -05:00
bnxt_xdp.c bnxt_en: setup xdp_rxq_info 2018-01-05 15:21:21 -08:00
bnxt_xdp.h net: bpf: rename ndo_xdp to ndo_bpf 2017-11-05 22:26:18 +09:00
bnxt.c bnxt_en: Eliminate duplicate barriers on weakly-ordered archs 2018-03-26 12:47:56 -04:00
bnxt.h bnxt_en: Eliminate duplicate barriers on weakly-ordered archs 2018-03-26 12:47:56 -04:00
Makefile bnxt_en: add support for software dynamic interrupt moderation 2018-01-10 15:27:45 -05:00