summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/display/intel_display_conversion.h
blob: 46c7208d42ba2a6417b1aac8e06f72ea36a8ea46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* SPDX-License-Identifier: MIT */
/* Copyright © 2024 Intel Corporation */

/*
 * This header is for transitional struct intel_display conversion helpers only.
 */

#ifndef __INTEL_DISPLAY_CONVERSION__
#define __INTEL_DISPLAY_CONVERSION__

struct drm_device;
struct drm_i915_private;
struct intel_display;

struct intel_display *__i915_to_display(struct drm_i915_private *i915);
struct intel_display *__drm_to_display(struct drm_device *drm);
/*
 * Transitional macro to optionally convert struct drm_i915_private * to struct
 * intel_display *, also accepting the latter.
 */
#define __to_intel_display(p)						\
	_Generic(p,							\
		 const struct drm_i915_private *: __i915_to_display((struct drm_i915_private *)(p)), \
		 struct drm_i915_private *: __i915_to_display((struct drm_i915_private *)(p)), \
		 const struct intel_display *: (p),			\
		 struct intel_display *: (p))

#endif /* __INTEL_DISPLAY_CONVERSION__ */