1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * shmob_drm.h -- SH Mobile DRM driver 4 * 5 * Copyright (C) 2012 Renesas Electronics Corporation 6 * 7 * Laurent Pinchart (laurent.pinchart@ideasonboard.com) 8 */ 9 10 #ifndef __SHMOB_DRM_DRV_H__ 11 #define __SHMOB_DRM_DRV_H__ 12 13 #include <linux/kernel.h> 14 #include <linux/platform_data/shmob_drm.h> 15 #include <linux/spinlock.h> 16 17 #include "shmob_drm_crtc.h" 18 19 struct clk; 20 struct device; 21 struct drm_device; 22 23 struct shmob_drm_device { 24 struct device *dev; 25 const struct shmob_drm_platform_data *pdata; 26 27 void __iomem *mmio; 28 struct clk *clock; 29 u32 lddckr; 30 u32 ldmt1r; 31 32 unsigned int irq; 33 spinlock_t irq_lock; /* Protects hardware LDINTR register */ 34 35 struct drm_device *ddev; 36 37 struct shmob_drm_crtc crtc; 38 struct shmob_drm_encoder encoder; 39 struct shmob_drm_connector connector; 40 }; 41 42 #endif /* __SHMOB_DRM_DRV_H__ */ 43