gpu: nvgpu: expose physical masks for GPCS/FBPs for MIG

Following changes are added
1) nvgpu_gr_config->gpc_tpc_mask_physical is now indexed by physical
gpc id instead of logical id.
2) Removed the conversion of logical fbp ids and replace them with
physical ids.
3) nvgpu_gpu_instance->fbp_en_mask now contains the mask of physical fbp ids.
4) gk20a_ctrl_ioctl_gpu_characteristics returns gpu.gpc_mask returns mask
of physical ids.

Bug 200712091

Signed-off-by: Debarshi Dutta <ddutta@nvidia.com>
Change-Id: I0e066df76e07203ff4a5be5bfff2cef8566b425d
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2648831
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: Antony Clince Alex <aalex@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Debarshi Dutta
2022-01-06 15:52:54 +05:30
committed by mobile promotions
parent 2373a87048
commit 3d01b89e68
5 changed files with 25 additions and 46 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2020-2021, NVIDIA CORPORATION. All rights reserved.
* Copyright (c) 2020-2022, NVIDIA CORPORATION. All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
@@ -115,14 +115,16 @@ struct nvgpu_gpu_instance {
/**
* Mask of FBPs. A set bit indicates FBP is available, otherwise
* it is not available.
* For Legacy, it is represent physical FBP mask.
* For MIG, it is represent logical FBP mask.
* For Legacy and MIG, it currently represents physical FBP mask.
* [TODO]: When SMC memory partition will be enabled, a mapping should
* be created for local to {logical, physical}.
*/
u32 fbp_en_mask;
/**
* Array to hold physical masks of LTCs per FBP.
* For Legacy, array is indexed by FBP physical index.
* For MIG, array is indexed by FBP logical index.
* For Legacy and MIG, array is currently indexed by FBP physical index.
* [TODO]: When SMC memory partition will be enabled, a mapping should
* be created for local to {logical, physical}.
*/
u32 *fbp_l2_en_mask;
/** Memory area to store h/w CE engine ids. */