aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_ringbuffer.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2019-01-25 07:00:04 -0500
committerChris Wilson <chris@chris-wilson.co.uk>2019-01-25 07:53:13 -0500
commit9fa4973e91be3e5cb220f7d607c21bf6e82c52d1 (patch)
tree499a5df69bf7a05e6a9d1f6236559d096d34d5c2 /drivers/gpu/drm/i915/intel_ringbuffer.c
parente1a73a54a96e80dc6009e73c9209e4f81ae22285 (diff)
drm/i915: Remove manual breadcumb counting
Now that we know we measure the size of the engine->emit_breadcrumb() correctly, we can remove the previous manual counting. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190125120005.25191-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.c')
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.c28
1 files changed, 5 insertions, 23 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 107c4934e2fa..09c90475168a 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -330,7 +330,6 @@ static u32 *gen6_rcs_emit_breadcrumb(struct i915_request *rq, u32 *cs)
330 330
331 return cs; 331 return cs;
332} 332}
333static const int gen6_rcs_emit_breadcrumb_sz = 14;
334 333
335static int 334static int
336gen7_render_ring_cs_stall_wa(struct i915_request *rq) 335gen7_render_ring_cs_stall_wa(struct i915_request *rq)
@@ -432,7 +431,6 @@ static u32 *gen7_rcs_emit_breadcrumb(struct i915_request *rq, u32 *cs)
432 431
433 return cs; 432 return cs;
434} 433}
435static const int gen7_rcs_emit_breadcrumb_sz = 6;
436 434
437static u32 *gen6_xcs_emit_breadcrumb(struct i915_request *rq, u32 *cs) 435static u32 *gen6_xcs_emit_breadcrumb(struct i915_request *rq, u32 *cs)
438{ 436{
@@ -446,7 +444,6 @@ static u32 *gen6_xcs_emit_breadcrumb(struct i915_request *rq, u32 *cs)
446 444
447 return cs; 445 return cs;
448} 446}
449static const int gen6_xcs_emit_breadcrumb_sz = 4;
450 447
451#define GEN7_XCS_WA 32 448#define GEN7_XCS_WA 32
452static u32 *gen7_xcs_emit_breadcrumb(struct i915_request *rq, u32 *cs) 449static u32 *gen7_xcs_emit_breadcrumb(struct i915_request *rq, u32 *cs)
@@ -475,7 +472,6 @@ static u32 *gen7_xcs_emit_breadcrumb(struct i915_request *rq, u32 *cs)
475 472
476 return cs; 473 return cs;
477} 474}
478static const int gen7_xcs_emit_breadcrumb_sz = 8 + GEN7_XCS_WA * 3;
479#undef GEN7_XCS_WA 475#undef GEN7_XCS_WA
480 476
481static void set_hwstam(struct intel_engine_cs *engine, u32 mask) 477static void set_hwstam(struct intel_engine_cs *engine, u32 mask)
@@ -885,7 +881,6 @@ static u32 *i9xx_emit_breadcrumb(struct i915_request *rq, u32 *cs)
885 881
886 return cs; 882 return cs;
887} 883}
888static const int i9xx_emit_breadcrumb_sz = 6;
889 884
890#define GEN5_WA_STORES 8 /* must be at least 1! */ 885#define GEN5_WA_STORES 8 /* must be at least 1! */
891static u32 *gen5_emit_breadcrumb(struct i915_request *rq, u32 *cs) 886static u32 *gen5_emit_breadcrumb(struct i915_request *rq, u32 *cs)
@@ -908,7 +903,6 @@ static u32 *gen5_emit_breadcrumb(struct i915_request *rq, u32 *cs)
908 903
909 return cs; 904 return cs;
910} 905}
911static const int gen5_emit_breadcrumb_sz = GEN5_WA_STORES * 3 + 2;
912#undef GEN5_WA_STORES 906#undef GEN5_WA_STORES
913 907
914static void 908static void
@@ -2206,11 +2200,8 @@ static void intel_ring_default_vfuncs(struct drm_i915_private *dev_priv,
2206 engine->request_alloc = ring_request_alloc; 2200 engine->request_alloc = ring_request_alloc;
2207 2201
2208 engine->emit_breadcrumb = i9xx_emit_breadcrumb; 2202 engine->emit_breadcrumb = i9xx_emit_breadcrumb;
2209 engine->emit_breadcrumb_sz = i9xx_emit_breadcrumb_sz; 2203 if (IS_GEN(dev_priv, 5))
2210 if (IS_GEN(dev_priv, 5)) {
2211 engine->emit_breadcrumb = gen5_emit_breadcrumb; 2204 engine->emit_breadcrumb = gen5_emit_breadcrumb;
2212 engine->emit_breadcrumb_sz = gen5_emit_breadcrumb_sz;
2213 }
2214 2205
2215 engine->set_default_submission = i9xx_set_default_submission; 2206 engine->set_default_submission = i9xx_set_default_submission;
2216 2207
@@ -2240,12 +2231,10 @@ int intel_init_render_ring_buffer(struct intel_engine_cs *engine)
2240 engine->init_context = intel_rcs_ctx_init; 2231 engine->init_context = intel_rcs_ctx_init;
2241 engine->emit_flush = gen7_render_ring_flush; 2232 engine->emit_flush = gen7_render_ring_flush;
2242 engine->emit_breadcrumb = gen7_rcs_emit_breadcrumb; 2233 engine->emit_breadcrumb = gen7_rcs_emit_breadcrumb;
2243 engine->emit_breadcrumb_sz = gen7_rcs_emit_breadcrumb_sz;
2244 } else if (IS_GEN(dev_priv, 6)) { 2234 } else if (IS_GEN(dev_priv, 6)) {
2245 engine->init_context = intel_rcs_ctx_init; 2235 engine->init_context = intel_rcs_ctx_init;
2246 engine->emit_flush = gen6_render_ring_flush; 2236 engine->emit_flush = gen6_render_ring_flush;
2247 engine->emit_breadcrumb = gen6_rcs_emit_breadcrumb; 2237 engine->emit_breadcrumb = gen6_rcs_emit_breadcrumb;
2248 engine->emit_breadcrumb_sz = gen6_rcs_emit_breadcrumb_sz;
2249 } else if (IS_GEN(dev_priv, 5)) { 2238 } else if (IS_GEN(dev_priv, 5)) {
2250 engine->emit_flush = gen4_render_ring_flush; 2239 engine->emit_flush = gen4_render_ring_flush;
2251 } else { 2240 } else {
@@ -2281,13 +2270,10 @@ int intel_init_bsd_ring_buffer(struct intel_engine_cs *engine)
2281 engine->emit_flush = gen6_bsd_ring_flush; 2270 engine->emit_flush = gen6_bsd_ring_flush;
2282 engine->irq_enable_mask = GT_BSD_USER_INTERRUPT; 2271 engine->irq_enable_mask = GT_BSD_USER_INTERRUPT;
2283 2272
2284 if (IS_GEN(dev_priv, 6)) { 2273 if (IS_GEN(dev_priv, 6))
2285 engine->emit_breadcrumb = gen6_xcs_emit_breadcrumb; 2274 engine->emit_breadcrumb = gen6_xcs_emit_breadcrumb;
2286 engine->emit_breadcrumb_sz = gen6_xcs_emit_breadcrumb_sz; 2275 else
2287 } else {
2288 engine->emit_breadcrumb = gen7_xcs_emit_breadcrumb; 2276 engine->emit_breadcrumb = gen7_xcs_emit_breadcrumb;
2289 engine->emit_breadcrumb_sz = gen7_xcs_emit_breadcrumb_sz;
2290 }
2291 } else { 2277 } else {
2292 engine->emit_flush = bsd_ring_flush; 2278 engine->emit_flush = bsd_ring_flush;
2293 if (IS_GEN(dev_priv, 5)) 2279 if (IS_GEN(dev_priv, 5))
@@ -2310,13 +2296,10 @@ int intel_init_blt_ring_buffer(struct intel_engine_cs *engine)
2310 engine->emit_flush = gen6_ring_flush; 2296 engine->emit_flush = gen6_ring_flush;
2311 engine->irq_enable_mask = GT_BLT_USER_INTERRUPT; 2297 engine->irq_enable_mask = GT_BLT_USER_INTERRUPT;
2312 2298
2313 if (IS_GEN(dev_priv, 6)) { 2299 if (IS_GEN(dev_priv, 6))
2314 engine->emit_breadcrumb = gen6_xcs_emit_breadcrumb; 2300 engine->emit_breadcrumb = gen6_xcs_emit_breadcrumb;
2315 engine->emit_breadcrumb_sz = gen6_xcs_emit_breadcrumb_sz; 2301 else
2316 } else {
2317 engine->emit_breadcrumb = gen7_xcs_emit_breadcrumb; 2302 engine->emit_breadcrumb = gen7_xcs_emit_breadcrumb;
2318 engine->emit_breadcrumb_sz = gen7_xcs_emit_breadcrumb_sz;
2319 }
2320 2303
2321 return intel_init_ring_buffer(engine); 2304 return intel_init_ring_buffer(engine);
2322} 2305}
@@ -2335,7 +2318,6 @@ int intel_init_vebox_ring_buffer(struct intel_engine_cs *engine)
2335 engine->irq_disable = hsw_vebox_irq_disable; 2318 engine->irq_disable = hsw_vebox_irq_disable;
2336 2319
2337 engine->emit_breadcrumb = gen7_xcs_emit_breadcrumb; 2320 engine->emit_breadcrumb = gen7_xcs_emit_breadcrumb;
2338 engine->emit_breadcrumb_sz = gen7_xcs_emit_breadcrumb_sz;
2339 2321
2340 return intel_init_ring_buffer(engine); 2322 return intel_init_ring_buffer(engine);
2341} 2323}