drm: Create drm legacy driver header
And move a few legayc functions to start things over there. It compiles ... Inspired by a patch from Dave Airlie, but with a split between drm.ko private legacy functions and stuff used by drivers. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
a677f4cc88
commit
4f03b1fc1e
11 changed files with 73 additions and 15 deletions
|
@ -29,6 +29,7 @@
|
||||||
* drivers use them, and removing them are API breaks.
|
* drivers use them, and removing them are API breaks.
|
||||||
*/
|
*/
|
||||||
#include <linux/list.h>
|
#include <linux/list.h>
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
struct agp_memory;
|
struct agp_memory;
|
||||||
struct drm_device;
|
struct drm_device;
|
||||||
|
|
|
@ -32,6 +32,8 @@
|
||||||
#ifndef _I810_DRV_H_
|
#ifndef _I810_DRV_H_
|
||||||
#define _I810_DRV_H_
|
#define _I810_DRV_H_
|
||||||
|
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
/* General customization:
|
/* General customization:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -31,6 +31,7 @@
|
||||||
#include <drm/drmP.h>
|
#include <drm/drmP.h>
|
||||||
#include <drm/drm_crtc_helper.h>
|
#include <drm/drm_crtc_helper.h>
|
||||||
#include <drm/drm_fb_helper.h>
|
#include <drm/drm_fb_helper.h>
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
#include "intel_drv.h"
|
#include "intel_drv.h"
|
||||||
#include <drm/i915_drm.h>
|
#include <drm/i915_drm.h>
|
||||||
#include "i915_drv.h"
|
#include "i915_drv.h"
|
||||||
|
|
|
@ -31,6 +31,8 @@
|
||||||
#ifndef __MGA_DRV_H__
|
#ifndef __MGA_DRV_H__
|
||||||
#define __MGA_DRV_H__
|
#define __MGA_DRV_H__
|
||||||
|
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
/* General customization:
|
/* General customization:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -36,6 +36,8 @@
|
||||||
#define __R128_DRV_H__
|
#define __R128_DRV_H__
|
||||||
|
|
||||||
#include <drm/ati_pcigart.h>
|
#include <drm/ati_pcigart.h>
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
/* General customization:
|
/* General customization:
|
||||||
*/
|
*/
|
||||||
#define DRIVER_AUTHOR "Gareth Hughes, VA Linux Systems Inc."
|
#define DRIVER_AUTHOR "Gareth Hughes, VA Linux Systems Inc."
|
||||||
|
|
|
@ -33,6 +33,7 @@
|
||||||
|
|
||||||
#include <linux/firmware.h>
|
#include <linux/firmware.h>
|
||||||
#include <linux/platform_device.h>
|
#include <linux/platform_device.h>
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
#include <drm/ati_pcigart.h>
|
#include <drm/ati_pcigart.h>
|
||||||
#include "radeon_family.h"
|
#include "radeon_family.h"
|
||||||
|
|
|
@ -26,6 +26,8 @@
|
||||||
#ifndef __SAVAGE_DRV_H__
|
#ifndef __SAVAGE_DRV_H__
|
||||||
#define __SAVAGE_DRV_H__
|
#define __SAVAGE_DRV_H__
|
||||||
|
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
#define DRIVER_AUTHOR "Felix Kuehling"
|
#define DRIVER_AUTHOR "Felix Kuehling"
|
||||||
|
|
||||||
#define DRIVER_NAME "savage"
|
#define DRIVER_NAME "savage"
|
||||||
|
|
|
@ -28,6 +28,8 @@
|
||||||
#ifndef _SIS_DRV_H_
|
#ifndef _SIS_DRV_H_
|
||||||
#define _SIS_DRV_H_
|
#define _SIS_DRV_H_
|
||||||
|
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
/* General customization:
|
/* General customization:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,8 @@
|
||||||
#define _VIA_DRV_H_
|
#define _VIA_DRV_H_
|
||||||
|
|
||||||
#include <drm/drm_mm.h>
|
#include <drm/drm_mm.h>
|
||||||
|
#include <drm/drm_legacy.h>
|
||||||
|
|
||||||
#define DRIVER_AUTHOR "Various"
|
#define DRIVER_AUTHOR "Various"
|
||||||
|
|
||||||
#define DRIVER_NAME "via"
|
#define DRIVER_NAME "via"
|
||||||
|
|
|
@ -1309,21 +1309,6 @@ extern int drm_pci_set_unique(struct drm_device *dev,
|
||||||
struct drm_master *master,
|
struct drm_master *master,
|
||||||
struct drm_unique *u);
|
struct drm_unique *u);
|
||||||
|
|
||||||
/* Legacy Support */
|
|
||||||
|
|
||||||
int drm_legacy_addmap(struct drm_device *d, resource_size_t offset,
|
|
||||||
unsigned int size, enum drm_map_type type,
|
|
||||||
enum drm_map_flags flags, struct drm_local_map **map_p);
|
|
||||||
int drm_legacy_rmmap(struct drm_device *d, struct drm_local_map *map);
|
|
||||||
int drm_legacy_rmmap_locked(struct drm_device *d, struct drm_local_map *map);
|
|
||||||
struct drm_local_map *drm_legacy_getsarea(struct drm_device *dev);
|
|
||||||
|
|
||||||
int drm_legacy_addbufs_agp(struct drm_device *d, struct drm_buf_desc *req);
|
|
||||||
int drm_legacy_addbufs_pci(struct drm_device *d, struct drm_buf_desc *req);
|
|
||||||
|
|
||||||
void drm_legacy_idlelock_take(struct drm_lock_data *lock);
|
|
||||||
void drm_legacy_idlelock_release(struct drm_lock_data *lock);
|
|
||||||
|
|
||||||
/* sysfs support (drm_sysfs.c) */
|
/* sysfs support (drm_sysfs.c) */
|
||||||
struct drm_sysfs_class;
|
struct drm_sysfs_class;
|
||||||
extern struct class *drm_sysfs_create(struct module *owner, char *name);
|
extern struct class *drm_sysfs_create(struct module *owner, char *name);
|
||||||
|
|
58
include/drm/drm_legacy.h
Normal file
58
include/drm/drm_legacy.h
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
#ifndef __DRM_DRM_LEGACY_H__
|
||||||
|
#define __DRM_DRM_LEGACY_H__
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Legacy driver interfaces for the Direct Rendering Manager
|
||||||
|
*
|
||||||
|
* Copyright 1999 Precision Insight, Inc., Cedar Park, Texas.
|
||||||
|
* Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California.
|
||||||
|
* Copyright (c) 2009-2010, Code Aurora Forum.
|
||||||
|
* All rights reserved.
|
||||||
|
* Copyright © 2014 Intel Corporation
|
||||||
|
* Daniel Vetter <daniel.vetter@ffwll.ch>
|
||||||
|
*
|
||||||
|
* Author: Rickard E. (Rik) Faith <faith@valinux.com>
|
||||||
|
* Author: Gareth Hughes <gareth@valinux.com>
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
|
* to deal in the Software without restriction, including without limitation
|
||||||
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice (including the next
|
||||||
|
* paragraph) shall be included in all copies or substantial portions of the
|
||||||
|
* Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
* VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||||
|
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||||
|
* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
|
* OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Legacy Support for palateontologic DRM drivers
|
||||||
|
*
|
||||||
|
* If you add a new driver and it uses any of these functions or structures,
|
||||||
|
* you're doing it terribly wrong.
|
||||||
|
*/
|
||||||
|
|
||||||
|
int drm_legacy_addmap(struct drm_device *d, resource_size_t offset,
|
||||||
|
unsigned int size, enum drm_map_type type,
|
||||||
|
enum drm_map_flags flags, struct drm_local_map **map_p);
|
||||||
|
int drm_legacy_rmmap(struct drm_device *d, struct drm_local_map *map);
|
||||||
|
int drm_legacy_rmmap_locked(struct drm_device *d, struct drm_local_map *map);
|
||||||
|
struct drm_local_map *drm_legacy_getsarea(struct drm_device *dev);
|
||||||
|
|
||||||
|
int drm_legacy_addbufs_agp(struct drm_device *d, struct drm_buf_desc *req);
|
||||||
|
int drm_legacy_addbufs_pci(struct drm_device *d, struct drm_buf_desc *req);
|
||||||
|
|
||||||
|
void drm_legacy_idlelock_take(struct drm_lock_data *lock);
|
||||||
|
void drm_legacy_idlelock_release(struct drm_lock_data *lock);
|
||||||
|
|
||||||
|
#endif /* __DRM_DRM_LEGACY_H__ */
|
Loading…
Add table
Reference in a new issue