diff options
| author | Alessio Belle <alessio.belle@imgtec.com> | 2026-07-29 15:57:07 +0100 |
|---|---|---|
| committer | Alessio Belle <alessio.belle@imgtec.com> | 2026-08-03 11:25:42 +0100 |
| commit | 173dceaed68eef074b77278bd92e6fdb4e09606d (patch) | |
| tree | 0a3384a4d9e2051f271bed48d7aea3a864d3d4ca /drivers | |
| parent | e0c92f0f9e200799eec6ba76d921643fd5b9f2b2 (diff) | |
| download | linux-173dceaed68eef074b77278bd92e6fdb4e09606d.tar.gz linux-173dceaed68eef074b77278bd92e6fdb4e09606d.zip | |
drm/imagination: Reuse layout check macros for MIPS FW structures
Replace static asserts on MIPS firmware structures offsets and sizes
with more compact macros that are already used for similar checks on
common firmware interface structures.
Reviewed-by: Brajesh Gupta <brajesh.gupta@imgtec.com>
Link: https://patch.msgid.link/20260729-fwif-checks-updates-v1-2-af65e9606a7e@imgtec.com
Signed-off-by: Alessio Belle <alessio.belle@imgtec.com>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/gpu/drm/imagination/pvr_rogue_mips_check.h | 71 |
1 files changed, 24 insertions, 47 deletions
diff --git a/drivers/gpu/drm/imagination/pvr_rogue_mips_check.h b/drivers/gpu/drm/imagination/pvr_rogue_mips_check.h index 824b4bf33ac1..aebf231ce90f 100644 --- a/drivers/gpu/drm/imagination/pvr_rogue_mips_check.h +++ b/drivers/gpu/drm/imagination/pvr_rogue_mips_check.h @@ -4,55 +4,32 @@ #ifndef PVR_ROGUE_MIPS_CHECK_H #define PVR_ROGUE_MIPS_CHECK_H -#include <linux/build_bug.h> +#include "pvr_check.h" -static_assert(offsetof(struct rogue_mips_tlb_entry, tlb_page_mask) == 0, - "offsetof(struct rogue_mips_tlb_entry, tlb_page_mask) incorrect"); -static_assert(offsetof(struct rogue_mips_tlb_entry, tlb_hi) == 4, - "offsetof(struct rogue_mips_tlb_entry, tlb_hi) incorrect"); -static_assert(offsetof(struct rogue_mips_tlb_entry, tlb_lo0) == 8, - "offsetof(struct rogue_mips_tlb_entry, tlb_lo0) incorrect"); -static_assert(offsetof(struct rogue_mips_tlb_entry, tlb_lo1) == 12, - "offsetof(struct rogue_mips_tlb_entry, tlb_lo1) incorrect"); -static_assert(sizeof(struct rogue_mips_tlb_entry) == 16, - "struct rogue_mips_tlb_entry is incorrect size"); +OFFSET_CHECK(struct rogue_mips_tlb_entry, tlb_page_mask, 0); +OFFSET_CHECK(struct rogue_mips_tlb_entry, tlb_hi, 4); +OFFSET_CHECK(struct rogue_mips_tlb_entry, tlb_lo0, 8); +OFFSET_CHECK(struct rogue_mips_tlb_entry, tlb_lo1, 12); +SIZE_CHECK(struct rogue_mips_tlb_entry, 16); -static_assert(offsetof(struct rogue_mips_remap_entry, remap_addr_in) == 0, - "offsetof(struct rogue_mips_remap_entry, remap_addr_in) incorrect"); -static_assert(offsetof(struct rogue_mips_remap_entry, remap_addr_out) == 4, - "offsetof(struct rogue_mips_remap_entry, remap_addr_out) incorrect"); -static_assert(offsetof(struct rogue_mips_remap_entry, remap_region_size) == 8, - "offsetof(struct rogue_mips_remap_entry, remap_region_size) incorrect"); -static_assert(sizeof(struct rogue_mips_remap_entry) == 12, - "struct rogue_mips_remap_entry is incorrect size"); +OFFSET_CHECK(struct rogue_mips_remap_entry, remap_addr_in, 0); +OFFSET_CHECK(struct rogue_mips_remap_entry, remap_addr_out, 4); +OFFSET_CHECK(struct rogue_mips_remap_entry, remap_region_size, 8); +SIZE_CHECK(struct rogue_mips_remap_entry, 12); -static_assert(offsetof(struct rogue_mips_state, error_state) == 0, - "offsetof(struct rogue_mips_state, error_state) incorrect"); -static_assert(offsetof(struct rogue_mips_state, error_epc) == 4, - "offsetof(struct rogue_mips_state, error_epc) incorrect"); -static_assert(offsetof(struct rogue_mips_state, status_register) == 8, - "offsetof(struct rogue_mips_state, status_register) incorrect"); -static_assert(offsetof(struct rogue_mips_state, cause_register) == 12, - "offsetof(struct rogue_mips_state, cause_register) incorrect"); -static_assert(offsetof(struct rogue_mips_state, bad_register) == 16, - "offsetof(struct rogue_mips_state, bad_register) incorrect"); -static_assert(offsetof(struct rogue_mips_state, epc) == 20, - "offsetof(struct rogue_mips_state, epc) incorrect"); -static_assert(offsetof(struct rogue_mips_state, sp) == 24, - "offsetof(struct rogue_mips_state, sp) incorrect"); -static_assert(offsetof(struct rogue_mips_state, debug) == 28, - "offsetof(struct rogue_mips_state, debug) incorrect"); -static_assert(offsetof(struct rogue_mips_state, depc) == 32, - "offsetof(struct rogue_mips_state, depc) incorrect"); -static_assert(offsetof(struct rogue_mips_state, bad_instr) == 36, - "offsetof(struct rogue_mips_state, bad_instr) incorrect"); -static_assert(offsetof(struct rogue_mips_state, unmapped_address) == 40, - "offsetof(struct rogue_mips_state, unmapped_address) incorrect"); -static_assert(offsetof(struct rogue_mips_state, tlb) == 44, - "offsetof(struct rogue_mips_state, tlb) incorrect"); -static_assert(offsetof(struct rogue_mips_state, remap) == 300, - "offsetof(struct rogue_mips_state, remap) incorrect"); -static_assert(sizeof(struct rogue_mips_state) == 684, - "struct rogue_mips_state is incorrect size"); +OFFSET_CHECK(struct rogue_mips_state, error_state, 0); +OFFSET_CHECK(struct rogue_mips_state, error_epc, 4); +OFFSET_CHECK(struct rogue_mips_state, status_register, 8); +OFFSET_CHECK(struct rogue_mips_state, cause_register, 12); +OFFSET_CHECK(struct rogue_mips_state, bad_register, 16); +OFFSET_CHECK(struct rogue_mips_state, epc, 20); +OFFSET_CHECK(struct rogue_mips_state, sp, 24); +OFFSET_CHECK(struct rogue_mips_state, debug, 28); +OFFSET_CHECK(struct rogue_mips_state, depc, 32); +OFFSET_CHECK(struct rogue_mips_state, bad_instr, 36); +OFFSET_CHECK(struct rogue_mips_state, unmapped_address, 40); +OFFSET_CHECK(struct rogue_mips_state, tlb, 44); +OFFSET_CHECK(struct rogue_mips_state, remap, 300); +SIZE_CHECK(struct rogue_mips_state, 684); #endif /* PVR_ROGUE_MIPS_CHECK_H */ |
