Commit Graph

8354 Commits

Author SHA1 Message Date
Deepak Nibade
53cc5be723 gpu: nvgpu: update doxygen for common.gr unit
Update common.gr doxygen based on review comments from design
verification.
- Add error return values to some APIs.
- Remove redundant description lines from some APIs.

Update gm20b_gr_falcon_status_check_ctx_wait_ucode() to return
actual error codes instead of -1.

Jira NVGPU-6494

Change-Id: Ieb3f5acd27c30cd50049b114ddd8847b1b376ca3
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2490213
(cherry picked from commit 3694fd1bdd1ac36f8c91b1fbaab47cadd8ba1868)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2490211
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-02 19:34:13 -08:00
Vedashree Vidwans
4cc99d035d gpu: nvgpu: update doxygen for common.fifo
- Add doxygen comments for nvgpu_tsg_open_common().
- Update return and return value description for
1.	nvgpu_fifo_init_support()
2.	nvgpu_fifo_setup_sw()
3.	nvgpu_fifo_setup_sw_common()
4.	nvgpu_channel_init_support()
5.	gops_fifo.reset_enable_hw()
6.	nvgpu_runlist_get_runlists_mask()

Jira NVGPU-6222

Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Change-Id: I2ef150d41695afca303f1e083f559d31895ba602
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2482062
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-02 19:31:37 -08:00
Vedashree Vidwans
f4e750cfb2 gpu: nvgpu: name nvgpu_fifo internal structures
Add names for internal structures in nvgpu_fifo struct. This will clear
"anonymous" struct names from doxygen.

Jira NVGPU-6179

Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Change-Id: I9c34ff5e0626a3b28febe7d0cfdb297eb6785427
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2467531
(cherry picked from commit 82a6fdd73fbca1e65315a5e13bcd0fd4311da583)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2480573
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-02 19:31:32 -08:00
Vedashree Vidwans
4de7b8bbd1 gpu: nvgpu: update doxygen for common.fifo
Modify doxygen comments
- to add more information
- correct spelling mistakes
- update formatting

Jira NVGPU-6179

Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Change-Id: If0a075b8875c8f5aee1d9710e7348e843a457534
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2467530
(cherry picked from commit b367d3d0ea7f92b722aebdc8cf6018979fe74c47)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2480583
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-02 19:31:25 -08:00
Vedashree Vidwans
12bbff3f5a gpu: nvgpu: update doxygen for common.fifo
Update function return and return value description for
nvgpu_channel_open_new and nvgpu_engine_setup_sw as per review comments.

Jira NVGPU-6179

Change-Id: Ie9a9c7c3918f22071173ca8b51dee49f3e405df6
Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2471070
(cherry picked from commit cb8ac4e09f3a4803e967987afa2c55d78235149d)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2480565
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-02 19:31:20 -08:00
Deepak Nibade
4ab8c87974 gpu: nvgpu: expose V2 device node hierarchy
Nvgpu will move to new V2 device node hierarchy by default to be
consistent with MIG mode hierarchy. As part of this, expose V2 device
node hierarchy with this patch.

Both legacy and V2 hierarchies will co-exist for some duration until
V2 hierarchy is well tested out, and then legacy hierarchy will be
removed.

With V2 hierarchy, below is the directory structure for dev nodes :
igpu: /dev/nvgpu/igpu0/<dev_node>
dgpu: /dev/nvgpu/dgpu-0001\:01\:00.0/<dev_node>

Jira NVGPU-5648

Change-Id: I1c7a1c41e6d59fb248bc98a145c5ecebd06e8bad
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2443712
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-02 19:30:59 -08:00
Seshendra Gadagottu
ca636eaeb7 gpu: nvgpu: gops: mc: add doxygen for ltc_isr
Add doxygen for mc.ltc_isr, since it is getting called
from fusa code.

Jira NVGPU-6182

