186ce2a71SBen Skeggs #ifndef __NVFW_SEC2_H__ 286ce2a71SBen Skeggs #define __NVFW_SEC2_H__ 386ce2a71SBen Skeggs 4d114a139SBen Skeggs #define NV_SEC2_UNIT_INIT 0x01 586ce2a71SBen Skeggs #define NV_SEC2_UNIT_ACR 0x08 686ce2a71SBen Skeggs 7d114a139SBen Skeggs struct nv_sec2_init_msg { 8d114a139SBen Skeggs struct nv_falcon_msg hdr; 9d114a139SBen Skeggs #define NV_SEC2_INIT_MSG_INIT 0x00 10d114a139SBen Skeggs u8 msg_type; 11d114a139SBen Skeggs 12d114a139SBen Skeggs u8 num_queues; 13d114a139SBen Skeggs u16 os_debug_entry_point; 14d114a139SBen Skeggs 15d114a139SBen Skeggs struct { 16d114a139SBen Skeggs u32 offset; 17d114a139SBen Skeggs u16 size; 18d114a139SBen Skeggs u8 index; 19d114a139SBen Skeggs #define NV_SEC2_INIT_MSG_QUEUE_ID_CMDQ 0x00 20d114a139SBen Skeggs #define NV_SEC2_INIT_MSG_QUEUE_ID_MSGQ 0x01 21d114a139SBen Skeggs u8 id; 22d114a139SBen Skeggs } queue_info[2]; 23d114a139SBen Skeggs 24d114a139SBen Skeggs u32 sw_managed_area_offset; 25d114a139SBen Skeggs u16 sw_managed_area_size; 26d114a139SBen Skeggs }; 27d114a139SBen Skeggs 2886ce2a71SBen Skeggs struct nv_sec2_acr_cmd { 2986ce2a71SBen Skeggs struct nv_falcon_cmd hdr; 3086ce2a71SBen Skeggs #define NV_SEC2_ACR_CMD_BOOTSTRAP_FALCON 0x00 3186ce2a71SBen Skeggs u8 cmd_type; 3286ce2a71SBen Skeggs }; 3386ce2a71SBen Skeggs 3486ce2a71SBen Skeggs struct nv_sec2_acr_msg { 3586ce2a71SBen Skeggs struct nv_falcon_cmd hdr; 3686ce2a71SBen Skeggs u8 msg_type; 3786ce2a71SBen Skeggs }; 3886ce2a71SBen Skeggs 3986ce2a71SBen Skeggs struct nv_sec2_acr_bootstrap_falcon_cmd { 4086ce2a71SBen Skeggs struct nv_sec2_acr_cmd cmd; 4186ce2a71SBen Skeggs #define NV_SEC2_ACR_BOOTSTRAP_FALCON_FLAGS_RESET_YES 0x00000000 4286ce2a71SBen Skeggs #define NV_SEC2_ACR_BOOTSTRAP_FALCON_FLAGS_RESET_NO 0x00000001 4386ce2a71SBen Skeggs u32 flags; 4486ce2a71SBen Skeggs u32 falcon_id; 4586ce2a71SBen Skeggs }; 4686ce2a71SBen Skeggs 4786ce2a71SBen Skeggs struct nv_sec2_acr_bootstrap_falcon_msg { 4886ce2a71SBen Skeggs struct nv_sec2_acr_msg msg; 4986ce2a71SBen Skeggs u32 error_code; 5086ce2a71SBen Skeggs u32 falcon_id; 5186ce2a71SBen Skeggs }; 5286ce2a71SBen Skeggs #endif 53