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

drm/i915/rom: convert intel_rom interfaces to struct drm_device

Reduce the display dependency on struct drm_i915_private and i915_drv.h
by converting the rom interface to struct drm_device.

Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://patch.msgid.link/20251110112048.2366725-1-jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>

+9 -10
+2 -4
drivers/gpu/drm/i915/display/intel_bios.c
··· 36 36 37 37 #include "soc/intel_rom.h" 38 38 39 - #include "i915_drv.h" 40 39 #include "intel_display.h" 41 40 #include "intel_display_core.h" 42 41 #include "intel_display_rpm.h" ··· 3144 3145 static const struct vbt_header *intel_bios_get_vbt(struct intel_display *display, 3145 3146 size_t *sizep) 3146 3147 { 3147 - struct drm_i915_private *i915 = to_i915(display->drm); 3148 3148 const struct vbt_header *vbt = NULL; 3149 3149 3150 3150 vbt = firmware_get_vbt(display, sizep); ··· 3157 3159 */ 3158 3160 if (!vbt && display->platform.dgfx) 3159 3161 with_intel_display_rpm(display) 3160 - vbt = oprom_get_vbt(display, intel_rom_spi(i915), sizep, "SPI flash"); 3162 + vbt = oprom_get_vbt(display, intel_rom_spi(display->drm), sizep, "SPI flash"); 3161 3163 3162 3164 if (!vbt) 3163 3165 with_intel_display_rpm(display) 3164 - vbt = oprom_get_vbt(display, intel_rom_pci(i915), sizep, "PCI ROM"); 3166 + vbt = oprom_get_vbt(display, intel_rom_pci(display->drm), sizep, "PCI ROM"); 3165 3167 3166 3168 return vbt; 3167 3169 }
+4 -3
drivers/gpu/drm/i915/soc/intel_rom.c
··· 39 39 return spi_read32(rom, offset) & 0xffff; 40 40 } 41 41 42 - struct intel_rom *intel_rom_spi(struct drm_i915_private *i915) 42 + struct intel_rom *intel_rom_spi(struct drm_device *drm) 43 43 { 44 + struct drm_i915_private *i915 = to_i915(drm); 44 45 struct intel_rom *rom; 45 46 u32 static_region; 46 47 ··· 86 85 pci_unmap_rom(rom->pdev, rom->oprom); 87 86 } 88 87 89 - struct intel_rom *intel_rom_pci(struct drm_i915_private *i915) 88 + struct intel_rom *intel_rom_pci(struct drm_device *drm) 90 89 { 91 90 struct intel_rom *rom; 92 91 ··· 94 93 if (!rom) 95 94 return NULL; 96 95 97 - rom->pdev = to_pci_dev(i915->drm.dev); 96 + rom->pdev = to_pci_dev(drm->dev); 98 97 99 98 rom->oprom = pci_map_rom(rom->pdev, &rom->size); 100 99 if (!rom->oprom) {
+3 -3
drivers/gpu/drm/i915/soc/intel_rom.h
··· 8 8 9 9 #include <linux/types.h> 10 10 11 - struct drm_i915_private; 11 + struct drm_device; 12 12 struct intel_rom; 13 13 14 - struct intel_rom *intel_rom_spi(struct drm_i915_private *i915); 15 - struct intel_rom *intel_rom_pci(struct drm_i915_private *i915); 14 + struct intel_rom *intel_rom_spi(struct drm_device *drm); 15 + struct intel_rom *intel_rom_pci(struct drm_device *drm); 16 16 17 17 u32 intel_rom_read32(struct intel_rom *rom, loff_t offset); 18 18 u16 intel_rom_read16(struct intel_rom *rom, loff_t offset);