11de72fafSDaniel Vetter /* 21de72fafSDaniel Vetter * Copyright (c) 2016 Intel Corporation 31de72fafSDaniel Vetter * 41de72fafSDaniel Vetter * Permission to use, copy, modify, distribute, and sell this software and its 51de72fafSDaniel Vetter * documentation for any purpose is hereby granted without fee, provided that 61de72fafSDaniel Vetter * the above copyright notice appear in all copies and that both that copyright 71de72fafSDaniel Vetter * notice and this permission notice appear in supporting documentation, and 81de72fafSDaniel Vetter * that the name of the copyright holders not be used in advertising or 91de72fafSDaniel Vetter * publicity pertaining to distribution of the software without specific, 101de72fafSDaniel Vetter * written prior permission. The copyright holders make no representations 111de72fafSDaniel Vetter * about the suitability of this software for any purpose. It is provided "as 121de72fafSDaniel Vetter * is" without express or implied warranty. 131de72fafSDaniel Vetter * 141de72fafSDaniel Vetter * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 151de72fafSDaniel Vetter * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 161de72fafSDaniel Vetter * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR 171de72fafSDaniel Vetter * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 181de72fafSDaniel Vetter * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 191de72fafSDaniel Vetter * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 201de72fafSDaniel Vetter * OF THIS SOFTWARE. 211de72fafSDaniel Vetter */ 221de72fafSDaniel Vetter 231de72fafSDaniel Vetter #ifndef __DRM_KMS_HELPER_H__ 241de72fafSDaniel Vetter #define __DRM_KMS_HELPER_H__ 251de72fafSDaniel Vetter 26e3b01f0dSSam Ravnborg struct drm_crtc; 27e3b01f0dSSam Ravnborg struct drm_crtc_funcs; 28e3b01f0dSSam Ravnborg struct drm_device; 29e3b01f0dSSam Ravnborg struct drm_framebuffer; 30e3b01f0dSSam Ravnborg struct drm_mode_fb_cmd2; 311de72fafSDaniel Vetter 321de72fafSDaniel Vetter void drm_helper_move_panel_connectors_to_head(struct drm_device *); 331de72fafSDaniel Vetter 34a3f913caSVille Syrjälä void drm_helper_mode_fill_fb_struct(struct drm_device *dev, 35a3f913caSVille Syrjälä struct drm_framebuffer *fb, 361de72fafSDaniel Vetter const struct drm_mode_fb_cmd2 *mode_cmd); 371de72fafSDaniel Vetter 381de72fafSDaniel Vetter int drm_crtc_init(struct drm_device *dev, struct drm_crtc *crtc, 391de72fafSDaniel Vetter const struct drm_crtc_funcs *funcs); 401de72fafSDaniel Vetter 41ca038cfbSNoralf Trønnes int drm_mode_config_helper_suspend(struct drm_device *dev); 42ca038cfbSNoralf Trønnes int drm_mode_config_helper_resume(struct drm_device *dev); 43ca038cfbSNoralf Trønnes 441de72fafSDaniel Vetter #endif 45