![Laurent Pinchart](/assets/img/avatar_default.png)
The dss_mgr_ops operations implemented by the omapdrm side have to look up the omap_crtc objects from global variables as they are only passed a channel number. In order to remove global variables in the omapdrm driver pass the omap_drm_private pointer to the dss_mgr_ops. This requires storing a pointer to the omap_drm_private in a global variable on the DSS side as a temporary measure until the omapdrm and omapdss drivers get merged. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
44 lines
1.4 KiB
C
44 lines
1.4 KiB
C
/*
|
|
* omap_crtc.h -- OMAP DRM CRTC
|
|
*
|
|
* Copyright (C) 2011 Texas Instruments
|
|
* Author: Rob Clark <rob@ti.com>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License version 2 as published by
|
|
* the Free Software Foundation.
|
|
*
|
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
* more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along with
|
|
* this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef __OMAPDRM_CRTC_H__
|
|
#define __OMAPDRM_CRTC_H__
|
|
|
|
#include <linux/types.h>
|
|
|
|
enum omap_channel;
|
|
|
|
struct drm_crtc;
|
|
struct drm_device;
|
|
struct drm_plane;
|
|
struct omap_dss_device;
|
|
struct videomode;
|
|
|
|
struct videomode *omap_crtc_timings(struct drm_crtc *crtc);
|
|
enum omap_channel omap_crtc_channel(struct drm_crtc *crtc);
|
|
void omap_crtc_pre_init(struct omap_drm_private *priv);
|
|
void omap_crtc_pre_uninit(void);
|
|
struct drm_crtc *omap_crtc_init(struct drm_device *dev,
|
|
struct drm_plane *plane, struct omap_dss_device *dssdev);
|
|
int omap_crtc_wait_pending(struct drm_crtc *crtc);
|
|
void omap_crtc_error_irq(struct drm_crtc *crtc, u32 irqstatus);
|
|
void omap_crtc_vblank_irq(struct drm_crtc *crtc);
|
|
|
|
#endif /* __OMAPDRM_CRTC_H__ */
|