1/* SPDX-License-Identifier: GPL-2.0+ */
2/*
3 * shmob_drm_kms.h  --  SH Mobile DRM Mode Setting
4 *
5 * Copyright (C) 2012 Renesas Electronics Corporation
6 *
7 * Laurent Pinchart (laurent.pinchart@ideasonboard.com)
8 */
9
10#ifndef __SHMOB_DRM_KMS_H__
11#define __SHMOB_DRM_KMS_H__
12
13#include <linux/types.h>
14
15struct drm_gem_dma_object;
16struct shmob_drm_device;
17
18struct shmob_drm_format_info {
19	u32 fourcc;
20	u32 lddfr;	/* LCD Data Format Register */
21	u16 ldbbsifr;	/* CHn Source Image Format Register low bits */
22	u8 ldddsr;	/* LCDC Input Image Data Swap Register low bits */
23	u8 bpp;
24};
25
26#define shmob_drm_format_is_yuv(format)	((format)->lddfr & LDDFR_CC)
27
28const struct shmob_drm_format_info *shmob_drm_format_info(u32 fourcc);
29
30int shmob_drm_modeset_init(struct shmob_drm_device *sdev);
31
32#endif /* __SHMOB_DRM_KMS_H__ */
33