Change-Id: I1995cb6a2caef11f0b982b76b5dcd8d809d78a44
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
(cherry picked from commit 8ddc5e9dbbe7d711baafe1e824111010fcc969fb)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2488417
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-03-01 22:15:35 -08:00
Seshendra Gadagottu
d6b49345cd gpu: nvgpu: init: nvgpu_check_gpu_state description update
Update nvgpu_check_gpu_state function description to
reflect it's functionality.

Jira NVGPU-6182

Change-Id: I650098b04e5134cfcada37a99fbe505f3f621855
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
(cherry picked from commit c972d2925bf020270179abc0545335cbdc69113e)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2488415
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-03-01 22:15:29 -08:00
Jon Hunter
42033ac29e gpu: nvgpu: Simplify include path for building as an external module
When building NVGPU, it is necessary to define 'srctree.nvgpu' so that
the NVGPU driver knows where to find its include files. When building as
an in-tree module, the overlay infrastructure defines this and when
building as an out-of-tree module, it is necessary to define this in the
Makefile that is building NVGPU. Given that the NVGPU header are located
in the NVGPU source tree, it is not necessary and simpler if the NVGPU
Makefile defines 'srctree.nvgpu' path if it is not already specified.

Furthermore, when building NVGPU as an external module with support for
the upstream host1x driver enabled, the necessary host1x header file
that is required for building NVGPU is being copied into the build
directory for NVGPU. Rather than copying the header file, it is
preferred that the path for locating the header file is passed to the
NVGPU Makefile. Add support for doing this by adding 'srctree.host1x'
variable that indicates where the host1x header files can be found
when support for the upstream host1x driver is enabled.

Bug 200687525

Change-Id: I36882cdc5ef264fbe50cd5ca4e445077c0a02c34
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2485753
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-03-01 12:45:23 -08:00
ajesh
07cd0697ad gpu: nvgpu: add doxygen update for posix unit
Add range value and other related details for various
Posix functions.

JIRA NVGPU-6285

Change-Id: I2bee40cc81075ef63bdaaf4ea1d955bbeb9dabd3
Signed-off-by: ajesh <akv@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2479890
(cherry picked from commit 0b74c24db8adae83a404aa08b728597b8ca19068)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2486852
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-27 04:19:10 -08:00
Rakesh Babu Bodla
e158e02030 gpu: nvgpu: remove kernel-5.9 checks in Makefile
Remove kernel-5.9 checks in Makefile.linux.configs.

Bug 200617764

Signed-off-by: Rakesh Babu Bodla <rbodla@nvidia.com>
Change-Id: I01490aa2d7217c8e1accf401d78957bf7e64ba59
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2485600
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: Sagar Kamble <skamble@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-26 13:38:20 -08:00
Lakshmanan M
1438689a89 gpu: nvgpu: Add api to query the availability of multi GR support
* Added a new api(nvgpu_gr_is_multi_gr_enabled()) to query the
  availability of multi GR support when MIG is enabled.

JIRA NVGPU-5650

Change-Id: I3f8c29db966afb8d72021a093e009492f134ec9d
Signed-off-by: Lakshmanan M <lm@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2488399
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Dinesh T <dt@nvidia.com>
Reviewed-by: Rajesh Devaraj <rdevaraj@nvidia.com>
Reviewed-by: Vaibhav Kachore <vkachore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-25 14:42:22 -08:00
Alex Waterman
5bf229dcd5 gpu: nvgpu: Rename runlist_id to id
Rename the runlist_id field in struct nvgpu_runlist to just id.
The runlist part is redundant given that this id is already in
'struct nvgpu_runlist'.

Change-Id: Ie2ea98f65d75e5e46430734bd7a7f6d6267c7577
Signed-off-by: Alex Waterman <alexw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470306
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Tejal Kudav <tkudav@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-19 15:16:46 -08:00
Alex Waterman
bd1b395b5c gpu: nvgpu: Update runlist_id in TSG
Update the runlist_id field in struct tsg to now be a pointer to
the relevant runlist. This further cleans up the rampant use of
runlist_ids throughout the driver.

