summaryrefslogtreecommitdiff
path: root/include/drm/intel
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2026-03-31 14:40:57 +0300
committerJani Nikula <jani.nikula@intel.com>2026-04-01 12:29:17 +0300
commit0563e28e0851ff327542f180974d14c525981a6f (patch)
treedc8e3c4f3dd42fe1741b5c69b5d228fda172a3e1 /include/drm/intel
parentcad5a5ed3aed160c0ae371e60c9e94a967391b3d (diff)
downloadlinux-next-0563e28e0851ff327542f180974d14c525981a6f.tar.gz
linux-next-0563e28e0851ff327542f180974d14c525981a6f.zip
drm/i915: move VLV IOSF sideband to display parent interface
Remove another direct dependency from display to i915 core by moving the VLV IOSF sideband calls to the display parent interface. Xe doesn't need this, so it'll remain optional and NULL. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patch.msgid.link/15dfc67b58f5b5b381be0f9bc66d60b43bebfecf.1774957233.git.jani.nikula@intel.com Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Diffstat (limited to 'include/drm/intel')
-rw-r--r--include/drm/intel/display_parent_interface.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/drm/intel/display_parent_interface.h b/include/drm/intel/display_parent_interface.h
index 97ec94a2e749..c0d18d5577f3 100644
--- a/include/drm/intel/display_parent_interface.h
+++ b/include/drm/intel/display_parent_interface.h
@@ -6,6 +6,7 @@
#include <linux/types.h>
+enum vlv_iosf_sb_unit;
struct dma_fence;
struct drm_crtc;
struct drm_device;
@@ -176,6 +177,13 @@ struct intel_display_stolen_interface {
void (*node_free)(const struct intel_stolen_node *node);
};
+struct intel_display_vlv_iosf_interface {
+ void (*get)(struct drm_device *drm, unsigned long unit_mask);
+ void (*put)(struct drm_device *drm, unsigned long unit_mask);
+ u32 (*read)(struct drm_device *drm, enum vlv_iosf_sb_unit unit, u32 addr);
+ int (*write)(struct drm_device *drm, enum vlv_iosf_sb_unit unit, u32 addr, u32 val);
+};
+
struct intel_display_vma_interface {
int (*fence_id)(const struct i915_vma *vma);
};
@@ -235,6 +243,9 @@ struct intel_display_parent_interface {
/** @stolen: Stolen memory. */
const struct intel_display_stolen_interface *stolen;
+ /** @vlv_iosf: VLV IOSF sideband. Optional. */
+ const struct intel_display_vlv_iosf_interface *vlv_iosf;
+
/** @vma: VMA interface. Optional. */
const struct intel_display_vma_interface *vma;