1 #ifndef __DRM_DRM_LEGACY_H__ 2 #define __DRM_DRM_LEGACY_H__ 3 4 /* 5 * Legacy driver interfaces for the Direct Rendering Manager 6 * 7 * Copyright 1999 Precision Insight, Inc., Cedar Park, Texas. 8 * Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California. 9 * Copyright (c) 2009-2010, Code Aurora Forum. 10 * All rights reserved. 11 * Copyright © 2014 Intel Corporation 12 * Daniel Vetter <daniel.vetter@ffwll.ch> 13 * 14 * Author: Rickard E. (Rik) Faith <faith@valinux.com> 15 * Author: Gareth Hughes <gareth@valinux.com> 16 * 17 * Permission is hereby granted, free of charge, to any person obtaining a 18 * copy of this software and associated documentation files (the "Software"), 19 * to deal in the Software without restriction, including without limitation 20 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 21 * and/or sell copies of the Software, and to permit persons to whom the 22 * Software is furnished to do so, subject to the following conditions: 23 * 24 * The above copyright notice and this permission notice (including the next 25 * paragraph) shall be included in all copies or substantial portions of the 26 * Software. 27 * 28 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 29 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 30 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 31 * VA LINUX SYSTEMS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 32 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 33 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 34 * OTHER DEALINGS IN THE SOFTWARE. 35 */ 36 37 38 /* 39 * Legacy Support for palateontologic DRM drivers 40 * 41 * If you add a new driver and it uses any of these functions or structures, 42 * you're doing it terribly wrong. 43 */ 44 45 int drm_legacy_addmap(struct drm_device *d, resource_size_t offset, 46 unsigned int size, enum drm_map_type type, 47 enum drm_map_flags flags, struct drm_local_map **map_p); 48 int drm_legacy_rmmap(struct drm_device *d, struct drm_local_map *map); 49 int drm_legacy_rmmap_locked(struct drm_device *d, struct drm_local_map *map); 50 struct drm_local_map *drm_legacy_getsarea(struct drm_device *dev); 51 52 int drm_legacy_addbufs_agp(struct drm_device *d, struct drm_buf_desc *req); 53 int drm_legacy_addbufs_pci(struct drm_device *d, struct drm_buf_desc *req); 54 55 void drm_legacy_idlelock_take(struct drm_lock_data *lock); 56 void drm_legacy_idlelock_release(struct drm_lock_data *lock); 57 58 /* drm_pci.c dma alloc wrappers */ 59 void __drm_legacy_pci_free(struct drm_device *dev, drm_dma_handle_t * dmah); 60 61 #endif /* __DRM_DRM_LEGACY_H__ */ 62