mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
caab277b1d
Based on 1 normalized pattern(s): this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details you should have received a copy of the gnu general public license along with this program if not see http www gnu org licenses extracted by the scancode license scanner the SPDX license identifier GPL-2.0-only has been chosen to replace the boilerplate/reference in 503 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Alexios Zavras <alexios.zavras@intel.com> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Enrico Weigelt <info@metux.net> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190602204653.811534538@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
89 lines
1.9 KiB
C
89 lines
1.9 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
|
|
* Author: Rob Clark <rob@ti.com>
|
|
*/
|
|
|
|
#ifndef __OMAPDRM_DRV_H__
|
|
#define __OMAPDRM_DRV_H__
|
|
|
|
#include <linux/module.h>
|
|
#include <linux/types.h>
|
|
#include <linux/workqueue.h>
|
|
|
|
#include <drm/drmP.h>
|
|
#include <drm/drm_gem.h>
|
|
#include <drm/omap_drm.h>
|
|
|
|
#include "dss/omapdss.h"
|
|
|
|
#include "omap_connector.h"
|
|
#include "omap_crtc.h"
|
|
#include "omap_encoder.h"
|
|
#include "omap_fb.h"
|
|
#include "omap_fbdev.h"
|
|
#include "omap_gem.h"
|
|
#include "omap_irq.h"
|
|
#include "omap_plane.h"
|
|
|
|
#define DBG(fmt, ...) DRM_DEBUG(fmt"\n", ##__VA_ARGS__)
|
|
#define VERB(fmt, ...) if (0) DRM_DEBUG(fmt, ##__VA_ARGS__) /* verbose debug */
|
|
|
|
#define MODULE_NAME "omapdrm"
|
|
|
|
struct omap_drm_usergart;
|
|
|
|
struct omap_drm_pipeline {
|
|
struct drm_crtc *crtc;
|
|
struct drm_encoder *encoder;
|
|
struct drm_connector *connector;
|
|
struct omap_dss_device *output;
|
|
unsigned int alias_id;
|
|
};
|
|
|
|
struct omap_drm_private {
|
|
struct drm_device *ddev;
|
|
struct device *dev;
|
|
u32 omaprev;
|
|
|
|
struct dss_device *dss;
|
|
struct dispc_device *dispc;
|
|
const struct dispc_ops *dispc_ops;
|
|
|
|
unsigned int num_pipes;
|
|
struct omap_drm_pipeline pipes[8];
|
|
struct omap_drm_pipeline *channels[8];
|
|
|
|
unsigned int num_planes;
|
|
struct drm_plane *planes[8];
|
|
|
|
struct drm_fb_helper *fbdev;
|
|
|
|
struct workqueue_struct *wq;
|
|
|
|
/* lock for obj_list below */
|
|
struct mutex list_lock;
|
|
|
|
/* list of GEM objects: */
|
|
struct list_head obj_list;
|
|
|
|
struct omap_drm_usergart *usergart;
|
|
bool has_dmm;
|
|
|
|
/* properties: */
|
|
struct drm_property *zorder_prop;
|
|
|
|
/* irq handling: */
|
|
spinlock_t wait_lock; /* protects the wait_list */
|
|
struct list_head wait_list; /* list of omap_irq_wait */
|
|
u32 irq_mask; /* enabled irqs in addition to wait_list */
|
|
|
|
/* memory bandwidth limit if it is needed on the platform */
|
|
unsigned int max_bandwidth;
|
|
};
|
|
|
|
|
|
int omap_debugfs_init(struct drm_minor *minor);
|
|
|
|
#endif /* __OMAPDRM_DRV_H__ */
|