mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 10:34:43 +03:00
Update gk20a_ctrl_dev_ioctl() to fetch gpu_instance_id with nvgpu_get_gpu_instance_id_from_cdev() and gr_instance_id with nvgpu_grmgr_get_gr_instance_id(). Get instance specific GR engine configuration pointer with nvgpu_gr_get_gpu_instance_config_ptr() Update gk20a_ctrl_ioctl_gpu_characteristics() to return instance specific characteristics with below changes : - 0th GPU instance is a physical instance. Set a limited and relevant characteristics flags for 0th instance. For rest of the instances and non-MIG mode, continue fetching flags with nvgpu_ctrl_ioctl_gpu_characteristics_flags. - nvgpu_set_preemption_mode_flags() should be set only for non-MIG mode and non-zero instance in MIG mode. - In MIG mode, 0th instance does not support any classes. Rest of the instances support only compute, copy and gpfifo classes. Non-MIG mode supports all the classes including graphics ones. - Fetch gpu_instance_id/gr_sys_pipe_id/gr_instance_id from gpu_instance pointer. - Fetch max_veid_count_per_tsg from gpu_instance pointer. Also update nvgpu_gr_get_zcull_ptr() and nvgpu_gr_get_zbc_ptr() to return instance specific pointers. zcull/zbc are not supported in MIG mode, this is just for consistency of the code. Jira NVGPU-5648 Change-Id: I764526061542c48ed87659844e16dd0e0253c588 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2436752 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>