[PATCH 0/5] Switchtec MRPC DMA mode support

From: Wesley Sheng
Date: Sun Dec 09 2018 - 21:45:03 EST

Hi, Everyone,

This patch series adds support for the Switchtec MRPC DMA mode.

Switchtec switches supports 2 MRPC interaction modes: MRPC normal mode and
MRPC DMA mode, a new feature in the latest firmware versions. MRPC normal
mode requires the host to read the MRPC command status and output data.
In MRPC DMA mode the command status and output data are pushed directly to
host memory and issues an interrupt upon completion. The advantage of MRPC
DMA mode is avoiding potential high latency response from the Memory Read

Additionally, we've made the following changes:

* Improve the efficiency of filling MRPC Input buffer by enabling write
combining on MRPC region of BAR
* Software workaround for delay responded Memory READ TLPs that access
the BAR
* And several bug fixes



Changed since v1:
- It's a resend of v1


Boris Glimcher (1):
switchtec: Set DMA coherent mask in Switchtec driver

Joey Zhang (1):
switchtec: A temporary variable should be used for the flags of

Kelvin Cao (2):
switchtec: Remove immediate status check after submit a MRPC command
switchtec: Improve MRPC efficiency by leveraging write combining

Wesley Sheng (1):
switchtec: MRPC DMA mode implementation

drivers/pci/switch/switchtec.c | 154 ++++++++++++++++++++++++++++++++++++-----
include/linux/switchtec.h | 16 +++++
2 files changed, 153 insertions(+), 17 deletions(-)