1=========================== 2 drm/i915 Intel GFX Driver 3=========================== 4 5The drm/i915 driver supports all (with the exception of some very early 6models) integrated GFX chipsets with both Intel display and rendering 7blocks. This excludes a set of SoC platforms with an SGX rendering unit, 8those have basic support through the gma500 drm driver. 9 10Core Driver Infrastructure 11========================== 12 13This section covers core driver infrastructure used by both the display 14and the GEM parts of the driver. 15 16Runtime Power Management 17------------------------ 18 19.. kernel-doc:: drivers/gpu/drm/i915/intel_runtime_pm.c 20 :doc: runtime pm 21 22.. kernel-doc:: drivers/gpu/drm/i915/intel_runtime_pm.c 23 :internal: 24 25.. kernel-doc:: drivers/gpu/drm/i915/intel_uncore.c 26 :internal: 27 28Interrupt Handling 29------------------ 30 31.. kernel-doc:: drivers/gpu/drm/i915/i915_irq.c 32 :doc: interrupt handling 33 34.. kernel-doc:: drivers/gpu/drm/i915/i915_irq.c 35 :functions: intel_irq_init intel_irq_init_hw intel_hpd_init 36 37.. kernel-doc:: drivers/gpu/drm/i915/i915_irq.c 38 :functions: intel_runtime_pm_disable_interrupts 39 40.. kernel-doc:: drivers/gpu/drm/i915/i915_irq.c 41 :functions: intel_runtime_pm_enable_interrupts 42 43Intel GVT-g Guest Support(vGPU) 44------------------------------- 45 46.. kernel-doc:: drivers/gpu/drm/i915/i915_vgpu.c 47 :doc: Intel GVT-g guest support 48 49.. kernel-doc:: drivers/gpu/drm/i915/i915_vgpu.c 50 :internal: 51 52Intel GVT-g Host Support(vGPU device model) 53------------------------------------------- 54 55.. kernel-doc:: drivers/gpu/drm/i915/intel_gvt.c 56 :doc: Intel GVT-g host support 57 58.. kernel-doc:: drivers/gpu/drm/i915/intel_gvt.c 59 :internal: 60 61Display Hardware Handling 62========================= 63 64This section covers everything related to the display hardware including 65the mode setting infrastructure, plane, sprite and cursor handling and 66display, output probing and related topics. 67 68Mode Setting Infrastructure 69--------------------------- 70 71The i915 driver is thus far the only DRM driver which doesn't use the 72common DRM helper code to implement mode setting sequences. Thus it has 73its own tailor-made infrastructure for executing a display configuration 74change. 75 76Frontbuffer Tracking 77-------------------- 78 79.. kernel-doc:: drivers/gpu/drm/i915/intel_frontbuffer.c 80 :doc: frontbuffer tracking 81 82.. kernel-doc:: drivers/gpu/drm/i915/intel_frontbuffer.h 83 :internal: 84 85.. kernel-doc:: drivers/gpu/drm/i915/intel_frontbuffer.c 86 :internal: 87 88.. kernel-doc:: drivers/gpu/drm/i915/i915_gem.c 89 :functions: i915_gem_track_fb 90 91Display FIFO Underrun Reporting 92------------------------------- 93 94.. kernel-doc:: drivers/gpu/drm/i915/intel_fifo_underrun.c 95 :doc: fifo underrun handling 96 97.. kernel-doc:: drivers/gpu/drm/i915/intel_fifo_underrun.c 98 :internal: 99 100Plane Configuration 101------------------- 102 103This section covers plane configuration and composition with the primary 104plane, sprites, cursors and overlays. This includes the infrastructure 105to do atomic vsync'ed updates of all this state and also tightly coupled 106topics like watermark setup and computation, framebuffer compression and 107panel self refresh. 108 109Atomic Plane Helpers 110-------------------- 111 112.. kernel-doc:: drivers/gpu/drm/i915/intel_atomic_plane.c 113 :doc: atomic plane helpers 114 115.. kernel-doc:: drivers/gpu/drm/i915/intel_atomic_plane.c 116 :internal: 117 118Output Probing 119-------------- 120 121This section covers output probing and related infrastructure like the 122hotplug interrupt storm detection and mitigation code. Note that the 123i915 driver still uses most of the common DRM helper code for output 124probing, so those sections fully apply. 125 126Hotplug 127------- 128 129.. kernel-doc:: drivers/gpu/drm/i915/intel_hotplug.c 130 :doc: Hotplug 131 132.. kernel-doc:: drivers/gpu/drm/i915/intel_hotplug.c 133 :internal: 134 135High Definition Audio 136--------------------- 137 138.. kernel-doc:: drivers/gpu/drm/i915/intel_audio.c 139 :doc: High Definition Audio over HDMI and Display Port 140 141.. kernel-doc:: drivers/gpu/drm/i915/intel_audio.c 142 :internal: 143 144.. kernel-doc:: include/drm/i915_component.h 145 :internal: 146 147Intel HDMI LPE Audio Support 148---------------------------- 149 150.. kernel-doc:: drivers/gpu/drm/i915/intel_lpe_audio.c 151 :doc: LPE Audio integration for HDMI or DP playback 152 153.. kernel-doc:: drivers/gpu/drm/i915/intel_lpe_audio.c 154 :internal: 155 156Panel Self Refresh PSR (PSR/SRD) 157-------------------------------- 158 159.. kernel-doc:: drivers/gpu/drm/i915/intel_psr.c 160 :doc: Panel Self Refresh (PSR/SRD) 161 162.. kernel-doc:: drivers/gpu/drm/i915/intel_psr.c 163 :internal: 164 165Frame Buffer Compression (FBC) 166------------------------------ 167 168.. kernel-doc:: drivers/gpu/drm/i915/intel_fbc.c 169 :doc: Frame Buffer Compression (FBC) 170 171.. kernel-doc:: drivers/gpu/drm/i915/intel_fbc.c 172 :internal: 173 174Display Refresh Rate Switching (DRRS) 175------------------------------------- 176 177.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 178 :doc: Display Refresh Rate Switching (DRRS) 179 180.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 181 :functions: intel_dp_set_drrs_state 182 183.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 184 :functions: intel_edp_drrs_enable 185 186.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 187 :functions: intel_edp_drrs_disable 188 189.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 190 :functions: intel_edp_drrs_invalidate 191 192.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 193 :functions: intel_edp_drrs_flush 194 195.. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c 196 :functions: intel_dp_drrs_init 197 198DPIO 199---- 200 201.. kernel-doc:: drivers/gpu/drm/i915/intel_dpio_phy.c 202 :doc: DPIO 203 204CSR firmware support for DMC 205---------------------------- 206 207.. kernel-doc:: drivers/gpu/drm/i915/intel_csr.c 208 :doc: csr support for dmc 209 210.. kernel-doc:: drivers/gpu/drm/i915/intel_csr.c 211 :internal: 212 213Video BIOS Table (VBT) 214---------------------- 215 216.. kernel-doc:: drivers/gpu/drm/i915/intel_bios.c 217 :doc: Video BIOS Table (VBT) 218 219.. kernel-doc:: drivers/gpu/drm/i915/intel_bios.c 220 :internal: 221 222.. kernel-doc:: drivers/gpu/drm/i915/intel_vbt_defs.h 223 :internal: 224 225Memory Management and Command Submission 226======================================== 227 228This sections covers all things related to the GEM implementation in the 229i915 driver. 230 231Batchbuffer Parsing 232------------------- 233 234.. kernel-doc:: drivers/gpu/drm/i915/i915_cmd_parser.c 235 :doc: batch buffer command parser 236 237.. kernel-doc:: drivers/gpu/drm/i915/i915_cmd_parser.c 238 :internal: 239 240Batchbuffer Pools 241----------------- 242 243.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_batch_pool.c 244 :doc: batch pool 245 246.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_batch_pool.c 247 :internal: 248 249Logical Rings, Logical Ring Contexts and Execlists 250-------------------------------------------------- 251 252.. kernel-doc:: drivers/gpu/drm/i915/intel_lrc.c 253 :doc: Logical Rings, Logical Ring Contexts and Execlists 254 255.. kernel-doc:: drivers/gpu/drm/i915/intel_lrc.c 256 :internal: 257 258Global GTT views 259---------------- 260 261.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_gtt.c 262 :doc: Global GTT views 263 264.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_gtt.c 265 :internal: 266 267GTT Fences and Swizzling 268------------------------ 269 270.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c 271 :internal: 272 273Global GTT Fence Handling 274~~~~~~~~~~~~~~~~~~~~~~~~~ 275 276.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c 277 :doc: fence register handling 278 279Hardware Tiling and Swizzling Details 280~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 281 282.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence_reg.c 283 :doc: tiling swizzling details 284 285Object Tiling IOCTLs 286-------------------- 287 288.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_tiling.c 289 :internal: 290 291.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_tiling.c 292 :doc: buffer object tiling 293 294Buffer Object Eviction 295---------------------- 296 297This section documents the interface functions for evicting buffer 298objects to make space available in the virtual gpu address spaces. Note 299that this is mostly orthogonal to shrinking buffer objects caches, which 300has the goal to make main memory (shared with the gpu through the 301unified memory architecture) available. 302 303.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_evict.c 304 :internal: 305 306Buffer Object Memory Shrinking 307------------------------------ 308 309This section documents the interface function for shrinking memory usage 310of buffer object caches. Shrinking is used to make main memory 311available. Note that this is mostly orthogonal to evicting buffer 312objects, which has the goal to make space in gpu virtual address spaces. 313 314.. kernel-doc:: drivers/gpu/drm/i915/i915_gem_shrinker.c 315 :internal: 316 317GuC 318=== 319 320GuC-specific firmware loader 321---------------------------- 322 323.. kernel-doc:: drivers/gpu/drm/i915/intel_guc_loader.c 324 :doc: GuC-specific firmware loader 325 326.. kernel-doc:: drivers/gpu/drm/i915/intel_guc_loader.c 327 :internal: 328 329GuC-based command submission 330---------------------------- 331 332.. kernel-doc:: drivers/gpu/drm/i915/i915_guc_submission.c 333 :doc: GuC-based command submission 334 335.. kernel-doc:: drivers/gpu/drm/i915/i915_guc_submission.c 336 :internal: 337 338GuC Firmware Layout 339------------------- 340 341.. kernel-doc:: drivers/gpu/drm/i915/intel_guc_fwif.h 342 :doc: GuC Firmware Layout 343 344Tracing 345======= 346 347This sections covers all things related to the tracepoints implemented 348in the i915 driver. 349 350i915_ppgtt_create and i915_ppgtt_release 351---------------------------------------- 352 353.. kernel-doc:: drivers/gpu/drm/i915/i915_trace.h 354 :doc: i915_ppgtt_create and i915_ppgtt_release tracepoints 355 356i915_context_create and i915_context_free 357----------------------------------------- 358 359.. kernel-doc:: drivers/gpu/drm/i915/i915_trace.h 360 :doc: i915_context_create and i915_context_free tracepoints 361 362switch_mm 363--------- 364 365.. kernel-doc:: drivers/gpu/drm/i915/i915_trace.h 366 :doc: switch_mm tracepoint 367 368.. WARNING: DOCPROC directive not supported: !Cdrivers/gpu/drm/i915/i915_irq.c 369