linux/drivers/gpu/drm/imx/imx-drm.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef _IMX_DRM_H_
   3#define _IMX_DRM_H_
   4
   5struct device_node;
   6struct drm_crtc;
   7struct drm_connector;
   8struct drm_device;
   9struct drm_display_mode;
  10struct drm_encoder;
  11struct drm_fbdev_cma;
  12struct drm_framebuffer;
  13struct drm_plane;
  14struct imx_drm_crtc;
  15struct platform_device;
  16
  17struct imx_crtc_state {
  18        struct drm_crtc_state                   base;
  19        u32                                     bus_format;
  20        u32                                     bus_flags;
  21        int                                     di_hsync_pin;
  22        int                                     di_vsync_pin;
  23};
  24
  25static inline struct imx_crtc_state *to_imx_crtc_state(struct drm_crtc_state *s)
  26{
  27        return container_of(s, struct imx_crtc_state, base);
  28}
  29int imx_drm_init_drm(struct platform_device *pdev,
  30                int preferred_bpp);
  31int imx_drm_exit_drm(void);
  32
  33extern struct platform_driver ipu_drm_driver;
  34
  35void imx_drm_mode_config_init(struct drm_device *drm);
  36
  37struct drm_gem_cma_object *imx_drm_fb_get_obj(struct drm_framebuffer *fb);
  38
  39int imx_drm_encoder_parse_of(struct drm_device *drm,
  40        struct drm_encoder *encoder, struct device_node *np);
  41
  42void imx_drm_connector_destroy(struct drm_connector *connector);
  43void imx_drm_encoder_destroy(struct drm_encoder *encoder);
  44
  45int ipu_planes_assign_pre(struct drm_device *dev,
  46                          struct drm_atomic_state *state);
  47
  48#endif /* _IMX_DRM_H_ */
  49