Change-Id: I3dce990f198d534a80caa9ca95982255dcf104ad
Signed-off-by: Alex Waterman <alexw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470305
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Tejal Kudav <tkudav@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-19 15:16:41 -08:00
Seeta Rama Raju
8d6b654afb gpu: nvgpu: compile out bios dependency from safety build
- bios not supported for safety, so removing all bios dependencies like
  inclusion of bios header file and gops_bios structure from safety build.

JIRA NVGPU-6302

Change-Id: I47c0be043dc2542ed34e5ef6d65b75ce8b57d276
Signed-off-by: Seeta Rama Raju <srajum@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2456059
(cherry picked from commit c7554856aac4745038f8ca802a3e0b3a9cbb7f3c)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2481700
Reviewed-by: Prateek Sethi <prsethi@nvidia.com>
Reviewed-by: Ankur Kishore <ankkishore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-19 05:46:32 -08:00
Seshendra Gadagottu
5bd547f0db gpu: nvgpu: bus: update doxygen for BVEC checks
Update doxygen to have boundary value check info in
bus unit.

Jira NVGPU-6183

Change-Id: Idab12a6fdddcef016405e4a0fd9369bc6430cba1
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
(cherry picked from commit 90a3fd422cfeda7305127949e28a16fc096f5e11)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2486001
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-18 23:44:35 -08:00
Seshendra Gadagottu
c021b18fb1 gpu: nvgpu: fb: update doxygen for BVEC checks
Update doxygen to have boundary value check info for
input params in common.fb.

Jira NVGPU-6183

Change-Id: Ic07a7688c457c68ba7e9ef96ca8b3bf4145b8236
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
(cherry picked from commit 84f7954eaf499f38af8590a4a1309e0c1f7448bf)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2485995
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-18 23:44:26 -08:00
Seshendra Gadagottu
f5b6c012cb gpu: nvgpu: therm: update doxygen for BVEC checks
Update doxygen to have boundary value check info for
init_elcg_mode HAL.

Jira NVGPU-6183

Change-Id: Id0ebb8076a8a65319e40129308ded6ef6466c647
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2481046
(cherry picked from commit 89564f5d7f5371c35734c0eec5ad70edd71e3c17)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2483098
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-18 23:43:26 -08:00
Lakshmanan M
edf03baedd gpu: nvgpu: Enable SCG flag
* Enabled NVGPU_SUPPORT_SCG for tu104.
* Enabled NVGPU_SUPPORT_SCG if graphics support is enabled.

JIRA NVGPU-6532

Change-Id: I22175de6906a496127fef464f70a6521b2ad2ad2
Signed-off-by: Lakshmanan M <lm@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2485632
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Sagar Kamble <skamble@nvidia.com>
Reviewed-by: Rajesh Devaraj <rdevaraj@nvidia.com>
Reviewed-by: Dinesh T <dt@nvidia.com>
Reviewed-by: Ankur Kishore <ankkishore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-18 17:32:35 -08:00
shashank singh
019641e88c gpu: nvgpu: limit number of gpfifo entries
Limit number of gpfifo entries so that the size of gpfifo i.e.
num_entries * size of each entry fits in u32 data type.

Jira NVGPU-5846

Change-Id: I4d3560a6ed90044c88ee3a7acd2e6cb0591b7c5e
Signed-off-by: shashank singh <shashsingh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2474118
(cherry picked from commit 02ab9e163f5b413b6eb9817ab8ac5581ce7ef427)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2483947
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Dinesh T <dt@nvidia.com>
Reviewed-by: Ankur Kishore <ankkishore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-18 17:29:17 -08:00
prsethi
ed739cdba1 gpu: nvgpu: update doxygen for clock unit
Patch adds doxygen for get_maxrate

Jira NVGPU-6258

Change-Id: I7697134ca693bc14562c53b88e9aa2d44e871c9f
Signed-off-by: prsethi <prsethi@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2480512
(cherry picked from commit 610d52755f69cf74f74c1cb8e04985184f7f842c)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2483391
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: Ankur Kishore <ankkishore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-17 11:12:27 -08:00
prsethi
8d55f14fc9 gpu: nvgpu: doxygen update for unit os_utils
Add range value details for various os_utils functions.

