mirror of
https://github.com/NVIDIA/open-gpu-kernel-modules.git
synced 2026-02-07 00:29:58 +00:00
275 lines
15 KiB
C
275 lines
15 KiB
C
/*
|
|
* Copyright (c) 1993-2024, 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"),
|
|
* to deal in the Software without restriction, including without limitation
|
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
* and/or sell copies of the Software, and to permit persons to whom the
|
|
* Software is furnished to do so, subject to the following conditions:
|
|
*
|
|
* The above copyright notice and this permission notice shall be included in
|
|
* all copies or substantial portions of the Software.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
* DEALINGS IN THE SOFTWARE.
|
|
*/
|
|
|
|
#ifndef NVERROR_H
|
|
#define NVERROR_H
|
|
/******************************************************************************
|
|
*
|
|
* File: nverror.h
|
|
*
|
|
* Description:
|
|
* This file contains the error codes set when the error notifier
|
|
* is signaled.
|
|
*
|
|
******************************************************************************/
|
|
|
|
#include "nvcfg_sdk.h"
|
|
|
|
#define ROBUST_CHANNEL_GR_EXCEPTION (13)
|
|
#define ROBUST_CHANNEL_FAKE_ERROR (14)
|
|
#define ROBUST_CHANNEL_VBLANK_CALLBACK_TIMEOUT (16)
|
|
#define ROBUST_CHANNEL_DISP_MISSED_NOTIFIER (19)
|
|
#define ROBUST_CHANNEL_MPEG_ERROR_SW_METHOD (20)
|
|
#define ROBUST_CHANNEL_ME_ERROR_SW_METHOD (21)
|
|
#define ROBUST_CHANNEL_VP_ERROR_SW_METHOD (22)
|
|
#define ROBUST_CHANNEL_RC_LOGGING_ENABLED (23)
|
|
#define ROBUST_CHANNEL_VP_ERROR (27)
|
|
#define ROBUST_CHANNEL_VP2_ERROR (28)
|
|
#define ROBUST_CHANNEL_BSP_ERROR (29)
|
|
#define ROBUST_CHANNEL_UNUSED_ERROR_30 (30)
|
|
#define ROBUST_CHANNEL_FIFO_ERROR_MMU_ERR_FLT (31)
|
|
#define ROBUST_CHANNEL_PBDMA_ERROR (32)
|
|
#define ROBUST_CHANNEL_SEC_ERROR (33)
|
|
#define ROBUST_CHANNEL_MSVLD_ERROR (34)
|
|
#define ROBUST_CHANNEL_MSPDEC_ERROR (35)
|
|
#define ROBUST_CHANNEL_MSPPP_ERROR (36)
|
|
#define ROBUST_CHANNEL_CE0_ERROR (39)
|
|
#define ROBUST_CHANNEL_CE1_ERROR (40)
|
|
#define ROBUST_CHANNEL_CE2_ERROR (41)
|
|
#define ROBUST_CHANNEL_VIC_ERROR (42)
|
|
#define ROBUST_CHANNEL_RESETCHANNEL_VERIF_ERROR (43)
|
|
#define ROBUST_CHANNEL_GR_FAULT_DURING_CTXSW (44)
|
|
#define ROBUST_CHANNEL_PREEMPTIVE_REMOVAL (45)
|
|
#define ROBUST_CHANNEL_NVENC0_ERROR (47)
|
|
#define ROBUST_CHANNEL_GPU_ECC_DBE (48)
|
|
#define FB_MEMORY_ERROR (58)
|
|
#define PMU_ERROR (59)
|
|
#define ROBUST_CHANNEL_SEC2_ERROR (60)
|
|
#define PMU_BREAKPOINT (61)
|
|
#define PMU_HALT_ERROR (62)
|
|
#define INFOROM_PAGE_RETIREMENT_EVENT (63)
|
|
#define INFOROM_DRAM_RETIREMENT_EVENT INFOROM_PAGE_RETIREMENT_EVENT
|
|
#define INFOROM_PAGE_RETIREMENT_FAILURE (64)
|
|
#define INFOROM_DRAM_RETIREMENT_FAILURE INFOROM_PAGE_RETIREMENT_FAILURE
|
|
#define ROBUST_CHANNEL_NVENC1_ERROR (65)
|
|
#define ROBUST_CHANNEL_NVDEC0_ERROR (68)
|
|
#define ROBUST_CHANNEL_GR_CLASS_ERROR (69)
|
|
#define ROBUST_CHANNEL_CE3_ERROR (70)
|
|
#define ROBUST_CHANNEL_CE4_ERROR (71)
|
|
#define ROBUST_CHANNEL_CE5_ERROR (72)
|
|
#define ROBUST_CHANNEL_NVENC2_ERROR (73)
|
|
#define NVLINK_ERROR (74)
|
|
#define ROBUST_CHANNEL_CE6_ERROR (75)
|
|
#define ROBUST_CHANNEL_CE7_ERROR (76)
|
|
#define ROBUST_CHANNEL_CE8_ERROR (77)
|
|
#define VGPU_START_ERROR (78)
|
|
#define ROBUST_CHANNEL_GPU_HAS_FALLEN_OFF_THE_BUS (79)
|
|
#define PBDMA_PUSHBUFFER_CRC_MISMATCH (80)
|
|
#define ROBUST_CHANNEL_VGA_SUBSYSTEM_ERROR (81)
|
|
#define ROBUST_CHANNEL_NVJPG0_ERROR (82)
|
|
#define ROBUST_CHANNEL_NVDEC1_ERROR (83)
|
|
#define ROBUST_CHANNEL_NVDEC2_ERROR (84)
|
|
#define ROBUST_CHANNEL_CE9_ERROR (85)
|
|
#define ROBUST_CHANNEL_OFA0_ERROR (86)
|
|
#define NVTELEMETRY_DRIVER_REPORT (87)
|
|
#define ROBUST_CHANNEL_NVDEC3_ERROR (88)
|
|
#define ROBUST_CHANNEL_NVDEC4_ERROR (89)
|
|
#define LTC_ERROR (90)
|
|
#define RESERVED_XID (91)
|
|
#define EXCESSIVE_SBE_INTERRUPTS (92)
|
|
#define INFOROM_ERASE_LIMIT_EXCEEDED (93)
|
|
#define ROBUST_CHANNEL_CONTAINED_ERROR (94)
|
|
#define ROBUST_CHANNEL_UNCONTAINED_ERROR (95)
|
|
#define ROBUST_CHANNEL_NVDEC5_ERROR (96)
|
|
#define ROBUST_CHANNEL_NVDEC6_ERROR (97)
|
|
#define ROBUST_CHANNEL_NVDEC7_ERROR (98)
|
|
#define ROBUST_CHANNEL_NVJPG1_ERROR (99)
|
|
#define ROBUST_CHANNEL_NVJPG2_ERROR (100)
|
|
#define ROBUST_CHANNEL_NVJPG3_ERROR (101)
|
|
#define ROBUST_CHANNEL_NVJPG4_ERROR (102)
|
|
#define ROBUST_CHANNEL_NVJPG5_ERROR (103)
|
|
#define ROBUST_CHANNEL_NVJPG6_ERROR (104)
|
|
#define ROBUST_CHANNEL_NVJPG7_ERROR (105)
|
|
#define DESTINATION_FLA_TRANSLATION_ERROR (108)
|
|
#define SEC_FAULT_ERROR (110)
|
|
#define GSP_RPC_TIMEOUT (119)
|
|
#define GSP_ERROR (120)
|
|
#define C2C_ERROR (121)
|
|
#define SPI_PMU_RPC_READ_FAIL (122)
|
|
#define SPI_PMU_RPC_WRITE_FAIL (123)
|
|
#define SPI_PMU_RPC_ERASE_FAIL (124)
|
|
#define INFOROM_FS_ERROR (125)
|
|
#define ROBUST_CHANNEL_CE10_ERROR (126)
|
|
#define ROBUST_CHANNEL_CE11_ERROR (127)
|
|
#define ROBUST_CHANNEL_CE12_ERROR (128)
|
|
#define ROBUST_CHANNEL_CE13_ERROR (129)
|
|
#define ROBUST_CHANNEL_CE14_ERROR (130)
|
|
#define ROBUST_CHANNEL_CE15_ERROR (131)
|
|
#define ROBUST_CHANNEL_CE16_ERROR (132)
|
|
#define ROBUST_CHANNEL_CE17_ERROR (133)
|
|
#define ROBUST_CHANNEL_CE18_ERROR (134)
|
|
#define ROBUST_CHANNEL_CE19_ERROR (135)
|
|
#define ALI_TRAINING_FAIL (136)
|
|
#define NVLINK_FLA_PRIV_ERR (137)
|
|
#define ROBUST_CHANNEL_DLA_ERROR (138)
|
|
#define ROBUST_CHANNEL_OFA1_ERROR (139)
|
|
#define UNRECOVERABLE_ECC_ERROR_ESCAPE (140)
|
|
#define ROBUST_CHANNEL_FAST_PATH_ERROR (141)
|
|
#define GPU_INIT_ERROR (143)
|
|
#define NVLINK_SAW_ERROR (144)
|
|
#define NVLINK_RLW_ERROR (145)
|
|
#define NVLINK_TLW_ERROR (146)
|
|
#define NVLINK_TREX_ERROR (147)
|
|
#define NVLINK_NVLPW_CTRL_ERROR (148)
|
|
#define NVLINK_NETIR_ERROR (149)
|
|
#define NVLINK_MSE_ERROR (150)
|
|
#define ROBUST_CHANNEL_KEY_ROTATION_ERROR (151)
|
|
#define RESERVED7_ERROR (152)
|
|
#define RESERVED8_ERROR (153)
|
|
#define ROBUST_CHANNEL_LAST_ERROR (153)
|
|
|
|
|
|
// Indexed CE reference
|
|
#define ROBUST_CHANNEL_CE_ERROR(x) \
|
|
((x < 3) ? \
|
|
(ROBUST_CHANNEL_CE0_ERROR + (x)) : \
|
|
((x < 6) ? \
|
|
(ROBUST_CHANNEL_CE3_ERROR + (x - 3)) : \
|
|
((x < 9) ? \
|
|
(ROBUST_CHANNEL_CE6_ERROR + (x - 6)) : \
|
|
((x == 9) ? \
|
|
(ROBUST_CHANNEL_CE9_ERROR) : \
|
|
(ROBUST_CHANNEL_CE10_ERROR + (x - 10))))))
|
|
|
|
#define ROBUST_CHANNEL_IS_CE_ERROR(x) \
|
|
((x == ROBUST_CHANNEL_CE0_ERROR) || (x == ROBUST_CHANNEL_CE1_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE2_ERROR) || (x == ROBUST_CHANNEL_CE3_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE4_ERROR) || (x == ROBUST_CHANNEL_CE5_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE6_ERROR) || (x == ROBUST_CHANNEL_CE7_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE8_ERROR) || (x == ROBUST_CHANNEL_CE9_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE10_ERROR) || (x == ROBUST_CHANNEL_CE11_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE12_ERROR) || (x == ROBUST_CHANNEL_CE13_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE14_ERROR) || (x == ROBUST_CHANNEL_CE15_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE16_ERROR) || (x == ROBUST_CHANNEL_CE17_ERROR) || \
|
|
(x == ROBUST_CHANNEL_CE18_ERROR) || (x == ROBUST_CHANNEL_CE19_ERROR))
|
|
|
|
#define ROBUST_CHANNEL_CE_ERROR_IDX(x) \
|
|
(((x >= ROBUST_CHANNEL_CE0_ERROR) && (x <= ROBUST_CHANNEL_CE2_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_CE0_ERROR) : \
|
|
(((x >= ROBUST_CHANNEL_CE3_ERROR) && (x <= ROBUST_CHANNEL_CE5_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_CE3_ERROR + 3) : \
|
|
(((x >= ROBUST_CHANNEL_CE6_ERROR) && (x <= ROBUST_CHANNEL_CE8_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_CE6_ERROR + 6) : \
|
|
((x == ROBUST_CHANNEL_CE9_ERROR) ? \
|
|
(x - ROBUST_CHANNEL_CE9_ERROR + 9) : \
|
|
(x - ROBUST_CHANNEL_CE10_ERROR + 10)))))
|
|
|
|
// Indexed NVDEC reference
|
|
#define ROBUST_CHANNEL_NVDEC_ERROR(x) \
|
|
((x < 1) ? \
|
|
(ROBUST_CHANNEL_NVDEC0_ERROR) : \
|
|
((x < 3) ? \
|
|
(ROBUST_CHANNEL_NVDEC1_ERROR + (x - 1)) : \
|
|
((x < 5) ? \
|
|
(ROBUST_CHANNEL_NVDEC3_ERROR + (x - 3)): \
|
|
(ROBUST_CHANNEL_NVDEC5_ERROR + (x - 5)))))
|
|
|
|
#define ROBUST_CHANNEL_IS_NVDEC_ERROR(x) \
|
|
((x == ROBUST_CHANNEL_NVDEC0_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC1_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC2_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC3_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC4_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC5_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC6_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVDEC7_ERROR))
|
|
|
|
#define ROBUST_CHANNEL_NVDEC_ERROR_IDX(x) \
|
|
((x == ROBUST_CHANNEL_NVDEC0_ERROR) ? \
|
|
(x - ROBUST_CHANNEL_NVDEC0_ERROR) : \
|
|
(((x >= ROBUST_CHANNEL_NVDEC1_ERROR) && (x <= ROBUST_CHANNEL_NVDEC2_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_NVDEC1_ERROR + 1) : \
|
|
(((x >= ROBUST_CHANNEL_NVDEC3_ERROR) && (x <= ROBUST_CHANNEL_NVDEC4_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_NVDEC3_ERROR + 3) : \
|
|
(x - ROBUST_CHANNEL_NVDEC5_ERROR + 5))))
|
|
|
|
// Indexed NVENC reference
|
|
#define ROBUST_CHANNEL_NVENC_ERROR(x) \
|
|
((x == 0) ? (ROBUST_CHANNEL_NVENC0_ERROR) : \
|
|
((x == 1) ? (ROBUST_CHANNEL_NVENC1_ERROR) : \
|
|
(ROBUST_CHANNEL_NVENC2_ERROR)))
|
|
|
|
#define ROBUST_CHANNEL_IS_NVENC_ERROR(x) \
|
|
((x == ROBUST_CHANNEL_NVENC0_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVENC1_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVENC2_ERROR))
|
|
|
|
#define ROBUST_CHANNEL_NVENC_ERROR_IDX(x) \
|
|
(((x == ROBUST_CHANNEL_NVENC0_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_NVENC0_ERROR) : \
|
|
(((x == ROBUST_CHANNEL_NVENC1_ERROR)) ? \
|
|
(x - ROBUST_CHANNEL_NVENC1_ERROR + 1) : \
|
|
(x - ROBUST_CHANNEL_NVENC2_ERROR + 2)))
|
|
|
|
// Indexed NVJPG reference
|
|
#define ROBUST_CHANNEL_NVJPG_ERROR(x) \
|
|
((x < 1) ? \
|
|
(ROBUST_CHANNEL_NVJPG0_ERROR) : \
|
|
(ROBUST_CHANNEL_NVJPG1_ERROR + (x - 1)))
|
|
|
|
#define ROBUST_CHANNEL_IS_NVJPG_ERROR(x) \
|
|
((x == ROBUST_CHANNEL_NVJPG0_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG1_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG2_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG3_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG4_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG5_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG6_ERROR) || \
|
|
(x == ROBUST_CHANNEL_NVJPG7_ERROR))
|
|
|
|
#define ROBUST_CHANNEL_NVJPG_ERROR_IDX(x) \
|
|
((x == ROBUST_CHANNEL_NVJPG0_ERROR) ? \
|
|
(x - ROBUST_CHANNEL_NVJPG0_ERROR) : \
|
|
(x - ROBUST_CHANNEL_NVJPG1_ERROR + 1))
|
|
|
|
// Indexed OFA reference
|
|
#define ROBUST_CHANNEL_OFA_ERROR(x) \
|
|
((x == 0) ? \
|
|
(ROBUST_CHANNEL_OFA0_ERROR) : \
|
|
(ROBUST_CHANNEL_OFA1_ERROR))
|
|
|
|
#define ROBUST_CHANNEL_IS_OFA_ERROR(x) \
|
|
((x == ROBUST_CHANNEL_OFA0_ERROR) || \
|
|
(x == ROBUST_CHANNEL_OFA1_ERROR))
|
|
|
|
#define ROBUST_CHANNEL_OFA_ERROR_IDX(x) \
|
|
((x == ROBUST_CHANNEL_OFA0_ERROR) ? \
|
|
(x - ROBUST_CHANNEL_OFA0_ERROR) : \
|
|
(x - ROBUST_CHANNEL_OFA1_ERROR + 1))
|
|
|
|
// Error Levels
|
|
#define ROBUST_CHANNEL_ERROR_RECOVERY_LEVEL_INFO (0)
|
|
#define ROBUST_CHANNEL_ERROR_RECOVERY_LEVEL_NON_FATAL (1)
|
|
#define ROBUST_CHANNEL_ERROR_RECOVERY_LEVEL_FATAL (2)
|
|
|
|
#endif // NVERROR_H
|