[RFC PATCH 0/3] kernel: add support for 256-bit IO access

From: Rahul Lakkireddy
Date: Mon Mar 19 2018 - 10:23:11 EST


This series of patches add support for 256-bit IO read and write.
The APIs are readqq and writeqq (quad quadword - 4 x 64), that read
and write 256-bits at a time from IO, respectively.

Patch 1 adds u256 type and adds necessary non-atomic accessors. Also
adds byteorder conversion APIs.

Patch 2 adds 256-bit read and write to x86 via VMOVDQU AVX CPU
instructions.

Patch 3 updates cxgb4 driver to use the readqq API to speed up
reading on-chip memory 256-bits at a time.

Feedback and suggestions will be much appreciated.

Thanks,
Rahul

Rahul Lakkireddy (3):
include/linux: add 256-bit IO accessors
x86/io: implement 256-bit IO read and write
cxgb4: read on-chip memory 256-bits at a time

arch/x86/include/asm/io.h | 57 ++++++++++++++++++++++++-
drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c | 16 +++----
drivers/net/ethernet/chelsio/cxgb4/cxgb4.h | 6 +++
include/linux/byteorder/generic.h | 48 +++++++++++++++++++++
include/linux/io-64-nonatomic-hi-lo.h | 59 ++++++++++++++++++++++++++
include/linux/io-64-nonatomic-lo-hi.h | 59 ++++++++++++++++++++++++++
include/linux/types.h | 7 +++
7 files changed, 243 insertions(+), 9 deletions(-)

--
2.14.1