Jira NVGPU-6258

Change-Id: Ib930a24d2a4b8e98520d87fcc2f48bef81d26fbd
Signed-off-by: prsethi <prsethi@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2480205
(cherry picked from commit 210e1dd5360d29cad1a432e8de48669d51de134c)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2483388
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: Ankur Kishore <ankkishore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-17 11:12:19 -08:00
Antony Clince Alex
bc0e81adda gpu: nvgpu: skip setting error notifier during deferred reset
Skip setting error notifier on MMUFAULT when a debugger is connected and
debugging is enabled(mmu_debug_mode=on). At present, error notifier causes
the application to teardown the channels and debugger will not be able to
collect any data.

Bug 200632771

Change-Id: Iec2ee07d7a923b2c79197c4c3a7b312d4db797b8
Signed-off-by: Antony Clince Alex <aalex@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2479825
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-02-06 05:20:49 -08:00
prsethi
09fb445878 gpu: nvgpu: remove ipa to pa conversion WAR
WAR assume 1:1 IPA to PA mapping when hyp_read_ipa_pa_info fails for
the syncpt address which falls into syncpt shim aperture. API
nvgpu_mem_phys_sgl_ipa_to_pa() is taking care of IPA to PA mapping for
the syncpts which makes this WAR invalid.

Patch removes the WAR.

Bug 200673604

Change-Id: I966711e11c2ff1b5b5dd3f5e09674bea66c5d04b
Signed-off-by: prsethi <prsethi@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2478068
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-03 13:54:45 -08:00
Deepak Nibade
a1cbe60bc0 gpu: nvgpu: fix common.gr doxygen typos
Jira NVGPU-6180

Change-Id: I499634aa407404474a6d3d7d3dfc6271eda21007
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2473441
(cherry picked from commit bdfb68b965b76b216e3a9782ef7f0d1f6cda2df0)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2478885
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-02 23:34:32 -08:00
Deepak Nibade
bb43f11a61 gpu: nvgpu: update common.gr doxygen
Add below updates to common.gr doxygen:

- Add doxygen comments for APIs that are mentioned in RM SWAD and in
  RM-common.gr traceability document.
- Comment about valid ranges for input parameters of bunch of functions.
- Add nvgpu_assert() to ensure correct value is passed as input
  parameter to number of functions.
- Add references to relevant functions with @see.
- Update Targets field for unit tests to cover newly doxygenated
  functions.
- Update unit test test_gr_init_hal_pd_skip_table_gpc to take care of
  new asserts added into some APIs.

Jira NVGPU-6180

Change-Id: Ie889bed96b6428b1fd86dcf30b322944464e9d12
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2469397
(cherry picked from commit 5d7d7e9ce1c4efe836ab842d7962a3aee4e8972f)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2469394
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-02 23:34:27 -08:00
Deepak Nibade
27b321e1a9 gpu: nvgpu: fix header guards in common.gr unit
Fix header guard names as per convention for below common.gr headers :
common/gr/gr_falcon_priv.h
common/gr/zbc_priv.h
include/nvgpu/gr/ctx.h

Jira NVGPU-5005

Change-Id: I68947ea3e8f4ddbcd43be8d8717eb8ddcc6f5bcb
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470072
(cherry picked from commit eb044acbafc6d9f735e066d9c7497156f1df13c7)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2478884
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-02 23:34:21 -08:00
Deepak Nibade
ce206826f2 gpu: nvgpu: use explicit timeout to wait for SM lock down
gv11b_gr_wait_for_sm_lock_down() uses nvgpu_get_poll_timeout() to
get timeout value for polling of SM lock down status.
nvgpu_get_poll_timeout() returns -1 if timeouts are disabled by
debugger, and if SM lock down fails, nvgpu lands in an infinite loop.

