mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-13 16:36:53 +07:00
18c3b30083
sun4i_crtc controls the backend and tcon hardware blocks of the display pipeline. Pass pointers to the underlying devices into the crtc init function, instead of trying to fetch them from the drm_device structure. This avoids the headache of trying to figure out which devices the crtc is actually associated with. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
35 lines
915 B
C
35 lines
915 B
C
/*
|
|
* Copyright (C) 2015 Free Electrons
|
|
* Copyright (C) 2015 NextThing Co
|
|
*
|
|
* Maxime Ripard <maxime.ripard@free-electrons.com>
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation; either version 2 of
|
|
* the License, or (at your option) any later version.
|
|
*/
|
|
|
|
#ifndef _SUN4I_CRTC_H_
|
|
#define _SUN4I_CRTC_H_
|
|
|
|
struct sun4i_crtc {
|
|
struct drm_crtc crtc;
|
|
struct drm_pending_vblank_event *event;
|
|
|
|
struct sun4i_backend *backend;
|
|
struct sun4i_tcon *tcon;
|
|
struct sun4i_layer **layers;
|
|
};
|
|
|
|
static inline struct sun4i_crtc *drm_crtc_to_sun4i_crtc(struct drm_crtc *crtc)
|
|
{
|
|
return container_of(crtc, struct sun4i_crtc, crtc);
|
|
}
|
|
|
|
struct sun4i_crtc *sun4i_crtc_init(struct drm_device *drm,
|
|
struct sun4i_backend *backend,
|
|
struct sun4i_tcon *tcon);
|
|
|
|
#endif /* _SUN4I_CRTC_H_ */
|