Re: [PATCH v13 0/4] Add uacce module for Accelerator

From: zhangfei
Date: Fri Feb 21 2020 - 20:53:24 EST




On 2020/2/22 äå9:41, Herbert Xu wrote:
On Tue, Feb 11, 2020 at 03:54:21PM +0800, Zhangfei Gao wrote:
Uacce (Unified/User-space-access-intended Accelerator Framework) targets to
provide Shared Virtual Addressing (SVA) between accelerators and processes.
So accelerator can access any data structure of the main cpu.
This differs from the data sharing between cpu and io device, which share
data content rather than address.
Because of unified address, hardware and user space of process can share
the same virtual address in the communication.

Uacce is intended to be used with Jean Philippe Brucker's SVA
patchset[1], which enables IO side page fault and PASID support.
We have keep verifying with Jean's sva patchset [2]
We also keep verifying with Eric's SMMUv3 Nested Stage patches [3]

This series and related zip & qm driver
https://github.com/Linaro/linux-kernel-warpdrive/tree/v5.6-rc1-uacce-v13

The library and user application:
https://github.com/Linaro/warpdrive/tree/wdprd-upstream-v13


Kenneth Lee (2):
uacce: Add documents for uacce
uacce: add uacce driver

Zhangfei Gao (2):
crypto: hisilicon - Remove module_param uacce_mode
crypto: hisilicon - register zip engine to uacce

Documentation/ABI/testing/sysfs-driver-uacce | 39 ++
Documentation/misc-devices/uacce.rst | 176 ++++++
drivers/crypto/hisilicon/qm.c | 239 ++++++-
drivers/crypto/hisilicon/qm.h | 11 +
drivers/crypto/hisilicon/zip/zip_main.c | 49 +-
drivers/misc/Kconfig | 1 +
drivers/misc/Makefile | 1 +
drivers/misc/uacce/Kconfig | 13 +
drivers/misc/uacce/Makefile | 2 +
drivers/misc/uacce/uacce.c | 617 +++++++++++++++++++
include/linux/uacce.h | 161 +++++
include/uapi/misc/uacce/hisi_qm.h | 23 +
include/uapi/misc/uacce/uacce.h | 38 ++
13 files changed, 1337 insertions(+), 33 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-driver-uacce
create mode 100644 Documentation/misc-devices/uacce.rst
create mode 100644 drivers/misc/uacce/Kconfig
create mode 100644 drivers/misc/uacce/Makefile
create mode 100644 drivers/misc/uacce/uacce.c
create mode 100644 include/linux/uacce.h
create mode 100644 include/uapi/misc/uacce/hisi_qm.h
create mode 100644 include/uapi/misc/uacce/uacce.h
All applied. Thanks.
That's Great,
Thanks Herbert for the great help.