Use g->poll_timeout_default instead of nvgpu_get_poll_timeout() so
that explicit timeout value is always used. This also means that
timeout value of ULONG_MAX will still be used on simulation platforms.

Bug 200676073

Change-Id: I5777e98efcd63f24ade244384cf7b157dcea991d
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2478255
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Mikhail Filimonov <mfilimonov@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-01 19:20:34 -08:00
Antony Clince Alex
52b33022e7 gpu: nvgpu: gv11b: skip setting error notifier during deferred reset
Skip setting error notifier on MMUFAULT when a debugger is connected and
debugging is enabled(mmu_debug_mode=on). At present, error notifier causes
the application to teardown the channels and debugger will not be able to
collect any data.

Bug 200632771

Change-Id: Idc4141990d4e2fb4714de9bfd31cfea5e7dcd52a
Signed-off-by: Antony Clince Alex <aalex@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2477253
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-01 13:18:09 -08:00
Seshendra Gadagottu
ca477efc1e gpu: nvgpu: t21x: enable CTX_MMU_DEBUG_MODE
Enable support for NVGPU_SUPPORT_SET_CTX_MMU_DEBUG_MODE,
since latest gm20b firmware has support for MMU_DEBUG_CTRL.

Bug 2586406

Change-Id: I126c9ea516a8c60d4c66964dc1c8857a708f16a2
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2477047
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-02-01 05:55:36 -08:00
Alex Waterman
77c0b9ffdc gpu: nvgpu: Update runlist_update() to take runlist ptr
Update the nvgpu_runlist_update_for_channel() function:

  - Rename it to nvgpu_runlist_update()
  - Have it take a pointer to the runlist to update instead
    of a runlist ID. For the most part this makes the code
    better but there's a few places where it's worse (for
    now).

This starts the slow and painful process of moving away from
the non-runlist code using runlist IDs in many places it should
not.

Most of this patch is just fixing compilation problems with
the minor header updates.

JIRA NVGPU-6425

Change-Id: Id9885fe655d1d750625a1c8aceda9e67a2cbdb7a
Signed-off-by: Alex Waterman <alexw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470304
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-29 09:51:44 -08:00
Deepak Nibade
fae1f20ab7 gpu: nvgpu: update tu104 regops allowlist
Sync tu104 regops allowlist to latest allowed values.

Bug 200605637

Change-Id: I6287cf4deb74418d5d25aef5a19259cc4813c80c
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2476116
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-29 08:00:46 -08:00
Ramesh Mylavarapu
aad07971c0 gpu: nvgpu: Add pg post init rpc id
Add pg post init rpc id.

BUG-200689469

Signed-off-by: Ramesh Mylavarapu <rmylavarapu@nvidia.com>
Change-Id: I1f7889573d19c8268619f3950800c24d68900ac4
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2466346
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-29 07:53:11 -08:00
Sagar Kamble
5993b74351 gpu: nvgpu: gm20b: increase WDT timeout to 7s
Intermittently observing WDT during ap_cudnn on porg-b01-sku0.
Increasing the WDT timeout from 5s to 7s helps.

Bug 3223062

Change-Id: Ia94d931d301f3ec229e0e4fbd06876d326a4077e
Signed-off-by: Sagar Kamble <skamble@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2475066
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-28 17:30:53 -08:00
scottl
456a814db5 gpu: nvgpu: add linux MAPPING_MODIFY ioctl
Add new MAPPING_MODIFY ioctl to the linux nvgpu driver.

This ioctl is used (for example) by the NvRmGpuMappingModify API to
change the kind of an existing mapping.

For compressed mappings the ioctl can be used to do the following:

 * switch between two different compressed kinds
 * switch between compressed and incompressed kinds

For incompressed mappings the ioctl can be used to do the following:

 * switch between two different incompressed kinds

In order to properly update an existing mapping the nvgpu_mapped_buf
structure has been extended to cache the following state when the
mapping is first created:

 * the compression tag offset (if applicable)
 * the GMMU read/write flags
 * the memory aperture

