From 8ca1a765ee066b9f04f39c69d8f3678c06557257 Mon Sep 17 00:00:00 2001 From: Terje Bergstrom Date: Wed, 24 Jan 2018 13:06:37 -0800 Subject: gpu: nvgpu: Remove NVGPU_IOCTL_GET_BUFFER_INFO The IOCTL was introduced for making efficient query of buffer identity and size. It was never taken into use, and it adds a dependency to Tegra specific dma_buf API, so remove it. JIRA NVGPU-4 Change-Id: I194d7bb1f54997900a3be8d39c93331befa225c7 Signed-off-by: Terje Bergstrom Reviewed-on: https://git-master.nvidia.com/r/1648001 Reviewed-by: Alex Waterman Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: svc-mobile-coverity Reviewed-by: Konsta Holtta GVS: Gerrit_Virtual_Submit Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/common/linux/dmabuf.c | 35 +---------------------------- drivers/gpu/nvgpu/common/linux/dmabuf.h | 5 +---- drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c | 12 ---------- 3 files changed, 2 insertions(+), 50 deletions(-) (limited to 'drivers/gpu/nvgpu') diff --git a/drivers/gpu/nvgpu/common/linux/dmabuf.c b/drivers/gpu/nvgpu/common/linux/dmabuf.c index 08cf5f2b..580dfcae 100644 --- a/drivers/gpu/nvgpu/common/linux/dmabuf.c +++ b/drivers/gpu/nvgpu/common/linux/dmabuf.c @@ -1,5 +1,5 @@ /* -* Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. +* Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -140,7 +140,6 @@ int gk20a_dmabuf_alloc_drvdata(struct dma_buf *dmabuf, struct device *dev) { struct gk20a *g = gk20a_get_platform(dev)->g; struct gk20a_dmabuf_priv *priv; - static u64 priv_count = 0; priv = dma_buf_get_drvdata(dmabuf, dev); if (likely(priv)) @@ -159,7 +158,6 @@ int gk20a_dmabuf_alloc_drvdata(struct dma_buf *dmabuf, struct device *dev) nvgpu_mutex_init(&priv->lock); nvgpu_init_list_node(&priv->states); - priv->buffer_id = ++priv_count; priv->g = g; dma_buf_set_drvdata(dmabuf, dev, priv, gk20a_mm_delete_priv); @@ -214,34 +212,3 @@ out: *state = s; return err; } - -int gk20a_mm_get_buffer_info(struct device *dev, int dmabuf_fd, - u64 *buffer_id, u64 *buffer_len) -{ - struct dma_buf *dmabuf; - struct gk20a_dmabuf_priv *priv; - int err = 0; - - dmabuf = dma_buf_get(dmabuf_fd); - if (IS_ERR(dmabuf)) { - dev_warn(dev, "%s: fd %d is not a dmabuf", __func__, dmabuf_fd); - return PTR_ERR(dmabuf); - } - - err = gk20a_dmabuf_alloc_drvdata(dmabuf, dev); - if (err) { - dev_warn(dev, "Failed to allocate dmabuf drvdata (err = %d)", - err); - goto clean_up; - } - - priv = dma_buf_get_drvdata(dmabuf, dev); - if (likely(priv)) { - *buffer_id = priv->buffer_id; - *buffer_len = dmabuf->size; - } - -clean_up: - dma_buf_put(dmabuf); - return err; -} diff --git a/drivers/gpu/nvgpu/common/linux/dmabuf.h b/drivers/gpu/nvgpu/common/linux/dmabuf.h index 8e6c139b..d30ff5a5 100644 --- a/drivers/gpu/nvgpu/common/linux/dmabuf.h +++ b/drivers/gpu/nvgpu/common/linux/dmabuf.h @@ -1,5 +1,5 @@ /* -* Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. +* Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -57,7 +57,4 @@ int gk20a_dmabuf_alloc_drvdata(struct dma_buf *dmabuf, struct device *dev); int gk20a_dmabuf_get_state(struct dma_buf *dmabuf, struct gk20a *g, u64 offset, struct gk20a_buffer_state **state); -int gk20a_mm_get_buffer_info(struct device *dev, int dmabuf_fd, - u64 *buffer_id, u64 *buffer_len); - #endif diff --git a/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c b/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c index ebbe7dda..b751a337 100644 --- a/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c +++ b/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c @@ -753,13 +753,6 @@ static int gk20a_ctrl_vsm_mapping(struct gk20a *g, return err; } -static int gk20a_ctrl_get_buffer_info( - struct gk20a *g, struct nvgpu_gpu_get_buffer_info_args *args) -{ - return gk20a_mm_get_buffer_info(dev_from_gk20a(g), args->in.dmabuf_fd, - &args->out.id, &args->out.length); -} - static int nvgpu_gpu_get_cpu_time_correlation_info( struct gk20a *g, struct nvgpu_gpu_get_cpu_time_correlation_info_args *args) @@ -1757,11 +1750,6 @@ long gk20a_ctrl_dev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg (struct nvgpu_gpu_vsms_mapping *)buf); break; - case NVGPU_GPU_IOCTL_GET_BUFFER_INFO: - err = gk20a_ctrl_get_buffer_info(g, - (struct nvgpu_gpu_get_buffer_info_args *)buf); - break; - case NVGPU_GPU_IOCTL_GET_CPU_TIME_CORRELATION_INFO: err = nvgpu_gpu_get_cpu_time_correlation_info(g, (struct nvgpu_gpu_get_cpu_time_correlation_info_args *)buf); -- cgit v1.2.2