]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/rom: convert intel_rom interfaces to struct drm_device
authorJani Nikula <jani.nikula@intel.com>
Mon, 10 Nov 2025 11:20:48 +0000 (13:20 +0200)
committerJani Nikula <jani.nikula@intel.com>
Tue, 11 Nov 2025 10:48:53 +0000 (12:48 +0200)
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>
drivers/gpu/drm/i915/display/intel_bios.c
drivers/gpu/drm/i915/soc/intel_rom.c
drivers/gpu/drm/i915/soc/intel_rom.h

index 852e4d6db8a3cc18b4d17b2180fd50f7cec0e200..4b41068e9e35f2d5acb7991536c51ca7b6024b7d 100644 (file)
@@ -36,7 +36,6 @@
 
 #include "soc/intel_rom.h"
 
-#include "i915_drv.h"
 #include "intel_display.h"
 #include "intel_display_core.h"
 #include "intel_display_rpm.h"
@@ -3145,7 +3144,6 @@ err_free_rom:
 static const struct vbt_header *intel_bios_get_vbt(struct intel_display *display,
                                                   size_t *sizep)
 {
-       struct drm_i915_private *i915 = to_i915(display->drm);
        const struct vbt_header *vbt = NULL;
 
        vbt = firmware_get_vbt(display, sizep);
@@ -3159,11 +3157,11 @@ static const struct vbt_header *intel_bios_get_vbt(struct intel_display *display
         */
        if (!vbt && display->platform.dgfx)
                with_intel_display_rpm(display)
-                       vbt = oprom_get_vbt(display, intel_rom_spi(i915), sizep, "SPI flash");
+                       vbt = oprom_get_vbt(display, intel_rom_spi(display->drm), sizep, "SPI flash");
 
        if (!vbt)
                with_intel_display_rpm(display)
-                       vbt = oprom_get_vbt(display, intel_rom_pci(i915), sizep, "PCI ROM");
+                       vbt = oprom_get_vbt(display, intel_rom_pci(display->drm), sizep, "PCI ROM");
 
        return vbt;
 }
index 243d98cab8c38facc17ccfdce321580c70f6af3e..2f17dc856e7f392f623c75307e4eec8b03722718 100644 (file)
@@ -39,8 +39,9 @@ static u16 spi_read16(struct intel_rom *rom, loff_t offset)
        return spi_read32(rom, offset) & 0xffff;
 }
 
-struct intel_rom *intel_rom_spi(struct drm_i915_private *i915)
+struct intel_rom *intel_rom_spi(struct drm_device *drm)
 {
+       struct drm_i915_private *i915 = to_i915(drm);
        struct intel_rom *rom;
        u32 static_region;
 
@@ -85,7 +86,7 @@ static void pci_free(struct intel_rom *rom)
        pci_unmap_rom(rom->pdev, rom->oprom);
 }
 
-struct intel_rom *intel_rom_pci(struct drm_i915_private *i915)
+struct intel_rom *intel_rom_pci(struct drm_device *drm)
 {
        struct intel_rom *rom;
 
@@ -93,7 +94,7 @@ struct intel_rom *intel_rom_pci(struct drm_i915_private *i915)
        if (!rom)
                return NULL;
 
-       rom->pdev = to_pci_dev(i915->drm.dev);
+       rom->pdev = to_pci_dev(drm->dev);
 
        rom->oprom = pci_map_rom(rom->pdev, &rom->size);
        if (!rom->oprom) {
index fb2979c8ef7fdb59343e61b34177ad1b75eb11ec..4e59a375787ecd144bc6a8e9612c5f129ce820c6 100644 (file)
@@ -8,11 +8,11 @@
 
 #include <linux/types.h>
 
-struct drm_i915_private;
+struct drm_device;
 struct intel_rom;
 
-struct intel_rom *intel_rom_spi(struct drm_i915_private *i915);
-struct intel_rom *intel_rom_pci(struct drm_i915_private *i915);
+struct intel_rom *intel_rom_spi(struct drm_device *drm);
+struct intel_rom *intel_rom_pci(struct drm_device *drm);
 
 u32 intel_rom_read32(struct intel_rom *rom, loff_t offset);
 u16 intel_rom_read16(struct intel_rom *rom, loff_t offset);