Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/i915: stop including display/intel_display_{core, limits}.h from i915_drv.h

Make i915->display pointer opaque to most of core i915 driver. Lots of
places now need explicit include of intel_display_core.h, or a more
specific header.

With this dependency broken, changes in display should cause radically
less recompilation of i915.

Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
Link: https://lore.kernel.org/r/b381b59acb7e4f600e0282935a68aedf77768109.1747907216.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>

Jani Nikula 62384da2 6f142c52

+41 -5
+1
drivers/gpu/drm/i915/display/intel_bios.c
··· 37 37 38 38 #include "i915_drv.h" 39 39 #include "intel_display.h" 40 + #include "intel_display_core.h" 40 41 #include "intel_display_rpm.h" 41 42 #include "intel_display_types.h" 42 43 #include "intel_gmbus.h"
+1
drivers/gpu/drm/i915/display/intel_display_conversion.c
··· 2 2 /* Copyright © 2024 Intel Corporation */ 3 3 4 4 #include "i915_drv.h" 5 + #include "intel_display_conversion.h" 5 6 6 7 struct intel_display *__i915_to_display(struct drm_i915_private *i915) 7 8 {
+1
drivers/gpu/drm/i915/display/intel_display_driver.c
··· 27 27 #include "intel_cdclk.h" 28 28 #include "intel_color.h" 29 29 #include "intel_crtc.h" 30 + #include "intel_display_core.h" 30 31 #include "intel_display_debugfs.h" 31 32 #include "intel_display_driver.h" 32 33 #include "intel_display_irq.h"
+1
drivers/gpu/drm/i915/display/intel_display_reset.c
··· 8 8 #include "i915_drv.h" 9 9 #include "intel_clock_gating.h" 10 10 #include "intel_cx0_phy.h" 11 + #include "intel_display_core.h" 11 12 #include "intel_display_driver.h" 12 13 #include "intel_display_reset.h" 13 14 #include "intel_display_types.h"
+1
drivers/gpu/drm/i915/display/intel_display_rpm.c
··· 2 2 /* Copyright © 2025 Intel Corporation */ 3 3 4 4 #include "i915_drv.h" 5 + #include "intel_display_core.h" 5 6 #include "intel_display_rpm.h" 6 7 #include "intel_runtime_pm.h" 7 8
+1
drivers/gpu/drm/i915/display/intel_display_rps.c
··· 9 9 #include "gt/intel_rps.h" 10 10 #include "i915_drv.h" 11 11 #include "i915_reg.h" 12 + #include "intel_display_core.h" 12 13 #include "intel_display_irq.h" 13 14 #include "intel_display_rps.h" 14 15 #include "intel_display_types.h"
+1
drivers/gpu/drm/i915/display/intel_dpt.c
··· 9 9 #include "gt/gen8_ppgtt.h" 10 10 11 11 #include "i915_drv.h" 12 + #include "intel_display_core.h" 12 13 #include "intel_display_rpm.h" 13 14 #include "intel_display_types.h" 14 15 #include "intel_dpt.h"
+1 -1
drivers/gpu/drm/i915/display/intel_encoder.c
··· 6 6 #include <linux/workqueue.h> 7 7 8 8 #include "i915_drv.h" 9 - 9 + #include "intel_display_core.h" 10 10 #include "intel_display_types.h" 11 11 #include "intel_encoder.h" 12 12
+1
drivers/gpu/drm/i915/display/intel_fb.c
··· 14 14 #include "intel_atomic_plane.h" 15 15 #include "intel_bo.h" 16 16 #include "intel_display.h" 17 + #include "intel_display_core.h" 17 18 #include "intel_display_types.h" 18 19 #include "intel_dpt.h" 19 20 #include "intel_fb.h"
+1
drivers/gpu/drm/i915/display/intel_fb_bo.c
··· 8 8 #include "gem/i915_gem_object.h" 9 9 10 10 #include "i915_drv.h" 11 + #include "intel_display_core.h" 11 12 #include "intel_display_types.h" 12 13 #include "intel_fb.h" 13 14 #include "intel_fb_bo.h"
+1
drivers/gpu/drm/i915/display/intel_fb_pin.c
··· 12 12 13 13 #include "i915_drv.h" 14 14 #include "intel_atomic_plane.h" 15 + #include "intel_display_core.h" 15 16 #include "intel_display_rpm.h" 16 17 #include "intel_display_types.h" 17 18 #include "intel_dpt.h"
+1
drivers/gpu/drm/i915/display/intel_fbdev_fb.c
··· 8 8 #include "gem/i915_gem_lmem.h" 9 9 10 10 #include "i915_drv.h" 11 + #include "intel_display_core.h" 11 12 #include "intel_display_types.h" 12 13 #include "intel_fb.h" 13 14 #include "intel_fbdev_fb.h"
+1
drivers/gpu/drm/i915/display/intel_hotplug.c
··· 30 30 #include "i915_irq.h" 31 31 #include "intel_connector.h" 32 32 #include "intel_display_power.h" 33 + #include "intel_display_core.h" 33 34 #include "intel_display_rpm.h" 34 35 #include "intel_display_types.h" 35 36 #include "intel_hdcp.h"
+1
drivers/gpu/drm/i915/display/intel_opregion.c
··· 35 35 #include "i915_drv.h" 36 36 #include "intel_acpi.h" 37 37 #include "intel_backlight.h" 38 + #include "intel_display_core.h" 38 39 #include "intel_display_types.h" 39 40 #include "intel_opregion.h" 40 41 #include "intel_pci_config.h"
+1
drivers/gpu/drm/i915/display/intel_plane_initial.c
··· 9 9 #include "intel_atomic_plane.h" 10 10 #include "intel_crtc.h" 11 11 #include "intel_display.h" 12 + #include "intel_display_core.h" 12 13 #include "intel_display_types.h" 13 14 #include "intel_fb.h" 14 15 #include "intel_frontbuffer.h"
+1
drivers/gpu/drm/i915/gem/selftests/i915_gem_client_blt.c
··· 5 5 6 6 #include "i915_selftest.h" 7 7 8 + #include "display/intel_display_core.h" 8 9 #include "gt/intel_context.h" 9 10 #include "gt/intel_engine_regs.h" 10 11 #include "gt/intel_engine_user.h"
+2
drivers/gpu/drm/i915/gt/intel_gt_pm.c
··· 6 6 #include <linux/string_helpers.h> 7 7 #include <linux/suspend.h> 8 8 9 + #include "display/intel_display_power.h" 10 + 9 11 #include "i915_drv.h" 10 12 #include "i915_irq.h" 11 13 #include "i915_params.h"
+1
drivers/gpu/drm/i915/gvt/cmd_parser.c
··· 50 50 #include "trace.h" 51 51 52 52 #include "display/i9xx_plane_regs.h" 53 + #include "display/intel_display_core.h" 53 54 #include "display/intel_sprite_regs.h" 54 55 #include "gem/i915_gem_context.h" 55 56 #include "gem/i915_gem_pm.h"
+1
drivers/gpu/drm/i915/gvt/display.c
··· 43 43 #include "display/intel_crt_regs.h" 44 44 #include "display/intel_cursor_regs.h" 45 45 #include "display/intel_display.h" 46 + #include "display/intel_display_core.h" 46 47 #include "display/intel_dpio_phy.h" 47 48 #include "display/intel_sprite_regs.h" 48 49
+1
drivers/gpu/drm/i915/gvt/edid.c
··· 35 35 #include <drm/display/drm_dp.h> 36 36 37 37 #include "display/intel_dp_aux_regs.h" 38 + #include "display/intel_gmbus.h" 38 39 #include "display/intel_gmbus_regs.h" 39 40 #include "gvt.h" 40 41 #include "i915_drv.h"
+1
drivers/gpu/drm/i915/gvt/fb_decoder.c
··· 42 42 43 43 #include "display/i9xx_plane_regs.h" 44 44 #include "display/intel_cursor_regs.h" 45 + #include "display/intel_display_core.h" 45 46 #include "display/intel_sprite_regs.h" 46 47 #include "display/skl_universal_plane_regs.h" 47 48
+1
drivers/gpu/drm/i915/gvt/handlers.c
··· 47 47 #include "display/i9xx_plane_regs.h" 48 48 #include "display/intel_crt_regs.h" 49 49 #include "display/intel_cursor_regs.h" 50 + #include "display/intel_display_core.h" 50 51 #include "display/intel_display_types.h" 51 52 #include "display/intel_dmc_regs.h" 52 53 #include "display/intel_dp_aux_regs.h"
+2
drivers/gpu/drm/i915/i915_driver.c
··· 51 51 #include "display/intel_bw.h" 52 52 #include "display/intel_cdclk.h" 53 53 #include "display/intel_crtc.h" 54 + #include "display/intel_display_core.h" 54 55 #include "display/intel_display_driver.h" 55 56 #include "display/intel_dmc.h" 56 57 #include "display/intel_dp.h" ··· 59 58 #include "display/intel_encoder.h" 60 59 #include "display/intel_fbdev.h" 61 60 #include "display/intel_hotplug.h" 61 + #include "display/intel_opregion.h" 62 62 #include "display/intel_overlay.h" 63 63 #include "display/intel_pch_refclk.h" 64 64 #include "display/intel_pps.h"
+3 -4
drivers/gpu/drm/i915/i915_drv.h
··· 32 32 33 33 #include <uapi/drm/i915_drm.h> 34 34 35 + #include <linux/pci.h> 35 36 #include <linux/pm_qos.h> 36 37 37 38 #include <drm/ttm/ttm_device.h> 38 - 39 - #include "display/intel_display_limits.h" 40 - #include "display/intel_display_core.h" 41 39 42 40 #include "gem/i915_gem_context_types.h" 43 41 #include "gem/i915_gem_shrinker.h" ··· 61 63 #include "intel_uncore.h" 62 64 63 65 struct drm_i915_clock_gating_funcs; 64 - struct vlv_s0ix_state; 66 + struct intel_display; 65 67 struct intel_pxp; 68 + struct vlv_s0ix_state; 66 69 67 70 #define GEM_QUIRK_PIN_SWIZZLED_PAGES BIT(0) 68 71
+1
drivers/gpu/drm/i915/i915_irq.c
··· 33 33 34 34 #include <drm/drm_drv.h> 35 35 36 + #include "display/intel_display_core.h" 36 37 #include "display/intel_display_irq.h" 37 38 #include "display/intel_hotplug.h" 38 39 #include "display/intel_hotplug_irq.h"
+2
drivers/gpu/drm/i915/i915_switcheroo.c
··· 5 5 6 6 #include <linux/vga_switcheroo.h> 7 7 8 + #include "display/intel_display_core.h" 9 + 8 10 #include "i915_driver.h" 9 11 #include "i915_drv.h" 10 12 #include "i915_switcheroo.h"
+1
drivers/gpu/drm/i915/intel_clock_gating.c
··· 27 27 28 28 #include "display/i9xx_plane_regs.h" 29 29 #include "display/intel_display.h" 30 + #include "display/intel_display_core.h" 30 31 31 32 #include "gt/intel_engine_regs.h" 32 33 #include "gt/intel_gt.h"
+1
drivers/gpu/drm/i915/intel_gvt_mmio_table.c
··· 11 11 #include "display/intel_color_regs.h" 12 12 #include "display/intel_crt_regs.h" 13 13 #include "display/intel_cursor_regs.h" 14 + #include "display/intel_display_core.h" 14 15 #include "display/intel_display_types.h" 15 16 #include "display/intel_dmc_regs.h" 16 17 #include "display/intel_dp_aux_regs.h"
+2
drivers/gpu/drm/i915/intel_uncore.c
··· 24 24 #include <drm/drm_managed.h> 25 25 #include <linux/pm_runtime.h> 26 26 27 + #include "display/intel_display_core.h" 28 + 27 29 #include "gt/intel_gt.h" 28 30 #include "gt/intel_engine_regs.h" 29 31 #include "gt/intel_gt_regs.h"
+2
drivers/gpu/drm/i915/selftests/mock_gem_device.c
··· 28 28 29 29 #include <drm/drm_managed.h> 30 30 31 + #include "display/intel_display_device.h" 32 + 31 33 #include "gt/intel_gt.h" 32 34 #include "gt/intel_gt_requests.h" 33 35 #include "gt/mock_engine.h"
+2
drivers/gpu/drm/i915/soc/intel_dram.c
··· 5 5 6 6 #include <linux/string_helpers.h> 7 7 8 + #include "../display/intel_display_core.h" /* FIXME */ 9 + 8 10 #include "i915_drv.h" 9 11 #include "i915_reg.h" 10 12 #include "intel_dram.h"
+2
drivers/gpu/drm/i915/soc/intel_gmch.c
··· 10 10 #include <drm/drm_managed.h> 11 11 #include <drm/intel/i915_drm.h> 12 12 13 + #include "../display/intel_display_core.h" /* FIXME */ 14 + 13 15 #include "i915_drv.h" 14 16 #include "intel_gmch.h" 15 17 #include "intel_pci_config.h"