Deleted Added
full compact
ttm_bo_driver.h (256281) ttm_bo_driver.h (275408)
1/**************************************************************************
2 *
3 * Copyright (c) 2006-2009 Vmware, Inc., Palo Alto, CA., USA
4 * All Rights Reserved.
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a
7 * copy of this software and associated documentation files (the
8 * "Software"), to deal in the Software without restriction, including

--- 13 unchanged lines hidden (view full) ---

22 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
23 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
24 * USE OR OTHER DEALINGS IN THE SOFTWARE.
25 *
26 **************************************************************************/
27/*
28 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
29 */
1/**************************************************************************
2 *
3 * Copyright (c) 2006-2009 Vmware, Inc., Palo Alto, CA., USA
4 * All Rights Reserved.
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a
7 * copy of this software and associated documentation files (the
8 * "Software"), to deal in the Software without restriction, including

--- 13 unchanged lines hidden (view full) ---

22 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
23 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
24 * USE OR OTHER DEALINGS IN THE SOFTWARE.
25 *
26 **************************************************************************/
27/*
28 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
29 */
30/* $FreeBSD: stable/10/sys/dev/drm2/ttm/ttm_bo_driver.h 254865 2013-08-25 14:53:39Z dumbbell $ */
30/* $FreeBSD: stable/10/sys/dev/drm2/ttm/ttm_bo_driver.h 275408 2014-12-02 14:09:54Z tijl $ */
31
32#ifndef _TTM_BO_DRIVER_H_
33#define _TTM_BO_DRIVER_H_
34
35#include <dev/drm2/drmP.h>
36#include <dev/drm2/ttm/ttm_bo_api.h>
37#include <dev/drm2/ttm/ttm_memory.h>
38#include <dev/drm2/ttm/ttm_module.h>

--- 946 unchanged lines hidden (view full) ---

985 *
986 * Utility function that returns the pgprot_t that should be used for
987 * setting up a PTE with the caching model indicated by @c_state.
988 */
989extern vm_memattr_t ttm_io_prot(uint32_t caching_flags);
990
991extern const struct ttm_mem_type_manager_func ttm_bo_manager_func;
992
31
32#ifndef _TTM_BO_DRIVER_H_
33#define _TTM_BO_DRIVER_H_
34
35#include <dev/drm2/drmP.h>
36#include <dev/drm2/ttm/ttm_bo_api.h>
37#include <dev/drm2/ttm/ttm_memory.h>
38#include <dev/drm2/ttm/ttm_module.h>

--- 946 unchanged lines hidden (view full) ---

985 *
986 * Utility function that returns the pgprot_t that should be used for
987 * setting up a PTE with the caching model indicated by @c_state.
988 */
989extern vm_memattr_t ttm_io_prot(uint32_t caching_flags);
990
991extern const struct ttm_mem_type_manager_func ttm_bo_manager_func;
992
993#if (defined(CONFIG_AGP) || (defined(CONFIG_AGP_MODULE) && defined(MODULE)))
993#if __OS_HAS_AGP
994#define TTM_HAS_AGP
994#define TTM_HAS_AGP
995#include <linux/agp_backend.h>
996
997/**
998 * ttm_agp_tt_create
999 *
1000 * @bdev: Pointer to a struct ttm_bo_device.
1001 * @bridge: The agp bridge this device is sitting on.
1002 * @size: Size of the data needed backing.
1003 * @page_flags: Page flags as identified by TTM_PAGE_FLAG_XX flags.
1004 * @dummy_read_page: See struct ttm_bo_device.
1005 *
1006 *
1007 * Create a TTM backend that uses the indicated AGP bridge as an aperture
1008 * for TT memory. This function uses the linux agpgart interface to
1009 * bind and unbind memory backing a ttm_tt.
1010 */
1011extern struct ttm_tt *ttm_agp_tt_create(struct ttm_bo_device *bdev,
995
996/**
997 * ttm_agp_tt_create
998 *
999 * @bdev: Pointer to a struct ttm_bo_device.
1000 * @bridge: The agp bridge this device is sitting on.
1001 * @size: Size of the data needed backing.
1002 * @page_flags: Page flags as identified by TTM_PAGE_FLAG_XX flags.
1003 * @dummy_read_page: See struct ttm_bo_device.
1004 *
1005 *
1006 * Create a TTM backend that uses the indicated AGP bridge as an aperture
1007 * for TT memory. This function uses the linux agpgart interface to
1008 * bind and unbind memory backing a ttm_tt.
1009 */
1010extern struct ttm_tt *ttm_agp_tt_create(struct ttm_bo_device *bdev,
1012 struct agp_bridge_data *bridge,
1011 device_t bridge,
1013 unsigned long size, uint32_t page_flags,
1014 struct vm_page *dummy_read_page);
1015int ttm_agp_tt_populate(struct ttm_tt *ttm);
1016void ttm_agp_tt_unpopulate(struct ttm_tt *ttm);
1017#endif
1018
1019int ttm_bo_cmp_rb_tree_items(struct ttm_buffer_object *a,
1020 struct ttm_buffer_object *b);
1021
1022RB_PROTOTYPE(ttm_bo_device_buffer_objects, ttm_buffer_object, vm_rb,
1023 ttm_bo_cmp_rb_tree_items);
1024
1025#endif
1012 unsigned long size, uint32_t page_flags,
1013 struct vm_page *dummy_read_page);
1014int ttm_agp_tt_populate(struct ttm_tt *ttm);
1015void ttm_agp_tt_unpopulate(struct ttm_tt *ttm);
1016#endif
1017
1018int ttm_bo_cmp_rb_tree_items(struct ttm_buffer_object *a,
1019 struct ttm_buffer_object *b);
1020
1021RB_PROTOTYPE(ttm_bo_device_buffer_objects, ttm_buffer_object, vm_rb,
1022 ttm_bo_cmp_rb_tree_items);
1023
1024#endif