[Intel-gfx] [PATCH] drm/i915: Yet another if/else sort of newer to older platforms.
Ville Syrjälä
ville.syrjala at linux.intel.com
Mon Feb 25 16:32:51 UTC 2019
On Fri, Feb 22, 2019 at 02:11:12PM -0800, Rodrigo Vivi wrote:
> No functional change. Just a reorg to match the preferred
> behavior.
>
> When rebasing internal branch on top of latest sort I noticed
> few more cases that needs to get reordered.
>
> Let's do in a bundle this time and hoping there's no other
> missing places.
>
> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Lucas De Marchi <lucas.demarchi at intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
> ---
> drivers/gpu/drm/i915/i915_drv.c | 24 ++++-----
> drivers/gpu/drm/i915/i915_perf.c | 50 +++++++++---------
> drivers/gpu/drm/i915/intel_cdclk.c | 38 +++++++-------
> drivers/gpu/drm/i915/intel_workarounds.c | 64 ++++++++++++------------
> 4 files changed, 88 insertions(+), 88 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index c6354f6cdbdb..0e3d5cf2c4f8 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -219,20 +219,20 @@ intel_virt_detect_pch(const struct drm_i915_private *dev_priv)
> * make an educated guess as to which PCH is really there.
> */
>
> - if (IS_GEN(dev_priv, 5))
> - id = INTEL_PCH_IBX_DEVICE_ID_TYPE;
> - else if (IS_GEN(dev_priv, 6) || IS_IVYBRIDGE(dev_priv))
> - id = INTEL_PCH_CPT_DEVICE_ID_TYPE;
> - else if (IS_HSW_ULT(dev_priv) || IS_BDW_ULT(dev_priv))
> - id = INTEL_PCH_LPT_LP_DEVICE_ID_TYPE;
> - else if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv))
> - id = INTEL_PCH_LPT_DEVICE_ID_TYPE;
> - else if (IS_SKYLAKE(dev_priv) || IS_KABYLAKE(dev_priv))
> - id = INTEL_PCH_SPT_DEVICE_ID_TYPE;
> + if (IS_ICELAKE(dev_priv))
> + id = INTEL_PCH_ICP_DEVICE_ID_TYPE;
> else if (IS_COFFEELAKE(dev_priv) || IS_CANNONLAKE(dev_priv))
> id = INTEL_PCH_CNP_DEVICE_ID_TYPE;
> - else if (IS_ICELAKE(dev_priv))
> - id = INTEL_PCH_ICP_DEVICE_ID_TYPE;
> + else if (IS_SKYLAKE(dev_priv) || IS_KABYLAKE(dev_priv))
> + id = INTEL_PCH_SPT_DEVICE_ID_TYPE;
> + else if (IS_HASWELL(dev_priv) || IS_BROADWELL(dev_priv))
> + id = INTEL_PCH_LPT_DEVICE_ID_TYPE;
> + else if (IS_HSW_ULT(dev_priv) || IS_BDW_ULT(dev_priv))
> + id = INTEL_PCH_LPT_LP_DEVICE_ID_TYPE;
Generic match before the more specific one. That's not going to work.
> + else if (IS_GEN(dev_priv, 6) || IS_IVYBRIDGE(dev_priv))
> + id = INTEL_PCH_CPT_DEVICE_ID_TYPE;
> + else if (IS_GEN(dev_priv, 5))
> + id = INTEL_PCH_IBX_DEVICE_ID_TYPE;
>
> if (id)
> DRM_DEBUG_KMS("Assuming PCH ID %04x\n", id);
> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> index 9ebf99f3d8d3..72a9a35b40e2 100644
> --- a/drivers/gpu/drm/i915/i915_perf.c
> +++ b/drivers/gpu/drm/i915/i915_perf.c
> @@ -2881,12 +2881,24 @@ void i915_perf_register(struct drm_i915_private *dev_priv)
>
> sysfs_attr_init(&dev_priv->perf.oa.test_config.sysfs_metric_id.attr);
>
> - if (IS_HASWELL(dev_priv)) {
> - i915_perf_load_test_config_hsw(dev_priv);
> - } else if (IS_BROADWELL(dev_priv)) {
> - i915_perf_load_test_config_bdw(dev_priv);
> - } else if (IS_CHERRYVIEW(dev_priv)) {
> - i915_perf_load_test_config_chv(dev_priv);
> + if (IS_ICELAKE(dev_priv)) {
> + i915_perf_load_test_config_icl(dev_priv);
> + } else if (IS_CANNONLAKE(dev_priv)) {
> + i915_perf_load_test_config_cnl(dev_priv);
> + } else if (IS_COFFEELAKE(dev_priv)) {
> + if (IS_CFL_GT2(dev_priv))
> + i915_perf_load_test_config_cflgt2(dev_priv);
> + if (IS_CFL_GT3(dev_priv))
> + i915_perf_load_test_config_cflgt3(dev_priv);
> + } else if (IS_GEMINILAKE(dev_priv)) {
> + i915_perf_load_test_config_glk(dev_priv);
> + } else if (IS_KABYLAKE(dev_priv)) {
> + if (IS_KBL_GT2(dev_priv))
> + i915_perf_load_test_config_kblgt2(dev_priv);
> + else if (IS_KBL_GT3(dev_priv))
> + i915_perf_load_test_config_kblgt3(dev_priv);
> + } else if (IS_BROXTON(dev_priv)) {
> + i915_perf_load_test_config_bxt(dev_priv);
> } else if (IS_SKYLAKE(dev_priv)) {
> if (IS_SKL_GT2(dev_priv))
> i915_perf_load_test_config_sklgt2(dev_priv);
> @@ -2894,25 +2906,13 @@ void i915_perf_register(struct drm_i915_private *dev_priv)
> i915_perf_load_test_config_sklgt3(dev_priv);
> else if (IS_SKL_GT4(dev_priv))
> i915_perf_load_test_config_sklgt4(dev_priv);
> - } else if (IS_BROXTON(dev_priv)) {
> - i915_perf_load_test_config_bxt(dev_priv);
> - } else if (IS_KABYLAKE(dev_priv)) {
> - if (IS_KBL_GT2(dev_priv))
> - i915_perf_load_test_config_kblgt2(dev_priv);
> - else if (IS_KBL_GT3(dev_priv))
> - i915_perf_load_test_config_kblgt3(dev_priv);
> - } else if (IS_GEMINILAKE(dev_priv)) {
> - i915_perf_load_test_config_glk(dev_priv);
> - } else if (IS_COFFEELAKE(dev_priv)) {
> - if (IS_CFL_GT2(dev_priv))
> - i915_perf_load_test_config_cflgt2(dev_priv);
> - if (IS_CFL_GT3(dev_priv))
> - i915_perf_load_test_config_cflgt3(dev_priv);
> - } else if (IS_CANNONLAKE(dev_priv)) {
> - i915_perf_load_test_config_cnl(dev_priv);
> - } else if (IS_ICELAKE(dev_priv)) {
> - i915_perf_load_test_config_icl(dev_priv);
> - }
> + } else if (IS_CHERRYVIEW(dev_priv)) {
> + i915_perf_load_test_config_chv(dev_priv);
> + } else if (IS_BROADWELL(dev_priv)) {
> + i915_perf_load_test_config_bdw(dev_priv);
> + } else if (IS_HASWELL(dev_priv)) {
> + i915_perf_load_test_config_hsw(dev_priv);
> +}
>
> if (dev_priv->perf.oa.test_config.id == 0)
> goto sysfs_error;
> diff --git a/drivers/gpu/drm/i915/intel_cdclk.c b/drivers/gpu/drm/i915/intel_cdclk.c
> index 26e01a8465af..5d266538036d 100644
> --- a/drivers/gpu/drm/i915/intel_cdclk.c
> +++ b/drivers/gpu/drm/i915/intel_cdclk.c
> @@ -2744,18 +2744,13 @@ void intel_update_rawclk(struct drm_i915_private *dev_priv)
> */
> void intel_init_cdclk_hooks(struct drm_i915_private *dev_priv)
> {
> - if (IS_CHERRYVIEW(dev_priv)) {
> - dev_priv->display.set_cdclk = chv_set_cdclk;
> - dev_priv->display.modeset_calc_cdclk =
> - vlv_modeset_calc_cdclk;
> - } else if (IS_VALLEYVIEW(dev_priv)) {
> - dev_priv->display.set_cdclk = vlv_set_cdclk;
> - dev_priv->display.modeset_calc_cdclk =
> - vlv_modeset_calc_cdclk;
> - } else if (IS_BROADWELL(dev_priv)) {
> - dev_priv->display.set_cdclk = bdw_set_cdclk;
> + if (IS_ICELAKE(dev_priv)) {
> + dev_priv->display.set_cdclk = icl_set_cdclk;
> + dev_priv->display.modeset_calc_cdclk = icl_modeset_calc_cdclk;
> + } else if (IS_CANNONLAKE(dev_priv)) {
> + dev_priv->display.set_cdclk = cnl_set_cdclk;
> dev_priv->display.modeset_calc_cdclk =
> - bdw_modeset_calc_cdclk;
> + cnl_modeset_calc_cdclk;
> } else if (IS_GEN9_LP(dev_priv)) {
> dev_priv->display.set_cdclk = bxt_set_cdclk;
> dev_priv->display.modeset_calc_cdclk =
> @@ -2764,23 +2759,28 @@ void intel_init_cdclk_hooks(struct drm_i915_private *dev_priv)
> dev_priv->display.set_cdclk = skl_set_cdclk;
> dev_priv->display.modeset_calc_cdclk =
> skl_modeset_calc_cdclk;
> - } else if (IS_CANNONLAKE(dev_priv)) {
> - dev_priv->display.set_cdclk = cnl_set_cdclk;
> + } else if (IS_BROADWELL(dev_priv)) {
> + dev_priv->display.set_cdclk = bdw_set_cdclk;
> dev_priv->display.modeset_calc_cdclk =
> - cnl_modeset_calc_cdclk;
> - } else if (IS_ICELAKE(dev_priv)) {
> - dev_priv->display.set_cdclk = icl_set_cdclk;
> - dev_priv->display.modeset_calc_cdclk = icl_modeset_calc_cdclk;
> + bdw_modeset_calc_cdclk;
> + } else if (IS_CHERRYVIEW(dev_priv)) {
> + dev_priv->display.set_cdclk = chv_set_cdclk;
> + dev_priv->display.modeset_calc_cdclk =
> + vlv_modeset_calc_cdclk;
> + } else if (IS_VALLEYVIEW(dev_priv)) {
> + dev_priv->display.set_cdclk = vlv_set_cdclk;
> + dev_priv->display.modeset_calc_cdclk =
> + vlv_modeset_calc_cdclk;
> }
>
> if (IS_ICELAKE(dev_priv))
> dev_priv->display.get_cdclk = icl_get_cdclk;
> else if (IS_CANNONLAKE(dev_priv))
> dev_priv->display.get_cdclk = cnl_get_cdclk;
> - else if (IS_GEN9_BC(dev_priv))
> - dev_priv->display.get_cdclk = skl_get_cdclk;
> else if (IS_GEN9_LP(dev_priv))
> dev_priv->display.get_cdclk = bxt_get_cdclk;
> + else if (IS_GEN9_BC(dev_priv))
> + dev_priv->display.get_cdclk = skl_get_cdclk;
> else if (IS_BROADWELL(dev_priv))
> dev_priv->display.get_cdclk = bdw_get_cdclk;
> else if (IS_HASWELL(dev_priv))
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index 743cf5b00155..3e8138b66191 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -862,26 +862,26 @@ icl_gt_workarounds_init(struct drm_i915_private *i915, struct i915_wa_list *wal)
> static void
> gt_init_workarounds(struct drm_i915_private *i915, struct i915_wa_list *wal)
> {
> - if (INTEL_GEN(i915) < 8)
> + if (IS_ICELAKE(i915))
> + icl_gt_workarounds_init(i915, wal);
> + else if (IS_CANNONLAKE(i915))
> + cnl_gt_workarounds_init(i915, wal);
> + else if (IS_COFFEELAKE(i915))
> + cfl_gt_workarounds_init(i915, wal);
> + else if (IS_GEMINILAKE(i915))
> + glk_gt_workarounds_init(i915, wal);
> + else if (IS_KABYLAKE(i915))
> + kbl_gt_workarounds_init(i915, wal);
> + else if (IS_BROXTON(i915))
> + bxt_gt_workarounds_init(i915, wal);
> + else if (IS_SKYLAKE(i915))
> + skl_gt_workarounds_init(i915, wal);
> + else if (IS_CHERRYVIEW(i915))
> return;
> else if (IS_BROADWELL(i915))
> return;
> - else if (IS_CHERRYVIEW(i915))
> + else if (INTEL_GEN(i915) < 8)
> return;
else if (gen >= 8)
MISSING_CASE(...);
?
> - else if (IS_SKYLAKE(i915))
> - skl_gt_workarounds_init(i915, wal);
> - else if (IS_BROXTON(i915))
> - bxt_gt_workarounds_init(i915, wal);
> - else if (IS_KABYLAKE(i915))
> - kbl_gt_workarounds_init(i915, wal);
> - else if (IS_GEMINILAKE(i915))
> - glk_gt_workarounds_init(i915, wal);
> - else if (IS_COFFEELAKE(i915))
> - cfl_gt_workarounds_init(i915, wal);
> - else if (IS_CANNONLAKE(i915))
> - cnl_gt_workarounds_init(i915, wal);
> - else if (IS_ICELAKE(i915))
> - icl_gt_workarounds_init(i915, wal);
> else
> MISSING_CASE(INTEL_GEN(i915));
> }
> @@ -1063,26 +1063,26 @@ void intel_engine_init_whitelist(struct intel_engine_cs *engine)
>
> wa_init_start(w, "whitelist");
>
> - if (INTEL_GEN(i915) < 8)
> + if (IS_ICELAKE(i915))
> + icl_whitelist_build(w);
> + else if (IS_CANNONLAKE(i915))
> + cnl_whitelist_build(w);
> + else if (IS_COFFEELAKE(i915))
> + cfl_whitelist_build(w);
> + else if (IS_GEMINILAKE(i915))
> + glk_whitelist_build(w);
> + else if (IS_KABYLAKE(i915))
> + kbl_whitelist_build(w);
> + else if (IS_BROXTON(i915))
> + bxt_whitelist_build(w);
> + else if (IS_SKYLAKE(i915))
> + skl_whitelist_build(w);
> + else if (IS_CHERRYVIEW(i915))
> return;
> else if (IS_BROADWELL(i915))
> return;
> - else if (IS_CHERRYVIEW(i915))
> + else if (INTEL_GEN(i915) < 8)
> return;
> - else if (IS_SKYLAKE(i915))
> - skl_whitelist_build(w);
> - else if (IS_BROXTON(i915))
> - bxt_whitelist_build(w);
> - else if (IS_KABYLAKE(i915))
> - kbl_whitelist_build(w);
> - else if (IS_GEMINILAKE(i915))
> - glk_whitelist_build(w);
> - else if (IS_COFFEELAKE(i915))
> - cfl_whitelist_build(w);
> - else if (IS_CANNONLAKE(i915))
> - cnl_whitelist_build(w);
> - else if (IS_ICELAKE(i915))
> - icl_whitelist_build(w);
> else
> MISSING_CASE(INTEL_GEN(i915));
>
> --
> 2.20.1
--
Ville Syrjälä
Intel
More information about the Intel-gfx
mailing list