Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / drivers / crypto / hisilicon / qm_common.h
blob0760bf55f13e8d4fcaf49e1d0c6ca682e2a6f600
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (c) 2022 HiSilicon Limited. */
3 #ifndef QM_COMMON_H
4 #define QM_COMMON_H
6 #define QM_DBG_READ_LEN 256
8 struct qm_cqe {
9 __le32 rsvd0;
10 __le16 cmd_id;
11 __le16 rsvd1;
12 __le16 sq_head;
13 __le16 sq_num;
14 __le16 rsvd2;
15 __le16 w7;
18 struct qm_eqe {
19 __le32 dw0;
22 struct qm_aeqe {
23 __le32 dw0;
26 struct qm_sqc {
27 __le16 head;
28 __le16 tail;
29 __le32 base_l;
30 __le32 base_h;
31 __le32 dw3;
32 __le16 w8;
33 __le16 rsvd0;
34 __le16 pasid;
35 __le16 w11;
36 __le16 cq_num;
37 __le16 w13;
38 __le32 rsvd1;
41 struct qm_cqc {
42 __le16 head;
43 __le16 tail;
44 __le32 base_l;
45 __le32 base_h;
46 __le32 dw3;
47 __le16 w8;
48 __le16 rsvd0;
49 __le16 pasid;
50 __le16 w11;
51 __le32 dw6;
52 __le32 rsvd1;
55 struct qm_eqc {
56 __le16 head;
57 __le16 tail;
58 __le32 base_l;
59 __le32 base_h;
60 __le32 dw3;
61 __le32 rsvd[2];
62 __le32 dw6;
65 struct qm_aeqc {
66 __le16 head;
67 __le16 tail;
68 __le32 base_l;
69 __le32 base_h;
70 __le32 dw3;
71 __le32 rsvd[2];
72 __le32 dw6;
75 int qm_set_and_get_xqc(struct hisi_qm *qm, u8 cmd, void *xqc, u32 qp_id, bool op);
76 void hisi_qm_show_last_dfx_regs(struct hisi_qm *qm);
77 void hisi_qm_set_algqos_init(struct hisi_qm *qm);
79 #endif