mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

Add DT support, by: 1. Creating a panel bridge from DT, and attaching it to the encoder, 2. Replacing the custom connector with a bridge connector, 3. Obtaining clock configuration based on the compatible value. Note that for now the driver uses a fixed clock configuration selecting the bus clock, as the current code to select other clock inputs needs changes to support any other SoCs than SH7724. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://lore.kernel.org/r/6185ab76aa300fa402e4f6610b2109665f2d8a1c.1694767209.git.geert+renesas@glider.be
46 lines
1.1 KiB
C
46 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* shmob_drm_crtc.h -- SH Mobile DRM CRTCs
|
|
*
|
|
* Copyright (C) 2012 Renesas Electronics Corporation
|
|
*
|
|
* Laurent Pinchart (laurent.pinchart@ideasonboard.com)
|
|
*/
|
|
|
|
#ifndef __SHMOB_DRM_CRTC_H__
|
|
#define __SHMOB_DRM_CRTC_H__
|
|
|
|
#include <drm/drm_crtc.h>
|
|
#include <drm/drm_connector.h>
|
|
#include <drm/drm_encoder.h>
|
|
|
|
#include <linux/wait.h>
|
|
|
|
#include <video/videomode.h>
|
|
|
|
struct drm_pending_vblank_event;
|
|
struct shmob_drm_device;
|
|
struct shmob_drm_format_info;
|
|
|
|
struct shmob_drm_crtc {
|
|
struct drm_crtc base;
|
|
|
|
struct drm_pending_vblank_event *event;
|
|
wait_queue_head_t flip_wait;
|
|
};
|
|
|
|
/* Legacy connector */
|
|
struct shmob_drm_connector {
|
|
struct drm_connector base;
|
|
struct drm_encoder *encoder;
|
|
const struct videomode *mode;
|
|
};
|
|
|
|
int shmob_drm_crtc_create(struct shmob_drm_device *sdev);
|
|
void shmob_drm_crtc_finish_page_flip(struct shmob_drm_crtc *scrtc);
|
|
|
|
int shmob_drm_encoder_create(struct shmob_drm_device *sdev);
|
|
int shmob_drm_connector_create(struct shmob_drm_device *sdev,
|
|
struct drm_encoder *encoder);
|
|
|
|
#endif /* __SHMOB_DRM_CRTC_H__ */
|