The unused ctag_lines field in the nvgpu_ctag_buffer_info structure
has been replaced with a new ctag_offset field.

Jira NVGPU-6374

Change-Id: I647ab9c2c272e3f9b52f1ccefc5e0de4577c14f1
Signed-off-by: scottl <scottl@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2468100
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-28 17:27:31 -08:00
Seshendra Gadagottu
47f2e68013 gpu: nvgpu: update doxygen for gops_bus
Fix table format issue for bus interrupts list.
Fix typo in bar1_bind description.

Jira NVGPU-6243

Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2459233
(cherry picked from commit d3464c8945297f2bbf5a5d9f9fdff58bd9672fdd)
Change-Id: I621f73d552744c9f732d3dcb700473c182cf8654
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2461748
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-28 09:08:00 -08:00
Seshendra Gadagottu
deb9ad08b8 gpu: nvgpu: update doxygen for common.netlist unit
Moved description about APIs to be part of @brief.
This is also fixing unwanted line breaks in the description
where references are made to struct.

Jira NVGPU-6183

Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2459231
(cherry picked from commit eef9e7ac5f626a0b8e77f6292979a5dd6cbd5b89)
Change-Id: I334917c22ad13f27ad2ac75fcd33eab29cf323b9
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2461747
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-28 09:07:55 -08:00
Seshendra Gadagottu
0a82229932 gpu: nvgpu: update doxgen for common.therm gops
Update description for init_therm_support gops.

Jira NVGPU-6254

Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2459232
(cherry picked from commit 0e358a0dbbd535e215146602736c7abf3916922a)
Change-Id: Iadb14c1a3a777460b32b9370c17dcd7a1a5f1afd
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2461743
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-28 09:07:48 -08:00
dt
73f07366c3 gpu: nvgpu: Add doxygen update for common mm unit
This is adding some doxygen comments for common mm unit
that includes adding return values, description and
some format changes.

JIRA NVGPU-6381

Change-Id: Ibbe1af5b9e4356bf02bb591116e08735ce77b323
Signed-off-by: dt <dt@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2472907
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Lakshmanan M <lm@nvidia.com>
Reviewed-by: Vaibhav Kachore <vkachore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-27 01:26:05 -08:00
Lakshmanan M
147ec67319 gpu: nvgpu: fix a typo in nvgpu_aperture_mask API
This patch fixes a typo in doxygen documentation of
nvgpu_aperture_mask API.

JIRA NVGPU-5932

Change-Id: I777b4f01bbd0bb6b440437aa4c90e35886261d8b
Signed-off-by: Lakshmanan M <lm@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2473559
(cherry picked from commit 7bdf55d268f98d4f235ecead447705966ad19a35)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2474119
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-22 11:55:14 -08:00
Lakshmanan M
8e91a9d598 gpu: nvgpu: update doxygen for some mm sub units
This patch updates the @retval and @param doxygen documentation
to address review comments for MM SWUD.
1) mm.h
2) nvgpu_mem.h
3) vm.h
4) vm_area.h

JIRA NVGPU-5932

Change-Id: I1616454bd5d7366d7a6e09afe844ac24f50b4890
Signed-off-by: Lakshmanan M <lm@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2472879
(cherry picked from commit 8bdcdb95e8cc8dd7b44eab65541328236a12c21b)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2473534
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Vaibhav Kachore <vkachore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-22 07:05:43 -08:00
Vedashree Vidwans
df1c9c4640 gpu: nvgpu: remove trivial operations before BUG
Corrected ECC errors are not applicable to GV11B. Remove unnecesary
lines of code before invoking BUG().

Jira NVGPU-6272

Change-Id: I410d6463efd39584efdff7939ad66fae8ee63afc
Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2473098
Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Rajesh Devaraj <rdevaraj@nvidia.com>
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-22 07:05:31 -08:00
Alex Waterman
7a1c65c65d gpu: nvgpu: Rename dbg_rec() to rec_dbg()
Since this is backwards compared to other examples (pte_dbg, etc)
this makes more of the dbg helper macros consistent in syntax.

