xref: /openbmc/linux/drivers/gpu/drm/i915/Kconfig.profile (revision a8c51ed22b0ef20205180baa8ed30e05ea6f8505)
1b27e35aeSChris Wilsonconfig DRM_I915_USERFAULT_AUTOSUSPEND
2b27e35aeSChris Wilson	int "Runtime autosuspend delay for userspace GGTT mmaps (ms)"
3b27e35aeSChris Wilson	default 250 # milliseconds
4b27e35aeSChris Wilson	help
5b27e35aeSChris Wilson	  On runtime suspend, as we suspend the device, we have to revoke
6b27e35aeSChris Wilson	  userspace GGTT mmaps and force userspace to take a pagefault on
7b27e35aeSChris Wilson	  their next access. The revocation and subsequent recreation of
8b27e35aeSChris Wilson	  the GGTT mmap can be very slow and so we impose a small hysteris
9b27e35aeSChris Wilson	  that complements the runtime-pm autosuspend and provides a lower
10b27e35aeSChris Wilson	  floor on the autosuspend delay.
11b27e35aeSChris Wilson
12b27e35aeSChris Wilson	  May be 0 to disable the extra delay and solely use the device level
13b27e35aeSChris Wilson	  runtime pm autosuspend delay tunable.
14b27e35aeSChris Wilson
157ce99d24SChris Wilsonconfig DRM_I915_SPIN_REQUEST
16ea60f4bdSChris Wilson	int "Busywait for request completion (us)"
177ce99d24SChris Wilson	default 5 # microseconds
187ce99d24SChris Wilson	help
197ce99d24SChris Wilson	  Before sleeping waiting for a request (GPU operation) to complete,
207ce99d24SChris Wilson	  we may spend some time polling for its completion. As the IRQ may
217ce99d24SChris Wilson	  take a non-negligible time to setup, we do a short spin first to
227ce99d24SChris Wilson	  check if the request will complete in the time it would have taken
237ce99d24SChris Wilson	  us to enable the interrupt.
247ce99d24SChris Wilson
257ce99d24SChris Wilson	  May be 0 to disable the initial spin. In practice, we estimate
267ce99d24SChris Wilson	  the cost of enabling the interrupt (if currently disabled) to be
277ce99d24SChris Wilson	  a few microseconds.
28*a8c51ed2SChris Wilson
29*a8c51ed2SChris Wilsonconfig DRM_I915_STOP_TIMEOUT
30*a8c51ed2SChris Wilson	int "How long to wait for an engine to quiesce gracefully before reset (ms)"
31*a8c51ed2SChris Wilson	default 100 # milliseconds
32*a8c51ed2SChris Wilson	help
33*a8c51ed2SChris Wilson	  By stopping submission and sleeping for a short time before resetting
34*a8c51ed2SChris Wilson	  the GPU, we allow the innocent contexts also on the system to quiesce.
35*a8c51ed2SChris Wilson	  It is then less likely for a hanging context to cause collateral
36*a8c51ed2SChris Wilson	  damage as the system is reset in order to recover. The corollary is
37*a8c51ed2SChris Wilson	  that the reset itself may take longer and so be more disruptive to
38*a8c51ed2SChris Wilson	  interactive or low latency workloads.
39