mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-03 18:12:25 -04:00
drm/i915/dmc: Change intel_get_stepping_info()
Lets use RUNTIME_INFO->step since all platforms now have their stepping info in intel_step.c. This makes intel_get_stepping_info() a lot simpler. Cc: Lucas De Marchi <lucas.demarchi@intel.com> Signed-off-by: Anusha Srivatsa <anusha.srivatsa@intel.com> Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210721215238.24980-2-anusha.srivatsa@intel.com
This commit is contained in:
@@ -247,50 +247,15 @@ bool intel_dmc_has_payload(struct drm_i915_private *i915)
|
||||
return i915->dmc.dmc_info[DMC_FW_MAIN].payload;
|
||||
}
|
||||
|
||||
static const struct stepping_info skl_stepping_info[] = {
|
||||
{'A', '0'}, {'B', '0'}, {'C', '0'},
|
||||
{'D', '0'}, {'E', '0'}, {'F', '0'},
|
||||
{'G', '0'}, {'H', '0'}, {'I', '0'},
|
||||
{'J', '0'}, {'K', '0'}
|
||||
};
|
||||
|
||||
static const struct stepping_info bxt_stepping_info[] = {
|
||||
{'A', '0'}, {'A', '1'}, {'A', '2'},
|
||||
{'B', '0'}, {'B', '1'}, {'B', '2'}
|
||||
};
|
||||
|
||||
static const struct stepping_info icl_stepping_info[] = {
|
||||
{'A', '0'}, {'A', '1'}, {'A', '2'},
|
||||
{'B', '0'}, {'B', '2'},
|
||||
{'C', '0'}
|
||||
};
|
||||
|
||||
static const struct stepping_info no_stepping_info = { '*', '*' };
|
||||
|
||||
static const struct stepping_info *
|
||||
intel_get_stepping_info(struct drm_i915_private *dev_priv)
|
||||
intel_get_stepping_info(struct drm_i915_private *i915,
|
||||
struct stepping_info *si)
|
||||
{
|
||||
const struct stepping_info *si;
|
||||
unsigned int size;
|
||||
const char *step_name = intel_step_name(RUNTIME_INFO(i915)->step.display_step);
|
||||
|
||||
if (IS_ICELAKE(dev_priv)) {
|
||||
size = ARRAY_SIZE(icl_stepping_info);
|
||||
si = icl_stepping_info;
|
||||
} else if (IS_SKYLAKE(dev_priv)) {
|
||||
size = ARRAY_SIZE(skl_stepping_info);
|
||||
si = skl_stepping_info;
|
||||
} else if (IS_BROXTON(dev_priv)) {
|
||||
size = ARRAY_SIZE(bxt_stepping_info);
|
||||
si = bxt_stepping_info;
|
||||
} else {
|
||||
size = 0;
|
||||
si = NULL;
|
||||
}
|
||||
|
||||
if (INTEL_REVID(dev_priv) < size)
|
||||
return si + INTEL_REVID(dev_priv);
|
||||
|
||||
return &no_stepping_info;
|
||||
si->stepping = step_name[0];
|
||||
si->substepping = step_name[1];
|
||||
return si;
|
||||
}
|
||||
|
||||
static void gen9_set_dc_state_debugmask(struct drm_i915_private *dev_priv)
|
||||
@@ -616,7 +581,8 @@ static void parse_dmc_fw(struct drm_i915_private *dev_priv,
|
||||
struct intel_package_header *package_header;
|
||||
struct intel_dmc_header_base *dmc_header;
|
||||
struct intel_dmc *dmc = &dev_priv->dmc;
|
||||
const struct stepping_info *si = intel_get_stepping_info(dev_priv);
|
||||
struct stepping_info display_info = { '*', '*'};
|
||||
const struct stepping_info *si = intel_get_stepping_info(dev_priv, &display_info);
|
||||
u32 readcount = 0;
|
||||
u32 r, offset;
|
||||
int id;
|
||||
|
||||
Reference in New Issue
Block a user