1 /* SPDX-License-Identifier: GPL-2.0-only OR MIT */ 2 /* Copyright (c) 2023 Imagination Technologies Ltd. */ 3 4 #ifndef PVR_ROGUE_FWIF_SHARED_CHECK_H 5 #define PVR_ROGUE_FWIF_SHARED_CHECK_H 6 7 #include "pvr_check.h" 8 9 OFFSET_CHECK(struct rogue_fwif_dma_addr, dev_addr, 0); 10 OFFSET_CHECK(struct rogue_fwif_dma_addr, fw_addr, 8); 11 SIZE_CHECK(struct rogue_fwif_dma_addr, 16); 12 13 OFFSET_CHECK(struct rogue_fwif_ufo, addr, 0); 14 OFFSET_CHECK(struct rogue_fwif_ufo, value, 4); 15 SIZE_CHECK(struct rogue_fwif_ufo, 8); 16 17 OFFSET_CHECK(struct rogue_fwif_cleanup_ctl, submitted_commands, 0); 18 OFFSET_CHECK(struct rogue_fwif_cleanup_ctl, executed_commands, 4); 19 SIZE_CHECK(struct rogue_fwif_cleanup_ctl, 8); 20 21 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, write_offset, 0); 22 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, read_offset, 4); 23 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, dep_offset, 8); 24 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, wrap_mask, 12); 25 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, read_offset2, 16); 26 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, read_offset3, 20); 27 OFFSET_CHECK(struct rogue_fwif_cccb_ctl, read_offset4, 24); 28 SIZE_CHECK(struct rogue_fwif_cccb_ctl, 32); 29 30 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 31 geom_reg_vdm_context_state_base_addr, 0); 32 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 33 geom_reg_vdm_context_state_resume_addr, 8); 34 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 35 geom_reg_ta_context_state_base_addr, 16); 36 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 37 geom_state[0].geom_reg_vdm_context_store_task0, 24); 38 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 39 geom_state[0].geom_reg_vdm_context_store_task1, 32); 40 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 41 geom_state[0].geom_reg_vdm_context_store_task2, 40); 42 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 43 geom_state[0].geom_reg_vdm_context_resume_task0, 48); 44 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 45 geom_state[0].geom_reg_vdm_context_resume_task1, 56); 46 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 47 geom_state[0].geom_reg_vdm_context_resume_task2, 64); 48 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 49 geom_state[0].geom_reg_vdm_context_store_task3, 72); 50 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 51 geom_state[0].geom_reg_vdm_context_store_task4, 80); 52 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 53 geom_state[0].geom_reg_vdm_context_resume_task3, 88); 54 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 55 geom_state[0].geom_reg_vdm_context_resume_task4, 96); 56 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 57 geom_state[1].geom_reg_vdm_context_store_task0, 104); 58 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 59 geom_state[1].geom_reg_vdm_context_store_task1, 112); 60 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 61 geom_state[1].geom_reg_vdm_context_store_task2, 120); 62 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 63 geom_state[1].geom_reg_vdm_context_resume_task0, 128); 64 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 65 geom_state[1].geom_reg_vdm_context_resume_task1, 136); 66 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 67 geom_state[1].geom_reg_vdm_context_resume_task2, 144); 68 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 69 geom_state[1].geom_reg_vdm_context_store_task3, 152); 70 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 71 geom_state[1].geom_reg_vdm_context_store_task4, 160); 72 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 73 geom_state[1].geom_reg_vdm_context_resume_task3, 168); 74 OFFSET_CHECK(struct rogue_fwif_geom_registers_caswitch, 75 geom_state[1].geom_reg_vdm_context_resume_task4, 176); 76 SIZE_CHECK(struct rogue_fwif_geom_registers_caswitch, 184); 77 78 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_context_pds0, 0); 79 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_context_pds1, 8); 80 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_terminate_pds, 16); 81 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_terminate_pds1, 24); 82 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_resume_pds0, 32); 83 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_context_pds0_b, 40); 84 OFFSET_CHECK(struct rogue_fwif_cdm_registers_cswitch, cdmreg_cdm_resume_pds0_b, 48); 85 SIZE_CHECK(struct rogue_fwif_cdm_registers_cswitch, 56); 86 87 OFFSET_CHECK(struct rogue_fwif_static_rendercontext_state, ctxswitch_regs, 0); 88 SIZE_CHECK(struct rogue_fwif_static_rendercontext_state, 368); 89 90 OFFSET_CHECK(struct rogue_fwif_static_computecontext_state, ctxswitch_regs, 0); 91 SIZE_CHECK(struct rogue_fwif_static_computecontext_state, 56); 92 93 OFFSET_CHECK(struct rogue_fwif_cmd_common, frame_num, 0); 94 SIZE_CHECK(struct rogue_fwif_cmd_common, 4); 95 96 OFFSET_CHECK(struct rogue_fwif_cmd_geom_frag_shared, cmn, 0); 97 OFFSET_CHECK(struct rogue_fwif_cmd_geom_frag_shared, hwrt_data_fw_addr, 4); 98 OFFSET_CHECK(struct rogue_fwif_cmd_geom_frag_shared, pr_buffer_fw_addr, 8); 99 SIZE_CHECK(struct rogue_fwif_cmd_geom_frag_shared, 16); 100 101 #endif /* PVR_ROGUE_FWIF_SHARED_CHECK_H */ 102