Home | History | Annotate | Line # | Download | only in i915
      1 # SPDX-License-Identifier: GPL-2.0-only
      2 config DRM_I915_WERROR
      3 	bool "Force GCC to throw an error instead of a warning when compiling"
      4 	# As this may inadvertently break the build, only allow the user
      5 	# to shoot oneself in the foot iff they aim really hard
      6 	depends on EXPERT
      7 	# We use the dependency on !COMPILE_TEST to not be enabled in
      8 	# allmodconfig or allyesconfig configurations
      9 	depends on !COMPILE_TEST
     10 	default n
     11 	help
     12 	  Add -Werror to the build flags for (and only for) i915.ko.
     13 	  Do not enable this unless you are writing code for the i915.ko module.
     14 
     15 	  Recommended for driver developers only.
     16 
     17 	  If in doubt, say "N".
     18 
     19 config DRM_I915_DEBUG
     20 	bool "Enable additional driver debugging"
     21 	depends on DRM_I915
     22 	select DEBUG_FS
     23 	select PREEMPT_COUNT
     24 	select I2C_CHARDEV
     25 	select STACKDEPOT
     26 	select DRM_DP_AUX_CHARDEV
     27 	select X86_MSR # used by igt/pm_rpm
     28 	select DRM_VGEM # used by igt/prime_vgem (dmabuf interop checks)
     29 	select DRM_DEBUG_MM if DRM=y
     30 	select DRM_EXPORT_FOR_TESTS if m
     31 	select DRM_DEBUG_SELFTEST
     32 	select DMABUF_SELFTESTS
     33 	select SW_SYNC # signaling validation framework (igt/syncobj*)
     34 	select DRM_I915_SW_FENCE_DEBUG_OBJECTS
     35 	select DRM_I915_SELFTEST
     36 	select DRM_I915_DEBUG_RUNTIME_PM
     37 	select DRM_I915_DEBUG_MMIO
     38 	default n
     39 	help
     40 	  Choose this option to turn on extra driver debugging that may affect
     41 	  performance but will catch some internal issues.
     42 
     43 	  Recommended for driver developers only.
     44 
     45 	  If in doubt, say "N".
     46 
     47 config DRM_I915_DEBUG_MMIO
     48 	bool "Always insert extra checks around mmio access by default"
     49 	default n
     50 	help
     51 	  By default, always enables the extra sanity checks (extra register
     52 	  reads) around every mmio (register) access that will slow the system
     53 	  down. This sets the default value of i915.mmio_debug to -1 and can
     54 	  be overridden at module load.
     55 
     56 	  Recommended for driver developers only.
     57 
     58 	  If in doubt, say "N".
     59 
     60 config DRM_I915_DEBUG_GEM
     61 	bool "Insert extra checks into the GEM internals"
     62 	default n
     63 	depends on DRM_I915_WERROR
     64 	help
     65 	  Enable extra sanity checks (including BUGs) along the GEM driver
     66 	  paths that may slow the system down and if hit hang the machine.
     67 
     68 	  Recommended for driver developers only.
     69 
     70 	  If in doubt, say "N".
     71 
     72 config DRM_I915_ERRLOG_GEM
     73 	bool "Insert extra logging (very verbose) for common GEM errors"
     74 	default n
     75 	depends on DRM_I915_DEBUG_GEM
     76 	help
     77 	  Enable additional logging that may help track down the cause of
     78 	  principally userspace errors.
     79 
     80 	  Recommended for driver developers only.
     81 
     82 	  If in doubt, say "N".
     83 
     84 config DRM_I915_TRACE_GEM
     85 	bool "Insert extra ftrace output from the GEM internals"
     86 	depends on DRM_I915_DEBUG_GEM
     87 	select TRACING
     88 	default n
     89 	help
     90 	  Enable additional and verbose debugging output that will spam
     91 	  ordinary tests, but may be vital for post-mortem debugging when
     92 	  used with /proc/sys/kernel/ftrace_dump_on_oops
     93 
     94 	  Recommended for driver developers only.
     95 
     96 	  If in doubt, say "N".
     97 
     98 config DRM_I915_TRACE_GTT
     99 	bool "Insert extra ftrace output from the GTT internals"
    100 	depends on DRM_I915_DEBUG_GEM
    101 	select TRACING
    102 	default n
    103 	help
    104 	  Enable additional and verbose debugging output that will spam
    105 	  ordinary tests, but may be vital for post-mortem debugging when
    106 	  used with /proc/sys/kernel/ftrace_dump_on_oops
    107 
    108 	  Recommended for driver developers only.
    109 
    110 	  If in doubt, say "N".
    111 
    112 config DRM_I915_SW_FENCE_DEBUG_OBJECTS
    113 	bool "Enable additional driver debugging for fence objects"
    114 	depends on DRM_I915
    115 	select DEBUG_OBJECTS
    116 	default n
    117 	help
    118 	  Choose this option to turn on extra driver debugging that may affect
    119 	  performance but will catch some internal issues.
    120 
    121 	  Recommended for driver developers only.
    122 
    123 	  If in doubt, say "N".
    124 
    125 config DRM_I915_SW_FENCE_CHECK_DAG
    126 	bool "Enable additional driver debugging for detecting dependency cycles"
    127 	depends on DRM_I915
    128 	default n
    129 	help
    130 	  Choose this option to turn on extra driver debugging that may affect
    131 	  performance but will catch some internal issues.
    132 
    133 	  Recommended for driver developers only.
    134 
    135 	  If in doubt, say "N".
    136 
    137 config DRM_I915_DEBUG_GUC
    138 	bool "Enable additional driver debugging for GuC"
    139 	depends on DRM_I915
    140 	default n
    141 	help
    142 	  Choose this option to turn on extra driver debugging that may affect
    143 	  performance but will help resolve GuC related issues.
    144 
    145 	  Recommended for driver developers only.
    146 
    147 	  If in doubt, say "N".
    148 
    149 config DRM_I915_SELFTEST
    150 	bool "Enable selftests upon driver load"
    151 	depends on DRM_I915
    152 	default n
    153 	select DRM_EXPORT_FOR_TESTS if m
    154 	select FAULT_INJECTION
    155 	select PRIME_NUMBERS
    156 	help
    157 	  Choose this option to allow the driver to perform selftests upon
    158 	  loading; also requires the i915.selftest=1 module parameter. To
    159 	  exit the module after running the selftests (i.e. to prevent normal
    160 	  module initialisation afterwards) use i915.selftest=-1.
    161 
    162 	  Recommended for driver developers only.
    163 
    164 	  If in doubt, say "N".
    165 
    166 config DRM_I915_SELFTEST_BROKEN
    167 	bool "Enable broken and dangerous selftests"
    168 	depends on DRM_I915_SELFTEST
    169 	depends on BROKEN
    170 	default n
    171 	help
    172 	  This option enables the execution of selftests that are "dangerous"
    173 	  and may trigger unintended HW side-effects as they break strict
    174 	  rules given in the HW specification. For science.
    175 
    176 	  Recommended for masochistic driver developers only.
    177 
    178 	  If in doubt, say "N".
    179 
    180 config DRM_I915_LOW_LEVEL_TRACEPOINTS
    181 	bool "Enable low level request tracing events"
    182 	depends on DRM_I915
    183 	default n
    184 	help
    185 	  Choose this option to turn on low level request tracing events.
    186 	  This provides the ability to precisely monitor engine utilisation
    187 	  and also analyze the request dependency resolving timeline.
    188 
    189 	  If in doubt, say "N".
    190 
    191 config DRM_I915_DEBUG_VBLANK_EVADE
    192 	bool "Enable extra debug warnings for vblank evasion"
    193 	depends on DRM_I915
    194 	default n
    195 	help
    196 	  Choose this option to turn on extra debug warnings for the
    197 	  vblank evade mechanism. This gives a warning every time the
    198 	  the deadline allotted for the vblank evade critical section
    199 	  is exceeded, even if there isn't an actual risk of missing
    200 	  the vblank.
    201 
    202 	  If in doubt, say "N".
    203 
    204 config DRM_I915_DEBUG_RUNTIME_PM
    205 	bool "Enable extra state checking for runtime PM"
    206 	depends on DRM_I915
    207 	default n
    208 	select STACKDEPOT
    209 	help
    210 	  Choose this option to turn on extra state checking for the
    211 	  runtime PM functionality. This may introduce overhead during
    212 	  driver loading, suspend and resume operations.
    213 
    214 	  If in doubt, say "N"
    215