brintos

brintos / linux-shallow public Read only

0
0
Text · 2.5 KiB · b3331d6 Raw
106 lines · c
1#ifndef __NVFW_SEC2_H__2#define __NVFW_SEC2_H__3 4struct nv_sec2_args {5	u32 freq_hz;6	u32 falc_trace_size;7	u32 falc_trace_dma_base;8	u32 falc_trace_dma_idx;9	bool secure_mode;10};11 12#define NV_SEC2_UNIT_INIT                                                  0x0113#define NV_SEC2_UNIT_UNLOAD                                                0x0614#define NV_SEC2_UNIT_ACR                                                   0x0815 16struct nv_sec2_init_msg {17	struct nvfw_falcon_msg hdr;18#define NV_SEC2_INIT_MSG_INIT                                              0x0019	u8 msg_type;20 21	u8 num_queues;22	u16 os_debug_entry_point;23 24	struct {25		u32 offset;26		u16 size;27		u8 index;28#define NV_SEC2_INIT_MSG_QUEUE_ID_CMDQ                                     0x0029#define NV_SEC2_INIT_MSG_QUEUE_ID_MSGQ                                     0x0130		u8 id;31	} queue_info[2];32 33	u32 sw_managed_area_offset;34	u16 sw_managed_area_size;35};36 37struct nv_sec2_init_msg_v1 {38	struct nvfw_falcon_msg hdr;39#define NV_SEC2_INIT_MSG_INIT                                              0x0040	u8 msg_type;41 42	u8 num_queues;43	u16 os_debug_entry_point;44 45	struct {46		u32 offset;47		u16 size;48		u8 index;49#define NV_SEC2_INIT_MSG_QUEUE_ID_CMDQ                                     0x0050#define NV_SEC2_INIT_MSG_QUEUE_ID_MSGQ                                     0x0151		u8 id;52	} queue_info[2];53 54	u32 sw_managed_area_offset;55	u16 sw_managed_area_size;56 57	u32 unkn[8];58};59 60struct nv_sec2_acr_cmd {61	struct nvfw_falcon_cmd hdr;62#define NV_SEC2_ACR_CMD_BOOTSTRAP_FALCON                                   0x0063	u8 cmd_type;64};65 66struct nv_sec2_acr_msg {67	struct nvfw_falcon_cmd hdr;68	u8 msg_type;69};70 71struct nv_sec2_acr_bootstrap_falcon_cmd {72	struct nv_sec2_acr_cmd cmd;73#define NV_SEC2_ACR_BOOTSTRAP_FALCON_FLAGS_RESET_YES                 0x0000000074#define NV_SEC2_ACR_BOOTSTRAP_FALCON_FLAGS_RESET_NO                  0x0000000175	u32 flags;76	u32 falcon_id;77};78 79struct nv_sec2_acr_bootstrap_falcon_msg {80	struct nv_sec2_acr_msg msg;81	u32 error_code;82	u32 falcon_id;83};84 85#define NV_SEC2_UNIT_V2_INIT   0x0186#define NV_SEC2_UNIT_V2_UNLOAD 0x0587#define NV_SEC2_UNIT_V2_ACR    0x0788 89struct nv_sec2_acr_bootstrap_falcon_cmd_v1 {90	struct nv_sec2_acr_cmd cmd;91#define NV_SEC2_ACR_BOOTSTRAP_FALCON_FLAGS_RESET_YES                 0x0000000092#define NV_SEC2_ACR_BOOTSTRAP_FALCON_FLAGS_RESET_NO                  0x0000000193	u32 flags;94	u32 falcon_id;95	u32 unkn08;96	u32 unkn0c;97};98 99struct nv_sec2_acr_bootstrap_falcon_msg_v1 {100	struct nv_sec2_acr_msg msg;101	u32 error_code;102	u32 falcon_id;103	u32 unkn08;104};105#endif106