GNU Linux-libre 4.19.207-gnu1
[releases.git] / drivers / gpu / drm / shmobile / shmob_drm_drv.h
1 /*
2  * shmob_drm.h  --  SH Mobile DRM driver
3  *
4  * Copyright (C) 2012 Renesas Electronics Corporation
5  *
6  * Laurent Pinchart (laurent.pinchart@ideasonboard.com)
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  */
13
14 #ifndef __SHMOB_DRM_DRV_H__
15 #define __SHMOB_DRM_DRV_H__
16
17 #include <linux/kernel.h>
18 #include <linux/platform_data/shmob_drm.h>
19 #include <linux/spinlock.h>
20
21 #include "shmob_drm_crtc.h"
22
23 struct clk;
24 struct device;
25 struct drm_device;
26
27 struct shmob_drm_device {
28         struct device *dev;
29         const struct shmob_drm_platform_data *pdata;
30
31         void __iomem *mmio;
32         struct clk *clock;
33         u32 lddckr;
34         u32 ldmt1r;
35
36         spinlock_t irq_lock;            /* Protects hardware LDINTR register */
37
38         struct drm_device *ddev;
39
40         struct shmob_drm_crtc crtc;
41         struct shmob_drm_encoder encoder;
42         struct shmob_drm_connector connector;
43 };
44
45 #endif /* __SHMOB_DRM_DRV_H__ */