From 132f9bdab2ed112dda5d236ea1f4b663774f71ce Mon Sep 17 00:00:00 2001 From: Sagar Kadamati Date: Tue, 20 Dec 2022 11:00:32 +0000 Subject: [PATCH] nvgpu: scripts: update runlist interrupt mask hw register checker detects and error on local setup by nvdvms team. register readout in GVS and nvdvms team setup is different. On Finial System, Checker is expected to run after init But on GVS, Checker runs as a test case along with test other GPU tests. This lead to mismatch between local and gvs testing. register missmatch detected by an hw register checker is not really an error, its related to information. There are two cases for updating mask value 1. These interrupts are mainly for sw information not any errors 2. These are temporary values ready from board We will update these values again once we get finial list from HW team so, we can avoid checking bits 4:7, which represents * NV_RUNLIST_INTR_0_RUNLIST_IDLE 4U:4U /* RWIVF */ * NV_RUNLIST_INTR_0_RUNLIST_AND_ENG_IDLE 5U:5U /* RWXVF */ * NV_RUNLIST_INTR_0_RUNLIST_ACQUIRE 6U:6U /* RWXVF */ * NV_RUNLIST_INTR_0_RUNLIST_ACQUIRE_AND_ENG_IDLE 7U:7U /* RWXVF */ Bug 3912656 Change-Id: I75d1d4737897ef44e78329ed708e86637e8bcf48 Signed-off-by: Sagar Kadamati Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2831273 Reviewed-by: svcacv Reviewed-by: Tejal Kudav Reviewed-by: Ankur Kishore GVS: Gerrit_Virtual_Submit --- scripts/checker/hw_register_generator/Makefile | 2 +- .../hw_register_generator/hw_register_generator.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts/checker/hw_register_generator/Makefile b/scripts/checker/hw_register_generator/Makefile index 85d05a885..e716f487a 100644 --- a/scripts/checker/hw_register_generator/Makefile +++ b/scripts/checker/hw_register_generator/Makefile @@ -22,7 +22,7 @@ repo_path := $(abspath $(shell dirname $(lastword $(MAKEFILE_LIST)))/../../../../..) kernel_path := $(repo_path)/kernel -checker_path := $(repo_path)/qnx/src/resmgrs/nvrm/nvgpu_rmos/checker +checker_path := $(repo_path)/qnx/src/resmgrs/nvrm/nvgpu_rmos/libnvgpu/src/checker flags := -I$(kernel_path)/nvgpu/drivers/gpu/nvgpu/include diff --git a/scripts/checker/hw_register_generator/hw_register_generator.c b/scripts/checker/hw_register_generator/hw_register_generator.c index 7b19957ce..1ff1aa4d6 100644 --- a/scripts/checker/hw_register_generator/hw_register_generator.c +++ b/scripts/checker/hw_register_generator/hw_register_generator.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved. + * Copyright (c) 2023, 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"), @@ -103,7 +103,7 @@ void nvgpu_checker_print_runlist_reg_list(FILE *header) }; u32 runlist_intr_values[NVGPU_RUNLIST_SIZE] = { - 0xf0, 0x30, 0x0, 0x30 + 0x0, 0x0, 0x0, 0x0 }; u32 runlist_intr_vector_0_values[NVGPU_RUNLIST_SIZE] = { @@ -137,10 +137,11 @@ void nvgpu_checker_print_runlist_reg_list(FILE *header) nvgpu_safe_add_u32(runlist_pri_base, runlist_intr_0_en_clear_tree_r(intr_tree_1)), 0x0); - nvgpu_checker_insert_reg_data(header, "runlist_intr_0_r", -1, + nvgpu_checker_insert_reg_data_with_mask(header, + "runlist_intr_0_r", -1, nvgpu_safe_add_u32(runlist_pri_base, runlist_intr_0_r()), - runlist_intr_values[runlist_id]); + runlist_intr_values[runlist_id], 0xFFFFFF0F); nvgpu_checker_insert_reg_data(header, "runlist_intr_vectorid_r", intr_tree_0,