crypto: hisilicon - add queue management driver for HiSilicon QM module
authorZhou Wang <wangzhou1@hisilicon.com>
Fri, 2 Aug 2019 07:57:50 +0000 (15:57 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 9 Aug 2019 05:11:53 +0000 (15:11 +1000)
commit263c9959c9376ec0217d6adc61222a53469eed3c
tree95a3789aa97eac8f3cf7f60013cc1d5aee65a439
parentd13dfae3cedd60072d448b7e382c86143a29cedc
crypto: hisilicon - add queue management driver for HiSilicon QM module

QM is a general IP used by HiSilicon accelerators. It provides a general
PCIe interface for the CPU and the accelerator to share a group of queues.

A QM integrated in an accelerator provides queue management service.
Queues can be assigned to PF and VFs, and queues can be controlled by
unified mailboxes and doorbells. Specific task request are descripted by
specific description buffer, which will be controlled and pass to related
accelerator IP by QM.

This patch adds a QM driver used by the accelerator driver to access
the QM hardware.

Signed-off-by: Zhou Wang <wangzhou1@hisilicon.com>
Signed-off-by: Kenneth Lee <liguozhu@hisilicon.com>
Signed-off-by: Shiju Jose <shiju.jose@huawei.com>
Signed-off-by: Hao Fang <fanghao11@huawei.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: John Garry <john.garry@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/hisilicon/Kconfig
drivers/crypto/hisilicon/Makefile
drivers/crypto/hisilicon/qm.c [new file with mode: 0644]
drivers/crypto/hisilicon/qm.h [new file with mode: 0644]