Commit 77531b0e authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915: Handle dbuf bypass path allocation earlier

We always reserve the same 4 dbuf blocks for the bypass path
allocation, so might as well do that when declaring the dbuf
size.
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210416171011.19012-3-ville.syrjala@linux.intel.comReviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
parent 708de86e
...@@ -647,7 +647,7 @@ static const struct intel_device_info chv_info = { ...@@ -647,7 +647,7 @@ static const struct intel_device_info chv_info = {
.has_gt_uc = 1, \ .has_gt_uc = 1, \
.display.has_hdcp = 1, \ .display.has_hdcp = 1, \
.display.has_ipc = 1, \ .display.has_ipc = 1, \
.dbuf.size = 896, \ .dbuf.size = 896 - 4, /* 4 blocks for bypass path allocation */ \
.dbuf.num_slices = 1 .dbuf.num_slices = 1
#define SKL_PLATFORM \ #define SKL_PLATFORM \
...@@ -720,14 +720,14 @@ static const struct intel_device_info skl_gt4_info = { ...@@ -720,14 +720,14 @@ static const struct intel_device_info skl_gt4_info = {
static const struct intel_device_info bxt_info = { static const struct intel_device_info bxt_info = {
GEN9_LP_FEATURES, GEN9_LP_FEATURES,
PLATFORM(INTEL_BROXTON), PLATFORM(INTEL_BROXTON),
.dbuf.size = 512, .dbuf.size = 512 - 4, /* 4 blocks for bypass path allocation */
}; };
static const struct intel_device_info glk_info = { static const struct intel_device_info glk_info = {
GEN9_LP_FEATURES, GEN9_LP_FEATURES,
PLATFORM(INTEL_GEMINILAKE), PLATFORM(INTEL_GEMINILAKE),
.display.ver = 10, .display.ver = 10,
.dbuf.size = 1024, .dbuf.size = 1024 - 4, /* 4 blocks for bypass path allocation */
GLK_COLORS, GLK_COLORS,
}; };
...@@ -790,7 +790,7 @@ static const struct intel_device_info cml_gt2_info = { ...@@ -790,7 +790,7 @@ static const struct intel_device_info cml_gt2_info = {
#define GEN10_FEATURES \ #define GEN10_FEATURES \
GEN9_FEATURES, \ GEN9_FEATURES, \
GEN(10), \ GEN(10), \
.dbuf.size = 1024, \ .dbuf.size = 1024 - 4, /* 4 blocks for bypass path allocation */ \
.display.has_dsc = 1, \ .display.has_dsc = 1, \
.has_coherent_ggtt = false, \ .has_coherent_ggtt = false, \
GLK_COLORS GLK_COLORS
......
...@@ -4030,14 +4030,7 @@ static int intel_compute_sagv_mask(struct intel_atomic_state *state) ...@@ -4030,14 +4030,7 @@ static int intel_compute_sagv_mask(struct intel_atomic_state *state)
static int intel_dbuf_size(struct drm_i915_private *dev_priv) static int intel_dbuf_size(struct drm_i915_private *dev_priv)
{ {
int ddb_size = INTEL_INFO(dev_priv)->dbuf.size; return INTEL_INFO(dev_priv)->dbuf.size;
drm_WARN_ON(&dev_priv->drm, ddb_size == 0);
if (DISPLAY_VER(dev_priv) < 11)
return ddb_size - 4; /* 4 blocks for bypass path allocation */
return ddb_size;
} }
static int intel_dbuf_slice_size(struct drm_i915_private *dev_priv) static int intel_dbuf_slice_size(struct drm_i915_private *dev_priv)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment