| .. | .. |
|---|
| 1 | | -/* SPDX-License-Identifier: GPL-2.0 */ |
|---|
| 1 | +/* SPDX-License-Identifier: MIT */ |
|---|
| 2 | 2 | #ifndef __NVKM_SEC2_H__ |
|---|
| 3 | 3 | #define __NVKM_SEC2_H__ |
|---|
| 4 | +#define nvkm_sec2(p) container_of((p), struct nvkm_sec2, engine) |
|---|
| 4 | 5 | #include <core/engine.h> |
|---|
| 6 | +#include <core/falcon.h> |
|---|
| 5 | 7 | |
|---|
| 6 | 8 | struct nvkm_sec2 { |
|---|
| 9 | + const struct nvkm_sec2_func *func; |
|---|
| 7 | 10 | struct nvkm_engine engine; |
|---|
| 8 | | - struct nvkm_falcon *falcon; |
|---|
| 9 | | - struct nvkm_msgqueue *queue; |
|---|
| 11 | + struct nvkm_falcon falcon; |
|---|
| 12 | + |
|---|
| 13 | + struct nvkm_falcon_qmgr *qmgr; |
|---|
| 14 | + struct nvkm_falcon_cmdq *cmdq; |
|---|
| 15 | + struct nvkm_falcon_msgq *msgq; |
|---|
| 16 | + |
|---|
| 10 | 17 | struct work_struct work; |
|---|
| 18 | + bool initmsg_received; |
|---|
| 11 | 19 | }; |
|---|
| 12 | 20 | |
|---|
| 13 | 21 | int gp102_sec2_new(struct nvkm_device *, int, struct nvkm_sec2 **); |
|---|
| 22 | +int gp108_sec2_new(struct nvkm_device *, int, struct nvkm_sec2 **); |
|---|
| 23 | +int tu102_sec2_new(struct nvkm_device *, int, struct nvkm_sec2 **); |
|---|
| 14 | 24 | #endif |
|---|