__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
/* SPDX-License-Identifier: GPL-2.0 OR MIT */

#ifndef _TTM_RANGE_MANAGER_H_
#define _TTM_RANGE_MANAGER_H_

#include <drm/ttm/ttm_resource.h>
#include <drm/ttm/ttm_device.h>
#include <drm/drm_mm.h>

/**
 * struct ttm_range_mgr_node
 *
 * @base: base clase we extend
 * @mm_nodes: MM nodes, usually 1
 *
 * Extending the ttm_resource object to manage an address space allocation with
 * one or more drm_mm_nodes.
 */
struct ttm_range_mgr_node {
	struct ttm_resource base;
	struct drm_mm_node mm_nodes[];
};

/**
 * to_ttm_range_mgr_node
 *
 * @res: the resource to upcast
 *
 * Upcast the ttm_resource object into a ttm_range_mgr_node object.
 */
static inline struct ttm_range_mgr_node *
to_ttm_range_mgr_node(struct ttm_resource *res)
{
	return container_of(res, struct ttm_range_mgr_node, base);
}

int ttm_range_man_init_nocheck(struct ttm_device *bdev,
		       unsigned type, bool use_tt,
		       unsigned long p_size);
int ttm_range_man_fini_nocheck(struct ttm_device *bdev,
		       unsigned type);
static __always_inline int ttm_range_man_init(struct ttm_device *bdev,
		       unsigned int type, bool use_tt,
		       unsigned long p_size)
{
	BUILD_BUG_ON(__builtin_constant_p(type) && type >= TTM_NUM_MEM_TYPES);
	return ttm_range_man_init_nocheck(bdev, type, use_tt, p_size);
}

static __always_inline int ttm_range_man_fini(struct ttm_device *bdev,
		       unsigned int type)
{
	BUILD_BUG_ON(__builtin_constant_p(type) && type >= TTM_NUM_MEM_TYPES);
	return ttm_range_man_fini_nocheck(bdev, type);
}
#endif

Filemanager

Name Type Size Permission Actions
ttm_bo.h File 15.28 KB 0644
ttm_caching.h File 1.8 KB 0644
ttm_device.h File 8.46 KB 0644
ttm_execbuf_util.h File 4.33 KB 0644
ttm_kmap_iter.h File 1.83 KB 0644
ttm_placement.h File 3.35 KB 0644
ttm_pool.h File 2.88 KB 0644
ttm_range_manager.h File 1.49 KB 0644
ttm_resource.h File 15.15 KB 0644
ttm_tt.h File 8.3 KB 0644
Filemanager