diff options
author | Debarshi Dutta <ddutta@nvidia.com> | 2017-10-10 07:03:17 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-10-17 15:55:22 -0400 |
commit | 8f55976d4952020f1e7f257087bb79cfeb64f193 (patch) | |
tree | 67a640295146de1949eed36a0f1eb5589720abe6 /drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |
parent | b252653ac5f2b12a9a84476f9dde6a844a77a602 (diff) |
gpu: nvgpu: cleanup of dbg_gpu_gk20a
This change contains a generic cleanup of linux dependent parts of the
dbg_gpu_gk20a.* files. The following changes have been made
1) Moving methods into ioctl_dbg.* inside common/linux/
2) The structures dbg_session_gk20a and dbg_session_channel_data have
been split into two parts. struct device *dev is removed from
struct dbg_session_gk20a and instead packed into struct
dbg_session_gk20a_linux alongwith dbg_session_gk20a and is moved into
ioctl_dbg. dbg_session_gk20a is now rid of any linux dependencies and
remains in dbg_gpu_gk20a. Similarly, struct file is removed from
struct dbg_session_channel_data and is now packed into struct
dbg_session_channel_data_linux alongwith dbg_session_channel_data and
is moved into ioctl_dbg. struct dbg_session_channel_data is now rid of
linux dependencies and remains in dbg_gpu_gk20a.
3) A callback function is added in order to release the
dbg_session_channel_data.
JIRA NVGPU-205
Change-Id: I853da6dfbf9a96b7cd210beb77f2304445ff7ea6
Signed-off-by: Debarshi Dutta <ddutta@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1575191
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/channel_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/channel_gk20a.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c index 713c4215..e3fc61c0 100644 --- a/drivers/gpu/nvgpu/gk20a/channel_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/channel_gk20a.c | |||
@@ -51,6 +51,13 @@ | |||
51 | #include <nvgpu/hw/gk20a/hw_pbdma_gk20a.h> | 51 | #include <nvgpu/hw/gk20a/hw_pbdma_gk20a.h> |
52 | 52 | ||
53 | /* | 53 | /* |
54 | * Note | ||
55 | * This is added for all the copy_from_user methods in this file which needs to | ||
56 | * be moved lated to reduce depenedency on Linux | ||
57 | */ | ||
58 | #include <linux/uaccess.h> | ||
59 | |||
60 | /* | ||
54 | * This is required for nvgpu_vm_find_buffer() which is used in the tracing | 61 | * This is required for nvgpu_vm_find_buffer() which is used in the tracing |
55 | * code. Once we can get and access userspace buffers without requiring | 62 | * code. Once we can get and access userspace buffers without requiring |
56 | * direct dma_buf usage this can be removed. | 63 | * direct dma_buf usage this can be removed. |
@@ -623,7 +630,7 @@ unbind: | |||
623 | list_for_each_entry_safe(ch_data, tmp, | 630 | list_for_each_entry_safe(ch_data, tmp, |
624 | &dbg_s->ch_list, ch_entry) { | 631 | &dbg_s->ch_list, ch_entry) { |
625 | if (ch_data->chid == ch->chid) | 632 | if (ch_data->chid == ch->chid) |
626 | dbg_unbind_single_channel_gk20a(dbg_s, ch_data); | 633 | ch_data->unbind_single_channel(dbg_s, ch_data); |
627 | } | 634 | } |
628 | nvgpu_mutex_release(&dbg_s->ch_list_lock); | 635 | nvgpu_mutex_release(&dbg_s->ch_list_lock); |
629 | } | 636 | } |