shmob_drm_drv.h 829 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  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. #ifndef __SHMOB_DRM_DRV_H__
  10. #define __SHMOB_DRM_DRV_H__
  11. #include <linux/kernel.h>
  12. #include <linux/platform_data/shmob_drm.h>
  13. #include <linux/spinlock.h>
  14. #include "shmob_drm_crtc.h"
  15. struct clk;
  16. struct device;
  17. struct drm_device;
  18. struct shmob_drm_device {
  19. struct device *dev;
  20. const struct shmob_drm_platform_data *pdata;
  21. void __iomem *mmio;
  22. struct clk *clock;
  23. u32 lddckr;
  24. u32 ldmt1r;
  25. spinlock_t irq_lock; /* Protects hardware LDINTR register */
  26. struct drm_device *ddev;
  27. struct shmob_drm_crtc crtc;
  28. struct shmob_drm_encoder encoder;
  29. struct shmob_drm_connector connector;
  30. };
  31. #endif /* __SHMOB_DRM_DRV_H__ */