mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-08-09 06:14:34 +02:00
This fbdev vma reuse hacks is a massive layering violation. It really does not belong in the fb pinning code. And it's in the way of properly abstracting this stuff, so kill it. I don't think this hack even does anything useful because the normal view will just use bo->ggtt_node when present, and the fbdev bo will be permanenly pinned with xe_bo_create_pin_map_at_novm() which does set up bo->ggtt_node. So we should never end up rebuilding the PTEs for the fbdev bo, even without the reuse hack. v2: Pimp the commit message a a bit (Jani) v3: Also nuke intel_fbdev_vma_pointer() Reviewed-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patch.msgid.link/20260508143426.26504-9-ville.syrjala@linux.intel.com
42 lines
1.1 KiB
C
42 lines
1.1 KiB
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2019 Intel Corporation
|
|
*/
|
|
|
|
#ifndef __INTEL_FBDEV_H__
|
|
#define __INTEL_FBDEV_H__
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct drm_fb_helper;
|
|
struct drm_fb_helper_surface_size;
|
|
struct intel_display;
|
|
struct intel_fbdev;
|
|
struct intel_framebuffer;
|
|
struct iosys_map;
|
|
|
|
#ifdef CONFIG_DRM_FBDEV_EMULATION
|
|
int intel_fbdev_driver_fbdev_probe(struct drm_fb_helper *helper,
|
|
struct drm_fb_helper_surface_size *sizes);
|
|
#define INTEL_FBDEV_DRIVER_OPS \
|
|
.fbdev_probe = intel_fbdev_driver_fbdev_probe
|
|
void intel_fbdev_setup(struct intel_display *display);
|
|
struct intel_framebuffer *intel_fbdev_framebuffer(struct intel_fbdev *fbdev);
|
|
void intel_fbdev_get_map(struct intel_display *display, struct iosys_map *map);
|
|
#else
|
|
#define INTEL_FBDEV_DRIVER_OPS \
|
|
.fbdev_probe = NULL
|
|
static inline void intel_fbdev_setup(struct intel_display *display)
|
|
{
|
|
}
|
|
static inline struct intel_framebuffer *intel_fbdev_framebuffer(struct intel_fbdev *fbdev)
|
|
{
|
|
return NULL;
|
|
}
|
|
static inline void intel_fbdev_get_map(struct intel_display *display, struct iosys_map *map)
|
|
{
|
|
}
|
|
#endif
|
|
|
|
#endif /* __INTEL_FBDEV_H__ */
|