aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/ttm/ttm_bo_manager.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/ttm/ttm_bo_manager.c')
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo_manager.c29
1 files changed, 10 insertions, 19 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_bo_manager.c b/drivers/gpu/drm/ttm/ttm_bo_manager.c
index eb86c8694f47..b56c6961b278 100644
--- a/drivers/gpu/drm/ttm/ttm_bo_manager.c
+++ b/drivers/gpu/drm/ttm/ttm_bo_manager.c
@@ -104,11 +104,18 @@ static void ttm_bo_man_put_node(struct ttm_mem_type_manager *man,
}
}
-static int ttm_bo_man_init_private(struct ttm_mem_type_manager *man,
- unsigned long p_size)
+static const struct ttm_mem_type_manager_func ttm_bo_manager_func;
+
+int ttm_range_man_init(struct ttm_bo_device *bdev,
+ struct ttm_mem_type_manager *man,
+ unsigned long p_size)
{
struct ttm_range_manager *rman;
+ man->func = &ttm_bo_manager_func;
+
+ ttm_mem_type_manager_init(bdev, man, p_size);
+
rman = kzalloc(sizeof(*rman), GFP_KERNEL);
if (!rman)
return -ENOMEM;
@@ -116,21 +123,7 @@ static int ttm_bo_man_init_private(struct ttm_mem_type_manager *man,
drm_mm_init(&rman->mm, 0, p_size);
spin_lock_init(&rman->lock);
man->priv = rman;
- return 0;
-}
-int ttm_range_man_init(struct ttm_bo_device *bdev,
- struct ttm_mem_type_manager *man,
- unsigned long p_size)
-{
- int ret;
-
- man->func = &ttm_bo_manager_func;
-
- ttm_mem_type_manager_init(bdev, man, p_size);
- ret = ttm_bo_man_init_private(man, p_size);
- if (ret)
- return ret;
ttm_mem_type_manager_set_used(man, true);
return 0;
}
@@ -163,11 +156,9 @@ static void ttm_bo_man_debug(struct ttm_mem_type_manager *man,
spin_unlock(&rman->lock);
}
-const struct ttm_mem_type_manager_func ttm_bo_manager_func = {
- .init = ttm_bo_man_init_private,
+static const struct ttm_mem_type_manager_func ttm_bo_manager_func = {
.takedown = ttm_bo_man_takedown,
.get_node = ttm_bo_man_get_node,
.put_node = ttm_bo_man_put_node,
.debug = ttm_bo_man_debug
};
-EXPORT_SYMBOL(ttm_bo_manager_func);