mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 10:34:43 +03:00
nvgpu_gr_init_support() right now executes each of its function for each GR instance separately. Instead of looping for each function, move the GR engine initialization sequence to a separate gr_init_support_impl() and execute this function for each instance. Update below functions to take nvgpu_gr pointer as parameter. These functions need not worry about GR instance, instead they'll just operate on provided instance pointer. gr_init_setup_hw gr_init_config gr_init_setup_sw gr_init_sm_id_config_early gr_init_ctxsw_falcon_support Add new static function gr_init_support_finalize() to set the ready status and invoke waiters. Execute this per GR instance. gr_init_ecc_init() and nvgpu_cg_elcg_enable_no_wait() are not needed to be run per instance. gr_init_ecc_init() will be later updated to allocate meta data for all instances Jira NVGPU-5648 Change-Id: Ia6860f2bdfe0080aebf8930266d3f51bfd805e36 Signed-off-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2410703 Reviewed-by: automaticguardword <automaticguardword@nvidia.com> Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com> Reviewed-by: Lakshmanan M <lm@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit