linux/drivers/gpu/drm/renesas/shmobile/shmob_drm_crtc.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * shmob_drm_crtc.c  --  SH Mobile DRM CRTCs
 *
 * Copyright (C) 2012 Renesas Electronics Corporation
 *
 * Laurent Pinchart ([email protected])
 */

#include <linux/clk.h>
#include <linux/media-bus-format.h>
#include <linux/of.h>
#include <linux/of_graph.h>
#include <linux/pm_runtime.h>

#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_atomic_state_helper.h>
#include <drm/drm_atomic_uapi.h>
#include <drm/drm_bridge.h>
#include <drm/drm_bridge_connector.h>
#include <drm/drm_crtc.h>
#include <drm/drm_crtc_helper.h>
#include <drm/drm_fb_dma_helper.h>
#include <drm/drm_fourcc.h>
#include <drm/drm_framebuffer.h>
#include <drm/drm_gem_dma_helper.h>
#include <drm/drm_modeset_helper.h>
#include <drm/drm_modeset_helper_vtables.h>
#include <drm/drm_panel.h>
#include <drm/drm_probe_helper.h>
#include <drm/drm_simple_kms_helper.h>
#include <drm/drm_vblank.h>

#include <video/videomode.h>

#include "shmob_drm_crtc.h"
#include "shmob_drm_drv.h"
#include "shmob_drm_kms.h"
#include "shmob_drm_plane.h"
#include "shmob_drm_regs.h"

/* -----------------------------------------------------------------------------
 * Page Flip
 */

void shmob_drm_crtc_finish_page_flip(struct shmob_drm_crtc *scrtc)
{}

static bool shmob_drm_crtc_page_flip_pending(struct shmob_drm_crtc *scrtc)
{}

static void shmob_drm_crtc_wait_page_flip(struct shmob_drm_crtc *scrtc)
{}

/* -----------------------------------------------------------------------------
 * CRTC
 */

static const struct {} shmob_drm_bus_fmts[] =;

static void shmob_drm_crtc_setup_geometry(struct shmob_drm_crtc *scrtc)
{}

static void shmob_drm_crtc_start_stop(struct shmob_drm_crtc *scrtc, bool start)
{}

static inline struct shmob_drm_crtc *to_shmob_crtc(struct drm_crtc *crtc)
{}

static void shmob_drm_crtc_atomic_enable(struct drm_crtc *crtc,
					 struct drm_atomic_state *state)
{}

static void shmob_drm_crtc_atomic_disable(struct drm_crtc *crtc,
					  struct drm_atomic_state *state)
{}

static void shmob_drm_crtc_atomic_flush(struct drm_crtc *crtc,
					struct drm_atomic_state *state)
{}

static const struct drm_crtc_helper_funcs crtc_helper_funcs =;

static int shmob_drm_crtc_page_flip(struct drm_crtc *crtc,
				    struct drm_framebuffer *fb,
				    struct drm_pending_vblank_event *event,
				    uint32_t page_flip_flags,
				    struct drm_modeset_acquire_ctx *ctx)
{}

static void shmob_drm_crtc_enable_vblank(struct shmob_drm_device *sdev,
					 bool enable)
{}

static int shmob_drm_enable_vblank(struct drm_crtc *crtc)
{}

static void shmob_drm_disable_vblank(struct drm_crtc *crtc)
{}

static const struct drm_crtc_funcs crtc_funcs =;

int shmob_drm_crtc_create(struct shmob_drm_device *sdev)
{}

/* -----------------------------------------------------------------------------
 * Legacy Encoder
 */

static bool shmob_drm_encoder_mode_fixup(struct drm_encoder *encoder,
					 const struct drm_display_mode *mode,
					 struct drm_display_mode *adjusted_mode)
{}

static const struct drm_encoder_helper_funcs encoder_helper_funcs =;

/* -----------------------------------------------------------------------------
 * Encoder
 */

int shmob_drm_encoder_create(struct shmob_drm_device *sdev)
{}

/* -----------------------------------------------------------------------------
 * Legacy Connector
 */

static inline struct shmob_drm_connector *to_shmob_connector(struct drm_connector *connector)
{}

static int shmob_drm_connector_get_modes(struct drm_connector *connector)
{}

static struct drm_encoder *
shmob_drm_connector_best_encoder(struct drm_connector *connector)
{}

static const struct drm_connector_helper_funcs connector_helper_funcs =;

static void shmob_drm_connector_destroy(struct drm_connector *connector)
{}

static const struct drm_connector_funcs connector_funcs =;

static struct drm_connector *
shmob_drm_connector_init(struct shmob_drm_device *sdev,
			 struct drm_encoder *encoder)
{}

/* -----------------------------------------------------------------------------
 * Connector
 */

int shmob_drm_connector_create(struct shmob_drm_device *sdev,
			       struct drm_encoder *encoder)
{}