Change-Id: I98e30fd8967b7a86b3902878fecbe91440afa9b3
Signed-off-by: Alex Waterman <alexw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2472520
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-22 07:04:54 -08:00
deepak goyal
90e5950174 nvgpu: gpu: adds support for ACR dbg/prod.
ACR ucode is encrypted using different keys for prod/dbg boards.
This change adds a check to select ACR ucode based on board type.
Note: This support is added for t18x. In the sub-sequent CL, support
for T210 will be added.

Bug 2672836

Change-Id: Ib209f25463d05edae576cfd47b63f562cb8f61e6
Signed-off-by: deepak goyal <dgoyal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2471590
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-22 07:02:48 -08:00
Alex Waterman
11d3785faf gpu: nvgpu: Rename struct nvgpu_runlist_info, fields in fifo
Rename struct nvgpu_runlist_info to struct nvgpu_runlist; the
info is not necessary. struct nvgpu_runlist is soon to be a
first class object among the nvgpu object model.

Also rename the fields runlist_info and active_runlist_info to
simply runlists and active_runlists respectively. Again the info
text is just not necessary and somewhat misleading. These structs
_are_ the runlist representations in SW; they are not merely
informational.

Also add an rl_dbg() macro to print debug info specific to
runlist management and some debug prints specifying the runlist
topology for the running chip.

Change-Id: Id9fcbdd1a7227cb5f8c75cca4abbff94fe048e49
Signed-off-by: Alex Waterman <alexw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470303
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-20 21:56:33 -08:00
Divya Singhatwaria
2949b01491 gpu: nvgpu: update doxygen for power_features
update the doxygen comments for
common.power_features unit

Jira NVGPU-6242

Change-Id: Id5eea40e6281339eac6b2388a311e9cc53d7e8ea
Signed-off-by: Divya Singhatwaria <dsinghatwari@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470971
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-by: Vaibhav Kachore <vkachore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-19 08:03:16 -08:00
Divya Singhatwaria
b77bc1000c gpu: nvgpu: update doxygen in ACR unit
The patch updates doxygen for APIs in ACR unit to enhance the
description to provide the clarity on the existence of a particular
API.

JIRA NVGPU-6242

Change-Id: I8aee3557fd0103772269774758c29440a439d9d0
Signed-off-by: Divya Singhatwaria <dsinghatwari@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2469472
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-by: Vaibhav Kachore <vkachore@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-19 08:03:05 -08:00
Sagar Kamble
cf287a4ef5 gpu: nvgpu: retry tsg unbind if NEXT is set
The NEXT bit can remain set for the channel if timeslice expires before
scheduler clears it. Due to this nvgpu fails TSG unbind and in turn
nvrm_gpu fails channel close. In this case, checking the channel hw
state after some time can help see NEXT bit cleared by scheduler.

Reenable the tsg and return -EAGAIN to nvrm_gpu for it to retry again.

Bug 3144960

Change-Id: I35f417f02270e371a4e632986b73a00f8a4f921a
Signed-off-by: Sagar Kamble <skamble@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2468391
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
2021-01-18 23:11:57 -08:00
Vedashree Vidwans
2fa0e6fca1 gpu: nvgpu: resolve misra 5.7 violation
Rule 5.7 doesn't allow an identifier to be reused. This patch renames
variable "ops" to resolve this violation.

Jira NVGPU-6272

Change-Id: Ica8364a21d28dcf02d935a1b212e334b3f48c98a
Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2471047
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-16 03:19:41 -08:00
Seshendra Gadagottu
2cc8fdfa81 gpu: nvgpu: skip clock queries for un-supported platforms
Skip clock queries in acquire_platform_clocks for
un-supported platforms. Only silicon and fpga has
clocks support.

Bug 3198706

Change-Id: Ie012525802ef6b66709527cac2d4186f5287818a
Signed-off-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2470284
Reviewed-by: Alex Waterman <alexw@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2021-01-14 16:13:54 -08:00