d994bf9b3f
Replace the ad-hoc 113-line workaround module with a proper data model: - Workaround struct: offset, clear, set, read_mask, masked, name - WorkaroundList: sorted Vec with automatic merge/dedup at same offset - apply(): read-modify-write with masked-register and write-only support - verify(): post-application validation against read_mask - Helper functions: wa_masked_en/dis/field_set, wa_write/or/clr/clr_set - MCR variants: aliases to regular helpers (no MCR steering yet) Tables ported from Linux 7.1 intel_workarounds.c: - GT workarounds: gen4, g4x, ilk, snb, ivb, hsw, gen9, icl(gen9.5), gen12 - Context workarounds: gen6, gen7, gen8, gen9, icl, gen12 - Engine workarounds: general_render_compute - Whitelist: gen9, icl, gen12 0 compilation errors.