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