sfc: Use TX PIO for sufficiently small packets
authorJon Cooper <jcooper@solarflare.com>
Mon, 2 Sep 2013 17:24:29 +0000 (18:24 +0100)
committerBen Hutchings <bhutchings@solarflare.com>
Fri, 20 Sep 2013 18:31:52 +0000 (19:31 +0100)
commitee45fd92c739db5b7950163d91dfe5f016af6d24
tree43955c4c76179b0e80449a4a2c3ae0cb77942006
parent0fe5565b64667677a405cf14df49a7af8de4bff4
sfc: Use TX PIO for sufficiently small packets

Sufficiently small linear packets can be copied into the PIO buffer
with a single call to memcpy_toio().  Non-linear packets require an
intermediate cache-line-sized buffer.

[bwh: I wrote the first version of this, but Jon did the hard work to
 handle non-linear packets.]
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
drivers/net/ethernet/sfc/ef10_regs.h
drivers/net/ethernet/sfc/ethtool.c
drivers/net/ethernet/sfc/net_driver.h
drivers/net/ethernet/sfc/tx.c