drm/i915/gt: Move wal_get_fw_for_rmw()
Move helper function to get all the forcewakes required by the wa list to the top, so it can be re-used by other functions. Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Link: https://patchwork.freedesktop.org/patch/msgid/20230630203509.1635216-2-lucas.demarchi@intel.com
This commit is contained in:
parent
36dd2a6e50
commit
f567947b9c
@ -123,6 +123,22 @@ static void wa_init_finish(struct i915_wa_list *wal)
|
||||
wal->wa_count, wal->name, wal->engine_name);
|
||||
}
|
||||
|
||||
static enum forcewake_domains
|
||||
wal_get_fw_for_rmw(struct intel_uncore *uncore, const struct i915_wa_list *wal)
|
||||
{
|
||||
enum forcewake_domains fw = 0;
|
||||
struct i915_wa *wa;
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0, wa = wal->list; i < wal->count; i++, wa++)
|
||||
fw |= intel_uncore_forcewake_for_reg(uncore,
|
||||
wa->reg,
|
||||
FW_REG_READ |
|
||||
FW_REG_WRITE);
|
||||
|
||||
return fw;
|
||||
}
|
||||
|
||||
static void _wa_add(struct i915_wa_list *wal, const struct i915_wa *wa)
|
||||
{
|
||||
unsigned int addr = i915_mmio_reg_offset(wa->reg);
|
||||
@ -1859,22 +1875,6 @@ void intel_gt_init_workarounds(struct intel_gt *gt)
|
||||
wa_init_finish(wal);
|
||||
}
|
||||
|
||||
static enum forcewake_domains
|
||||
wal_get_fw_for_rmw(struct intel_uncore *uncore, const struct i915_wa_list *wal)
|
||||
{
|
||||
enum forcewake_domains fw = 0;
|
||||
struct i915_wa *wa;
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0, wa = wal->list; i < wal->count; i++, wa++)
|
||||
fw |= intel_uncore_forcewake_for_reg(uncore,
|
||||
wa->reg,
|
||||
FW_REG_READ |
|
||||
FW_REG_WRITE);
|
||||
|
||||
return fw;
|
||||
}
|
||||
|
||||
static bool
|
||||
wa_verify(struct intel_gt *gt, const struct i915_wa *wa, u32 cur,
|
||||
const char *name, const char *from)
|
||||
|
Loading…
x
Reference in New Issue
Block a user