I will drop this one, because I found many other functions use 32 bits as well and it seems to be convenient. Regards, Yong On 2019-09-30 11:54 a.m., Kuehling, Felix wrote: > If you want to make this interface consistent, you should make the vmid > parameter uint8_t at the same time. That said, you don't really save any > resources, because 8-bit and 16-bit ints still consume 32-bits on the > call stack. > > Regards, > Felix > > On 2019-09-27 11:41 p.m., Zhao, Yong wrote: >> This is consistent with other code and registers in the code. >> >> Change-Id: I04dd12bdb465a43cfcd8936ed0f227a6546830e8 >> Signed-off-by: Yong Zhao <Yong.Zhao@xxxxxxx> >> --- >> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c | 4 ++-- >> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 4 ++-- >> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 4 ++-- >> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 2 +- >> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h | 2 +- >> drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 4 ++-- >> drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 2 +- >> 7 files changed, 11 insertions(+), 11 deletions(-) >> >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c >> index 122698f8dd1e..33cbf1d073d3 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c >> @@ -59,7 +59,7 @@ static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> uint32_t sh_mem_config, >> uint32_t sh_mem_ape1_base, uint32_t sh_mem_ape1_limit, >> uint32_t sh_mem_bases); >> -static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid); >> static int kgd_init_interrupts(struct kgd_dev *kgd, uint32_t pipe_id); >> static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, >> @@ -232,7 +232,7 @@ static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> unlock_srbm(kgd); >> } >> >> -static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid) >> { >> struct amdgpu_device *adev = get_amdgpu_device(kgd); >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c >> index f77ddf7dba2b..0210d791dea1 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c >> @@ -94,7 +94,7 @@ static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> uint32_t sh_mem_config, uint32_t sh_mem_ape1_base, >> uint32_t sh_mem_ape1_limit, uint32_t sh_mem_bases); >> >> -static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid); >> >> static int kgd_init_interrupts(struct kgd_dev *kgd, uint32_t pipe_id); >> @@ -256,7 +256,7 @@ static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> unlock_srbm(kgd); >> } >> >> -static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid) >> { >> struct amdgpu_device *adev = get_amdgpu_device(kgd); >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c >> index 7478caf096ad..7a4c762e1209 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c >> @@ -52,7 +52,7 @@ static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> uint32_t sh_mem_config, >> uint32_t sh_mem_ape1_base, uint32_t sh_mem_ape1_limit, >> uint32_t sh_mem_bases); >> -static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid); >> static int kgd_init_interrupts(struct kgd_dev *kgd, uint32_t pipe_id); >> static int kgd_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, >> @@ -210,7 +210,7 @@ static void kgd_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> unlock_srbm(kgd); >> } >> >> -static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +static int kgd_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid) >> { >> struct amdgpu_device *adev = get_amdgpu_device(kgd); >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c >> index 50f885576bbe..6be6061c5554 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c >> @@ -142,7 +142,7 @@ void kgd_gfx_v9_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> unlock_srbm(kgd); >> } >> >> -int kgd_gfx_v9_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +int kgd_gfx_v9_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid) >> { >> struct amdgpu_device *adev = get_amdgpu_device(kgd); >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h >> index d9e9ad22b2bd..e61f0556daa3 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h >> @@ -26,7 +26,7 @@ void kgd_gfx_v9_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid, >> uint32_t sh_mem_config, >> uint32_t sh_mem_ape1_base, uint32_t sh_mem_ape1_limit, >> uint32_t sh_mem_bases); >> -int kgd_gfx_v9_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid, >> +int kgd_gfx_v9_set_pasid_vmid_mapping(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid); >> int kgd_gfx_v9_init_interrupts(struct kgd_dev *kgd, uint32_t pipe_id); >> int kgd_gfx_v9_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id, >> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c >> index 553c45e16815..8d915a28468d 100644 >> --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c >> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c >> @@ -40,7 +40,7 @@ >> #define CIK_HPD_EOP_BYTES (1U << CIK_HPD_EOP_BYTES_LOG2) >> >> static int set_pasid_vmid_mapping(struct device_queue_manager *dqm, >> - unsigned int pasid, unsigned int vmid); >> + uint16_t pasid, unsigned int vmid); >> >> static int execute_queues_cpsch(struct device_queue_manager *dqm, >> enum kfd_unmap_queues_filter filter, >> @@ -846,7 +846,7 @@ static int unregister_process(struct device_queue_manager *dqm, >> } >> >> static int >> -set_pasid_vmid_mapping(struct device_queue_manager *dqm, unsigned int pasid, >> +set_pasid_vmid_mapping(struct device_queue_manager *dqm, uint16_t pasid, >> unsigned int vmid) >> { >> return dqm->dev->kfd2kgd->set_pasid_vmid_mapping( >> diff --git a/drivers/gpu/drm/amd/include/kgd_kfd_interface.h b/drivers/gpu/drm/amd/include/kgd_kfd_interface.h >> index 2cd217e60125..a222abb8dc31 100644 >> --- a/drivers/gpu/drm/amd/include/kgd_kfd_interface.h >> +++ b/drivers/gpu/drm/amd/include/kgd_kfd_interface.h >> @@ -246,7 +246,7 @@ struct kfd2kgd_calls { >> uint32_t sh_mem_config, uint32_t sh_mem_ape1_base, >> uint32_t sh_mem_ape1_limit, uint32_t sh_mem_bases); >> >> - int (*set_pasid_vmid_mapping)(struct kgd_dev *kgd, unsigned int pasid, >> + int (*set_pasid_vmid_mapping)(struct kgd_dev *kgd, uint16_t pasid, >> unsigned int vmid); >> >> int (*init_interrupts)(struct kgd_dev *kgd, uint32_t pipe_id); _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx