gpu: nvgpu: update the PMA uapi to have channel id

This patch augments the PMA uapi to have the PMA channel
id:
- PMA_STREAM_ALLOC returns a pma channel id to the client.
- PMA_STREAM_FREE and PMA_STREAM_UPDATE_GET_PUT take a
  pma channel id.

Bug 3944943

Change-Id: I22adfe13d2b693bb952f6c456f23534e86a63ef3
Signed-off-by: Martin Radev <mradev@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2915485
Reviewed-by: Ramalingam C <ramalingamc@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
Martin Radev
2023-06-05 09:59:54 +03:00
committed by mobile promotions
parent a55491015c
commit 7d02506275
2 changed files with 17 additions and 5 deletions

View File

@@ -832,7 +832,14 @@ struct nvgpu_profiler_alloc_pma_stream_args {
#define NVGPU_PROFILER_ALLOC_PMA_STREAM_ARG_FLAG_CTXSW (1 << 0)
__u32 flags;
__u32 reserved[3];
__u32 pma_channel_id; /* out: PMA hardware stream id */
__u32 reserved[2];
};
struct nvgpu_profiler_free_pma_stream_args {
__u32 pma_channel_id; /* in: PMA hardware stream id */
__u32 reserved[2];
};
struct nvgpu_profiler_pma_stream_update_get_put_args {
@@ -851,7 +858,9 @@ struct nvgpu_profiler_pma_stream_update_get_put_args {
#define NVGPU_PROFILER_PMA_STREAM_UPDATE_GET_PUT_ARG_FLAG_OVERFLOW_TRIGGERED (1 << 3)
__u32 flags;
__u32 reserved[3];
__u32 pma_channel_id; /* in: PMA channel index */
__u32 reserved[2];
};
/*
@@ -955,7 +964,7 @@ struct nvgpu_profiler_vab_flush_state_args {
#define NVGPU_PROFILER_IOCTL_ALLOC_PMA_STREAM \
_IOWR(NVGPU_PROFILER_IOCTL_MAGIC, 4, struct nvgpu_profiler_alloc_pma_stream_args)
#define NVGPU_PROFILER_IOCTL_FREE_PMA_STREAM \
_IO(NVGPU_PROFILER_IOCTL_MAGIC, 5)
_IOW(NVGPU_PROFILER_IOCTL_MAGIC, 5, struct nvgpu_profiler_free_pma_stream_args)
#define NVGPU_PROFILER_IOCTL_BIND_PM_RESOURCES \
_IO(NVGPU_PROFILER_IOCTL_MAGIC, 6)
#define NVGPU_PROFILER_IOCTL_UNBIND_PM_RESOURCES \