Re: [PATCH REPOST] Extend PCIE_BUS_PEER2PEER to set MRSS=128 to fix CNS3xxx BM DMA.

From: Krzysztof HaÅasa
Date: Wed May 04 2016 - 09:09:35 EST


Bjorn Helgaas <helgaas@xxxxxxxxxx> writes:

> It looks like 498a92d42596 merely fixed a warning, at the expense of
> breaking DMA on Cavium. Reverting it would bring the warning back, but
> that's better than broken DMA.

Perhaps we should change PCIE_BUS_PEER2PEER to also write MRRS anyway.

I realize the CNS3xxx patch is some sort of clever workaround, and that
PCIE_BUS_PEER2PEER (which normally comes from kernel command line
parameter "pcie_bus_peer2peer") was not exactly intended for this. But
if one asks for "peer2peer" (which means limiting transfers to 128
bytes), how could it all work if the bus mastering read requests are
not equally limited?


BTW s/MRSS/MRRS/g
--
Krzysztof Halasa

Industrial Research Institute for Automation and Measurements PIAP
Al. Jerozolimskie 202, 02-486 Warsaw, Poland