On Fri, Feb 21, 2020 at 1:11 AM Scott BrandenWe don't want to allocate to intermediate memory and do another memcpy just to write to pcie.
<scott.branden@xxxxxxxxxxxx> wrote:
On 2019-10-11 6:31 a.m., Luis Chamberlain wrote:It doesn't really matter that much what you expect your customers to
On Tue, Aug 27, 2019 at 12:40:02PM +0200, Takashi Iwai wrote:Yes, this is exclusive to x86.
On Mon, 26 Aug 2019 19:24:22 +0200,Poke Scott.
Scott Branden wrote:
I will admit I am not familiar with every subtlety of PCIBut it's an individual board on PCIe, and should work no matter which
accesses. Any comments to the Valkyrie driver in this patch series are
appreciated.
But not all drivers need to work on all architectures. I can add a
depends on x86 64bit architectures to the driver to limit it to such.
architecture is? Or is this really exclusive to x86?
In particular, 64-bit x86 server class machines with PCIe gen3 support.
There is no reason for these PCIe boards to run in other lower end
machines or architectures.
do with your product, or what works a particular machine today, drivers
should generally be written in a portable manner anyway and use
the documented APIs. memcpy() into an __iomem pointer is not
portable and while it probably works on any x86 machine today, please
just don't do it. If you use 'sparse' to check your code, that would normally
result in an address space warning, unless you add __force and a
long comment explaining why you cannot just use memcpy_to_io()
instead. At that point, you are already better off usingn memcpy_to_io() ;-)
Arnd