mirror of
https://github.com/NVIDIA/open-gpu-kernel-modules.git
synced 2026-02-28 19:03:58 +00:00
committed by
Gaurav Juvekar
parent
caa2dd11a0
commit
3084c04453
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2005-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2005-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2005-2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2005-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -705,75 +705,13 @@ typedef struct NV2080_CTRL_BUS_SET_PCIE_SPEED_PARAMS {
|
||||
NvU32 busSpeed;
|
||||
} NV2080_CTRL_BUS_SET_PCIE_SPEED_PARAMS;
|
||||
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_2500MBPS (0x00000001)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_5000MBPS (0x00000002)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_8000MBPS (0x00000003)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_16000MBPS (0x00000004)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_32000MBPS (0x00000005)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_64000MBPS (0x00000006)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_2500MBPS (0x00000001)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_5000MBPS (0x00000002)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_8000MBPS (0x00000003)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_16000MBPS (0x00000004)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_32000MBPS (0x00000005)
|
||||
#define NV2080_CTRL_BUS_SET_PCIE_SPEED_64000MBPS (0x00000006)
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED
|
||||
*
|
||||
* This command Initiates a change in PCIE Bus Speed for a HWBC device's upstream
|
||||
* link.
|
||||
*
|
||||
* busSpeed
|
||||
* This field specifies the target speed to which to train.
|
||||
* Legal values for this parameter are:
|
||||
* NV2080_CTRL_BUS_SET_PCIE_SPEED_2500MBPS
|
||||
* NV2080_CTRL_BUS_SET_PCIE_SPEED_5000MBPS
|
||||
* primaryBus
|
||||
* This field is the PCI Express Primary Bus number that uniquely identifies
|
||||
* a HWBC device's upstream port, i.e. the BR04 Upstream Port.
|
||||
*
|
||||
* Possible status values returned are:
|
||||
* NV_OK
|
||||
* NV_ERR_INVALID_ARGUMENT
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED (0x20801806) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_BUS_INTERFACE_ID << 8) | NV2080_CTRL_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS_MESSAGE_ID (0x6U)
|
||||
|
||||
typedef struct NV2080_CTRL_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS {
|
||||
NvU32 busSpeed;
|
||||
NvU8 primaryBus;
|
||||
} NV2080_CTRL_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS;
|
||||
|
||||
#define NV2080_CTRL_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED_2500MBPS (0x00000001)
|
||||
#define NV2080_CTRL_BUS_SET_HWBC_UPSTREAM_PCIE_SPEED_5000MBPS (0x00000002)
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED
|
||||
*
|
||||
* This command gets the current PCIE Bus Speed for a HWBC device's upstream
|
||||
* link.
|
||||
*
|
||||
* primaryBus
|
||||
* This field is the PCI Express Primary Bus number that uniquely identifies
|
||||
* a HWBC device's upstream port, i.e. the BR04 Upstream Port.
|
||||
* busSpeed
|
||||
* This field specifies a pointer in the caller's address space
|
||||
* to the NvU32 variable into which the bus speed is to be returned.
|
||||
* On success, this parameter will contain one of the following values:
|
||||
* NV2080_CTRL_BUS_SET_PCIE_SPEED_2500MBPS
|
||||
* NV2080_CTRL_BUS_SET_PCIE_SPEED_5000MBPS
|
||||
*
|
||||
* Possible status values returned are:
|
||||
* NV_OK
|
||||
* NV_ERR_INVALID_ARGUMENT
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED (0x20801807) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_BUS_INTERFACE_ID << 8) | NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS_MESSAGE_ID (0x7U)
|
||||
|
||||
typedef struct NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS {
|
||||
NvU32 busSpeed;
|
||||
NvU8 primaryBus;
|
||||
} NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS;
|
||||
|
||||
#define NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_2500MBPS (0x00000001)
|
||||
#define NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_5000MBPS (0x00000002)
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_BUS_MAP_BAR2
|
||||
@@ -791,7 +729,7 @@ typedef struct NV2080_CTRL_BUS_GET_HWBC_UPSTREAM_PCIE_SPEED_PARAMS {
|
||||
* NV_ERR_NOT_SUPPORTED
|
||||
*
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_BUS_MAP_BAR2 (0x20801809) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_BUS_INTERFACE_ID << 8) | NV2080_CTRL_BUS_MAP_BAR2_PARAMS_MESSAGE_ID" */
|
||||
#define NV2080_CTRL_CMD_BUS_MAP_BAR2 (0x20801809) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_BUS_INTERFACE_ID << 8) | NV2080_CTRL_BUS_MAP_BAR2_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_BUS_MAP_BAR2_PARAMS_MESSAGE_ID (0x9U)
|
||||
|
||||
@@ -853,31 +791,6 @@ typedef struct NV2080_CTRL_BUS_VERIFY_BAR2_PARAMS {
|
||||
NvU32 size;
|
||||
} NV2080_CTRL_BUS_VERIFY_BAR2_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_BUS_HWBC_GET_UPSTREAM_BAR0
|
||||
*
|
||||
* This command gets the BAR0 for a HWBC device's upstream port.
|
||||
*
|
||||
* primaryBus
|
||||
* This field is the PCI Express Primary Bus number that uniquely identifies
|
||||
* a HWBC device's upstream port, i.e. the BR04 Upstream Port.
|
||||
* physBAR0
|
||||
* This field returns the BAR0 physical address of the HWBC device's
|
||||
* upstream port.
|
||||
*
|
||||
* Possible status values returned are:
|
||||
* NV_OK
|
||||
* NV_ERR_INVALID_ARGUMENT
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_BUS_HWBC_GET_UPSTREAM_BAR0 (0x2080180e) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_BUS_INTERFACE_ID << 8) | NV2080_CTRL_BUS_HWBC_GET_UPSTREAM_BAR0_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_BUS_HWBC_GET_UPSTREAM_BAR0_PARAMS_MESSAGE_ID (0xEU)
|
||||
|
||||
typedef struct NV2080_CTRL_BUS_HWBC_GET_UPSTREAM_BAR0_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NvU64 physBAR0, 8);
|
||||
NvU8 primaryBus;
|
||||
} NV2080_CTRL_BUS_HWBC_GET_UPSTREAM_BAR0_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_BUS_SERVICE_GPU_MULTIFUNC_STATE
|
||||
* This command would reports the current Audio device power state or Sets new power state.
|
||||
@@ -1417,15 +1330,9 @@ typedef struct NV2080_CTRL_CMD_BUS_GET_PCIE_SUPPORTED_GPU_ATOMICS_PARAMS {
|
||||
*
|
||||
* remoteType[OUT]
|
||||
* NV2080_CTRL_BUS_GET_C2C_INFO_REMOTE_TYPE_CPU - connected to a CPU
|
||||
* in either self-hosted mode or externally-hostedmode.
|
||||
*/
|
||||
|
||||
/*
|
||||
* in either self-hosted mode or
|
||||
* externally-hostedmode.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
#define NV2080_CTRL_CMD_BUS_GET_C2C_INFO (0x2080182b) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_BUS_INTERFACE_ID << 8) | NV2080_CTRL_CMD_BUS_GET_C2C_INFO_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_CMD_BUS_GET_C2C_INFO_PARAMS_MESSAGE_ID (0x2BU)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2006-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2006-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -2151,7 +2151,7 @@ typedef struct NV2080_CTRL_FB_FS_INFO_INVALID_QUERY_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_FBP_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: swizzId
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition. Currently used only for a
|
||||
* device monitoring client to get the physical values of the FB. The client needs to pass
|
||||
* 'NV2080_CTRL_GPU_PARTITION_ID_INVALID' explicitly if it wants RM to ignore the swizzId.
|
||||
@@ -2160,7 +2160,7 @@ typedef struct NV2080_CTRL_FB_FS_INFO_FBP_MASK_PARAMS {
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [OUT]: physical/local fbp mask.
|
||||
* [out]: physical/local fbp mask.
|
||||
*/
|
||||
NV_DECLARE_ALIGNED(NvU64 fbpEnMask, 8);
|
||||
} NV2080_CTRL_FB_FS_INFO_FBP_MASK_PARAMS;
|
||||
@@ -2170,11 +2170,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_FBP_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_LTC_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: physical/local ltc mask.
|
||||
* [out]: physical/local ltc mask.
|
||||
*/
|
||||
NvU32 ltcEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_LTC_MASK_PARAMS;
|
||||
@@ -2184,11 +2184,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_LTC_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_LTS_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: physical/local lts mask.
|
||||
* [out]: physical/local lts mask.
|
||||
* Note that lts bits are flattened out for all ltc with in a fbp.
|
||||
*/
|
||||
NvU32 ltsEnMask;
|
||||
@@ -2199,11 +2199,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_LTS_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_FBPA_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: physical/local FBPA mask.
|
||||
* [out]: physical/local FBPA mask.
|
||||
*/
|
||||
NvU32 fbpaEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_FBPA_MASK_PARAMS;
|
||||
@@ -2213,11 +2213,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_FBPA_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_FBPA_SUBP_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: physical/local FBPA-SubPartition mask.
|
||||
* [out]: physical/local FBPA-SubPartition mask.
|
||||
*/
|
||||
NvU32 fbpaSubpEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_FBPA_SUBP_MASK_PARAMS;
|
||||
@@ -2227,11 +2227,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_FBPA_SUBP_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_FBP_LOGICAL_MAP_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: Logical/local FBP index
|
||||
* [out]: Logical/local FBP index
|
||||
*/
|
||||
NvU32 fbpLogicalIndex;
|
||||
} NV2080_CTRL_FB_FS_INFO_FBP_LOGICAL_MAP_PARAMS;
|
||||
@@ -2241,11 +2241,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_FBP_LOGICAL_MAP_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_ROP_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: physical/local ROP mask.
|
||||
* [out]: physical/local ROP mask.
|
||||
*/
|
||||
NvU32 ropEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_ROP_MASK_PARAMS;
|
||||
@@ -2255,16 +2255,16 @@ typedef struct NV2080_CTRL_FB_FS_INFO_ROP_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTC_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: Physical FB partition index.
|
||||
* [in]: Physical FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [IN]: swizzId
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition.
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [OUT]: physical ltc mask.
|
||||
* [out]: physical ltc mask.
|
||||
*/
|
||||
NvU32 ltcEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTC_MASK_PARAMS;
|
||||
@@ -2274,16 +2274,16 @@ typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTC_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTS_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: Physical FB partition index.
|
||||
* [in]: Physical FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [IN]: swizzId
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition.
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [OUT]: physical lts mask.
|
||||
* [out]: physical lts mask.
|
||||
*/
|
||||
NvU32 ltsEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTS_MASK_PARAMS;
|
||||
@@ -2293,16 +2293,16 @@ typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTS_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: Physical FB partition index.
|
||||
* [in]: Physical FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [IN]: swizzId
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition.
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [OUT]: physical fbpa mask.
|
||||
* [out]: physical fbpa mask.
|
||||
*/
|
||||
NvU32 fbpaEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_MASK_PARAMS;
|
||||
@@ -2312,16 +2312,16 @@ typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_ROP_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: Physical FB partition index.
|
||||
* [in]: Physical FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [IN]: swizzId
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition.
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [OUT]: physical rop mask.
|
||||
* [out]: physical rop mask.
|
||||
*/
|
||||
NvU32 ropEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_PROFILER_MON_ROP_MASK_PARAMS;
|
||||
@@ -2331,11 +2331,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_ROP_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_SUBP_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: Physical FB partition index.
|
||||
* [in]: Physical FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [IN]: swizzId
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition. Currently used only for a
|
||||
* device monitoring client to get the physical values of the FB. The client needs to pass
|
||||
* 'NV2080_CTRL_GPU_PARTITION_ID_INVALID' explicitly if it wants RM to ignore the swizzId.
|
||||
@@ -2344,7 +2344,7 @@ typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_SUBP_MASK_PARAMS {
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [OUT]: physical FBPA_SubPartition mask associated with requested partition.
|
||||
* [out]: physical FBPA_SubPartition mask associated with requested partition.
|
||||
*/
|
||||
NV_DECLARE_ALIGNED(NvU64 fbpaSubpEnMask, 8);
|
||||
} NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_SUBP_MASK_PARAMS;
|
||||
@@ -2354,11 +2354,11 @@ typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_SUBP_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_SYSL2_FS_INFO_SYSLTC_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local sys Id.
|
||||
* [in]: physical/local sys Id.
|
||||
*/
|
||||
NvU32 sysIdx;
|
||||
/*!
|
||||
* [OUT]: physical/local sysltc mask.
|
||||
* [out]: physical/local sysltc mask.
|
||||
*/
|
||||
NvU32 sysl2LtcEnMask;
|
||||
} NV2080_CTRL_SYSL2_FS_INFO_SYSLTC_MASK_PARAMS;
|
||||
@@ -2368,31 +2368,66 @@ typedef struct NV2080_CTRL_SYSL2_FS_INFO_SYSLTC_MASK_PARAMS {
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PAC_MASK_PARAMS {
|
||||
/*!
|
||||
* [IN]: physical/local FB partition index.
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [OUT]: physical/local PAC mask.
|
||||
* [out]: physical/local PAC mask.
|
||||
*/
|
||||
NvU32 pacEnMask;
|
||||
} NV2080_CTRL_FB_FS_INFO_PAC_MASK_PARAMS;
|
||||
|
||||
/*!
|
||||
* Structure holding the in/out params for NV2080_CTRL_FB_FS_INFO_LOGICAL_LTC_MASK.
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_LOGICAL_LTC_MASK_PARAMS {
|
||||
/*!
|
||||
* [in]: physical/local FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [out]: logical/local ltc mask.
|
||||
*/
|
||||
NV_DECLARE_ALIGNED(NvU64 logicalLtcEnMask, 8);
|
||||
} NV2080_CTRL_FB_FS_INFO_LOGICAL_LTC_MASK_PARAMS;
|
||||
|
||||
/*!
|
||||
* Structure holding the in/out params for NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LOGICAL_LTC_MASK.
|
||||
*/
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LOGICAL_LTC_MASK_PARAMS {
|
||||
/*!
|
||||
* [in]: Physical FB partition index.
|
||||
*/
|
||||
NvU32 fbpIndex;
|
||||
/*!
|
||||
* [in]: swizzId
|
||||
* PartitionID associated with a created smc partition.
|
||||
*/
|
||||
NvU32 swizzId;
|
||||
/*!
|
||||
* [out]: logical ltc mask.
|
||||
*/
|
||||
NV_DECLARE_ALIGNED(NvU64 logicalLtcEnMask, 8);
|
||||
} NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LOGICAL_LTC_MASK_PARAMS;
|
||||
|
||||
// Possible values for queryType
|
||||
#define NV2080_CTRL_FB_FS_INFO_INVALID_QUERY 0x0U
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBP_MASK 0x1U
|
||||
#define NV2080_CTRL_FB_FS_INFO_LTC_MASK 0x2U
|
||||
#define NV2080_CTRL_FB_FS_INFO_LTS_MASK 0x3U
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBPA_MASK 0x4U
|
||||
#define NV2080_CTRL_FB_FS_INFO_ROP_MASK 0x5U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTC_MASK 0x6U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTS_MASK 0x7U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_MASK 0x8U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_ROP_MASK 0x9U
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBPA_SUBP_MASK 0xAU
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_SUBP_MASK 0xBU
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBP_LOGICAL_MAP 0xCU
|
||||
#define NV2080_CTRL_SYSL2_FS_INFO_SYSLTC_MASK 0xDU
|
||||
#define NV2080_CTRL_FB_FS_INFO_PAC_MASK 0xEU
|
||||
#define NV2080_CTRL_FB_FS_INFO_INVALID_QUERY 0x0U
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBP_MASK 0x1U
|
||||
#define NV2080_CTRL_FB_FS_INFO_LTC_MASK 0x2U
|
||||
#define NV2080_CTRL_FB_FS_INFO_LTS_MASK 0x3U
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBPA_MASK 0x4U
|
||||
#define NV2080_CTRL_FB_FS_INFO_ROP_MASK 0x5U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTC_MASK 0x6U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LTS_MASK 0x7U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_MASK 0x8U
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_ROP_MASK 0x9U
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBPA_SUBP_MASK 0xAU
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_FBPA_SUBP_MASK 0xBU
|
||||
#define NV2080_CTRL_FB_FS_INFO_FBP_LOGICAL_MAP 0xCU
|
||||
#define NV2080_CTRL_SYSL2_FS_INFO_SYSLTC_MASK 0xDU
|
||||
#define NV2080_CTRL_FB_FS_INFO_PAC_MASK 0xEU
|
||||
#define NV2080_CTRL_FB_FS_INFO_LOGICAL_LTC_MASK 0xFU
|
||||
#define NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LOGICAL_LTC_MASK 0x10U
|
||||
|
||||
typedef struct NV2080_CTRL_FB_FS_INFO_QUERY {
|
||||
NvU16 queryType;
|
||||
@@ -2414,6 +2449,8 @@ typedef struct NV2080_CTRL_FB_FS_INFO_QUERY {
|
||||
NV2080_CTRL_FB_FS_INFO_FBP_LOGICAL_MAP_PARAMS fbpLogicalMap;
|
||||
NV2080_CTRL_SYSL2_FS_INFO_SYSLTC_MASK_PARAMS sysl2Ltc;
|
||||
NV2080_CTRL_FB_FS_INFO_PAC_MASK_PARAMS pac;
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_FB_FS_INFO_LOGICAL_LTC_MASK_PARAMS logicalLtc, 8);
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_FB_FS_INFO_PROFILER_MON_LOGICAL_LTC_MASK_PARAMS dmLogicalLtc, 8);
|
||||
} queryParams;
|
||||
} NV2080_CTRL_FB_FS_INFO_QUERY;
|
||||
|
||||
@@ -2761,6 +2798,30 @@ typedef struct NV2080_CTRL_CMD_FB_STATS_ENTRY {
|
||||
NV_DECLARE_ALIGNED(NvU64 freeSize, 8);
|
||||
} NV2080_CTRL_CMD_FB_STATS_ENTRY;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_GMMU_COMMIT_TLB_INVALIDATE
|
||||
*
|
||||
* This control command is used by clients to commit TLB invalidates
|
||||
*
|
||||
* gfid[OUT]
|
||||
* - Specifices GPU function ID.
|
||||
*
|
||||
* invalidateAll[OUT]
|
||||
* - Specifies whether to invalidate all using boolean
|
||||
*
|
||||
* @returns Possible status values returned are:
|
||||
* NV_OK
|
||||
* NV_ERR_NOT_SUPPORTED
|
||||
*
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_GMMU_COMMIT_TLB_INVALIDATE (0x20801353U) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_FB_INTERFACE_ID << 8) | NV2080_CTRL_GMMU_COMMIT_TLB_INVALIDATE_PARAMS_MESSAGE_ID" */
|
||||
#define NV2080_CTRL_GMMU_COMMIT_TLB_INVALIDATE_PARAMS_MESSAGE_ID (0x53U)
|
||||
|
||||
typedef struct NV2080_CTRL_GMMU_COMMIT_TLB_INVALIDATE_PARAMS {
|
||||
NvU32 gfid;
|
||||
NvBool invalidateAll;
|
||||
} NV2080_CTRL_GMMU_COMMIT_TLB_INVALIDATE_PARAMS;
|
||||
|
||||
typedef struct NV2080_CTRL_CMD_FB_STATS_OWNER_INFO {
|
||||
//! Total allocated size for this owner
|
||||
NV_DECLARE_ALIGNED(NvU64 allocSize, 8);
|
||||
|
||||
@@ -905,34 +905,6 @@ typedef struct NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_PARAMS {
|
||||
NvBool bEnableAfterKeyRotation;
|
||||
} NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_V2
|
||||
*
|
||||
* This command does the same thing as @ref NV2080_CTRL_CMD_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION.
|
||||
* The difference is that it doesn't take a list of clients and instead all channels belong
|
||||
* to the client on which this control call is made.
|
||||
*
|
||||
* numChannels
|
||||
* The number of valid entries in hChannelList array.
|
||||
* hChannelList
|
||||
* An array of NvHandle listing the channel handles
|
||||
* to be stopped.
|
||||
* bEnableAfterKeyRotation
|
||||
* This determines if channel is enabled by RM after it completes key rotation.
|
||||
* Possible status values returned are:
|
||||
* NV_OK
|
||||
* NVOS_INVALID_STATE
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_V2 (0x2080111b) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_FIFO_INTERFACE_ID << 8) | NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_V2_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_V2_PARAMS_MESSAGE_ID (0x1BU)
|
||||
|
||||
typedef struct NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_V2_PARAMS {
|
||||
NvU32 numChannels;
|
||||
NvHandle hChannelList[NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_MAX_ENTRIES];
|
||||
NvBool bEnableAfterKeyRotation;
|
||||
} NV2080_CTRL_FIFO_DISABLE_CHANNELS_FOR_KEY_ROTATION_V2_PARAMS;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2014-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2014-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2006-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2006-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -60,8 +60,12 @@ typedef NVXXXX_CTRL_XXX_INFO NV2080_CTRL_GPU_INFO;
|
||||
|
||||
/* valid gpu info index values */
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_INDEX 23:0
|
||||
|
||||
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_ECID_LO32 (0x00000001U)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_ECID_HI32 (0x00000002U)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_MINOR_REVISION_EXT (0x00000004U)
|
||||
|
||||
|
||||
@@ -69,6 +73,7 @@ typedef NVXXXX_CTRL_XXX_INFO NV2080_CTRL_GPU_INFO;
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_NETLIST_REV1 (0x00000013U)
|
||||
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_ECID_EXTENDED (0x0000001bU)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_SYSMEM_ACCESS (0x0000001fU)
|
||||
|
||||
|
||||
@@ -100,8 +105,6 @@ typedef NVXXXX_CTRL_XXX_INFO NV2080_CTRL_GPU_INFO;
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_LOCAL_EGM_CAPABILITY (0x0000003aU)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_SELF_HOSTED_CAPABILITY (0x0000003bU)
|
||||
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_CMP_SKU (0x0000003cU)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_DMABUF_CAPABILITY (0x0000003dU)
|
||||
|
||||
@@ -112,6 +115,9 @@ typedef NVXXXX_CTRL_XXX_INFO NV2080_CTRL_GPU_INFO;
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_MAX_LIST_SIZE (0x00000041U)
|
||||
|
||||
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_RESERVED 31:31
|
||||
|
||||
/* valid minor revision extended values */
|
||||
#define NV2080_CTRL_GPU_INFO_MINOR_REVISION_EXT_NONE (0x00000000U)
|
||||
#define NV2080_CTRL_GPU_INFO_MINOR_REVISION_EXT_P (0x00000001U)
|
||||
@@ -201,6 +207,7 @@ typedef NVXXXX_CTRL_XXX_INFO NV2080_CTRL_GPU_INFO;
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_DEBUGGING_CAPABILITY_ENABLED (0x00000001U)
|
||||
|
||||
|
||||
|
||||
/* valid local EGM supported values */
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_LOCAL_EGM_CAPABILITY_NO (0x00000000U)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_LOCAL_EGM_CAPABILITY_YES (0x00000001U)
|
||||
@@ -210,8 +217,6 @@ typedef NVXXXX_CTRL_XXX_INFO NV2080_CTRL_GPU_INFO;
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_SELF_HOSTED_CAPABILITY_NO (0x00000000U)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_GPU_SELF_HOSTED_CAPABILITY_YES (0x00000001U)
|
||||
|
||||
|
||||
|
||||
/* valid CMP (Crypto Mining Processor) SKU values */
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_CMP_SKU_NO (0x00000000U)
|
||||
#define NV2080_CTRL_GPU_INFO_INDEX_CMP_SKU_YES (0x00000001U)
|
||||
@@ -1121,7 +1126,7 @@ typedef struct NV2080_CTRL_GPU_QUERY_ECC_INTR_PARAMS {
|
||||
#define NV2080_CTRL_CMD_GPU_QUERY_ECC_STATUS (0x2080012fU) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_GPU_INTERFACE_ID << 8) | NV2080_CTRL_GPU_QUERY_ECC_STATUS_PARAMS_MESSAGE_ID" */
|
||||
|
||||
|
||||
#define NV2080_CTRL_GPU_ECC_UNIT_COUNT (0x00000019U)
|
||||
#define NV2080_CTRL_GPU_ECC_UNIT_COUNT (0x0000001EU)
|
||||
|
||||
|
||||
|
||||
@@ -3805,8 +3810,6 @@ typedef struct NV2080_CTRL_GPU_SET_EGM_GPA_FABRIC_BASE_ADDR_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NvU64 egmGpaFabricBaseAddr, 8);
|
||||
} NV2080_CTRL_GPU_SET_EGM_GPA_FABRIC_BASE_ADDR_PARAMS;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_GPU_GET_ENGINE_LOAD_TIMES
|
||||
*
|
||||
@@ -3931,6 +3934,9 @@ typedef struct NV2080_CTRL_GPU_EXEC_REG_OPS_NOPTRS_PARAMS {
|
||||
* [out] busPeerId
|
||||
* Bus peer ID. For an invalid or a non-existent peer this field
|
||||
* has the value NV0000_CTRL_SYSTEM_GET_P2P_CAPS_INVALID_PEER.
|
||||
* [out] busEgmPeerId
|
||||
* Bus EGM peer ID. For an invalid or a non-existent peer this field
|
||||
* has the value NV0000_CTRL_SYSTEM_GET_P2P_CAPS_INVALID_PEER.
|
||||
*/
|
||||
#define NV2080_GET_P2P_CAPS_UUID_LEN 16U
|
||||
|
||||
@@ -3942,6 +3948,7 @@ typedef struct NV2080_CTRL_GPU_P2P_PEER_CAPS_PEER_INFO {
|
||||
NvU32 p2pOptimalWriteCEs;
|
||||
NvU8 p2pCapsStatus[NV0000_CTRL_P2P_CAPS_INDEX_TABLE_SIZE];
|
||||
NvU32 busPeerId;
|
||||
NvU32 busEgmPeerId;
|
||||
} NV2080_CTRL_GPU_P2P_PEER_CAPS_PEER_INFO;
|
||||
|
||||
/*!
|
||||
|
||||
@@ -74,7 +74,6 @@ typedef struct NV2080_CTRL_INTERNAL_DISPLAY_GET_STATIC_INFO_PARAMS {
|
||||
NvU32 windowPresentMask;
|
||||
NvBool bFbRemapperEnabled;
|
||||
NvU32 numHeads;
|
||||
NvBool bPrimaryVga;
|
||||
NvU32 i2cPort;
|
||||
NvU32 internalDispActiveMask;
|
||||
NvU32 embeddedDisplayPortMask;
|
||||
@@ -212,23 +211,6 @@ typedef struct NV2080_CTRL_INTERNAL_STATIC_GR_GET_CAPS_PARAMS {
|
||||
|
||||
typedef NV2080_CTRL_INTERNAL_STATIC_GR_GET_CAPS_PARAMS NV2080_CTRL_INTERNAL_STATIC_KGR_GET_CAPS_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_FLAGS
|
||||
*
|
||||
* Set flags for use by the video event buffer
|
||||
*
|
||||
* flags
|
||||
* VIDEO_TRACE_FLAG__*
|
||||
*
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_FLAGS (0x20800a21) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_FLAGS_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_FLAGS_PARAMS_MESSAGE_ID (0x21U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_FLAGS_PARAMS {
|
||||
NvU32 flags;
|
||||
} NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_FLAGS_PARAMS;
|
||||
|
||||
/*!
|
||||
* @ref NV2080_CTRL_CMD_GR_GET_GLOBAL_SM_ORDER
|
||||
* @ref NV2080_CTRL_CMD_GR_GET_SM_TO_GPC_TPC_MAPPINGS
|
||||
@@ -265,36 +247,30 @@ typedef struct NV2080_CTRL_INTERNAL_STATIC_GR_GET_GLOBAL_SM_ORDER_PARAMS {
|
||||
typedef NV2080_CTRL_INTERNAL_STATIC_GR_GET_GLOBAL_SM_ORDER_PARAMS NV2080_CTRL_INTERNAL_STATIC_KGR_GET_GLOBAL_SM_ORDER_PARAMS;
|
||||
|
||||
/*!
|
||||
* Retrieve BSP Static data.
|
||||
* BSP Static data.
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_BSP_GET_CAPS (0x20800a24) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_BSP_GET_CAPS_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_CMD_INTERNAL_MAX_BSPS 8
|
||||
#define NV2080_CTRL_CMD_INTERNAL_MAX_BSPS 8
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_BSP_CAPS {
|
||||
NvU8 capsTbl[NV0080_CTRL_BSP_CAPS_TBL_SIZE];
|
||||
} NV2080_CTRL_INTERNAL_BSP_CAPS;
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_BSP_GET_CAPS_PARAMS_MESSAGE_ID (0x24U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_BSP_GET_CAPS_PARAMS {
|
||||
NV2080_CTRL_INTERNAL_BSP_CAPS caps[NV2080_CTRL_CMD_INTERNAL_MAX_BSPS];
|
||||
NvBool valid[NV2080_CTRL_CMD_INTERNAL_MAX_BSPS];
|
||||
} NV2080_CTRL_INTERNAL_BSP_GET_CAPS_PARAMS;
|
||||
|
||||
/*!
|
||||
* Retrieve MSENC Static data.
|
||||
* MSENC Static data.
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_MSENC_GET_CAPS (0x20800a25) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_MSENC_GET_CAPS_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_CMD_INTERNAL_MAX_MSENCS 8
|
||||
#define NV2080_CTRL_CMD_INTERNAL_MAX_MSENCS 8
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_MSENC_CAPS {
|
||||
NvU8 capsTbl[NV0080_CTRL_MSENC_CAPS_TBL_SIZE];
|
||||
} NV2080_CTRL_INTERNAL_MSENC_CAPS;
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_MSENC_GET_CAPS_PARAMS_MESSAGE_ID (0x25U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_MSENC_GET_CAPS_PARAMS {
|
||||
NV2080_CTRL_INTERNAL_MSENC_CAPS caps[NV2080_CTRL_CMD_INTERNAL_MAX_MSENCS];
|
||||
NvBool valid[NV2080_CTRL_CMD_INTERNAL_MAX_MSENCS];
|
||||
@@ -411,30 +387,6 @@ typedef struct NV2080_CTRL_INTERNAL_MEMDESC_INFO {
|
||||
NvU32 cpuCacheAttrib;
|
||||
} NV2080_CTRL_INTERNAL_MEMDESC_INFO;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_MEMORY
|
||||
*
|
||||
* Set memory for use by the video event buffer
|
||||
*
|
||||
* memDescInfo
|
||||
* Information to set up memory descriptor on GSP
|
||||
*
|
||||
* engDesc
|
||||
* Video engdesc to find correct engine
|
||||
*
|
||||
* bEngineFound
|
||||
* Bool for whether or not the engine is actually assigned to a video object
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_MEMORY (0x20800a29) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_MEMORY_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_MEMORY_PARAMS_MESSAGE_ID (0x29U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_MEMORY_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_INTERNAL_MEMDESC_INFO memDescInfo, 8);
|
||||
NvU32 engDesc;
|
||||
NvBool bEngineFound;
|
||||
} NV2080_CTRL_INTERNAL_FLCN_SET_VIDEO_EVENT_BUFFER_MEMORY_PARAMS;
|
||||
|
||||
/*!
|
||||
* @ref NV0080_CTRL_CMD_GR_GET_INFO
|
||||
* @ref NV0080_CTRL_CMD_GR_GET_INFO_V2
|
||||
@@ -2372,8 +2324,6 @@ typedef struct NV2080_CTRL_INTERNAL_HSHUB_EGM_CONFIG_PARAMS {
|
||||
NvU32 egmPeerId;
|
||||
} NV2080_CTRL_INTERNAL_HSHUB_EGM_CONFIG_PARAMS;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_NVLINK_ENABLE_COMPUTE_PEER_ADDR
|
||||
*
|
||||
@@ -2468,6 +2418,21 @@ typedef struct NV2080_CTRL_INTERNAL_MEMSYS_PROGRAM_RAW_COMPRESSION_MODE_PARAMS {
|
||||
NvBool bRawMode;
|
||||
} NV2080_CTRL_INTERNAL_MEMSYS_PROGRAM_RAW_COMPRESSION_MODE_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_CCU_GET_SAMPLE_INFO
|
||||
*
|
||||
* This command gets the CCU samples Info from physical-RM.
|
||||
*
|
||||
* Possible status values returned are:
|
||||
* NV_OK
|
||||
* NV_ERR_NOT_SUPPORTED
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_CCU_GET_SAMPLE_INFO (0x20800ab2) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | 0xB2" */
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_CCU_SAMPLE_INFO_PARAMS {
|
||||
NvU32 ccuSampleSize;
|
||||
} NV2080_CTRL_INTERNAL_CCU_SAMPLE_INFO_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_CCU_MAP
|
||||
*
|
||||
@@ -2482,11 +2447,19 @@ typedef struct NV2080_CTRL_INTERNAL_MEMSYS_PROGRAM_RAW_COMPRESSION_MODE_PARAMS {
|
||||
#define NV2080_CTRL_CMD_INTERNAL_CCU_MAP (0x20800ab3) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_CCU_MAP_INFO_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_CCU_DEV_SHRBUF_COUNT_MAX 1
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_CCU_MAP_INFO {
|
||||
NV_DECLARE_ALIGNED(NvU64 phyAddr, 8);
|
||||
NvU32 shrBufSize;
|
||||
NvU32 cntBlkSize;
|
||||
} NV2080_CTRL_INTERNAL_CCU_MAP_INFO;
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_CCU_MAP_INFO_PARAMS_MESSAGE_ID (0xB3U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_CCU_MAP_INFO_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NvU64 phyAddr[NV2080_CTRL_INTERNAL_MEMSYS_GET_MIG_MEMORY_PARTITION_TABLE_SIZE + NV2080_CTRL_INTERNAL_CCU_DEV_SHRBUF_COUNT_MAX], 8);
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_INTERNAL_CCU_MAP_INFO mapInfo[NV2080_CTRL_INTERNAL_MEMSYS_GET_MIG_MEMORY_PARTITION_TABLE_SIZE + NV2080_CTRL_INTERNAL_CCU_DEV_SHRBUF_COUNT_MAX], 8);
|
||||
} NV2080_CTRL_INTERNAL_CCU_MAP_INFO_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_CCU_UNMAP
|
||||
*
|
||||
@@ -2524,6 +2497,9 @@ typedef struct NV2080_CTRL_INTERNAL_CCU_UNMAP_INFO_PARAMS {
|
||||
* [in] busPeerId
|
||||
* Bus peer ID. For an invalid or a non-existent peer this field
|
||||
* has the value NV0000_CTRL_SYSTEM_GET_P2P_CAPS_INVALID_PEER.
|
||||
* [in] busEgmPeerId
|
||||
* Bus EGM peer ID. For an invalid or a non-existent peer this field
|
||||
* has the value NV0000_CTRL_SYSTEM_GET_P2P_CAPS_INVALID_PEER.
|
||||
*/
|
||||
typedef struct NV2080_CTRL_INTERNAL_SET_P2P_CAPS_PEER_INFO {
|
||||
NvU32 gpuId;
|
||||
@@ -2533,6 +2509,7 @@ typedef struct NV2080_CTRL_INTERNAL_SET_P2P_CAPS_PEER_INFO {
|
||||
NvU32 p2pOptimalWriteCEs;
|
||||
NvU8 p2pCapsStatus[NV0000_CTRL_P2P_CAPS_INDEX_TABLE_SIZE];
|
||||
NvU32 busPeerId;
|
||||
NvU32 busEgmPeerId;
|
||||
} NV2080_CTRL_INTERNAL_SET_P2P_CAPS_PEER_INFO;
|
||||
|
||||
/*!
|
||||
@@ -2955,16 +2932,10 @@ typedef struct NV2080_CTRL_INTERNAL_GSYNC_SET_OR_RESTORE_RASTER_SYNC_PARAMS {
|
||||
*
|
||||
* Initialize FBSR on GSP to prepare for suspend-resume
|
||||
*
|
||||
* [in] fbsrType
|
||||
* Fbsr object type
|
||||
* [in] numRegions
|
||||
* Number of regions that GSP should allocate records for
|
||||
* [in] hClient
|
||||
* Handle to client of SYSMEM memlist object
|
||||
* [in] hSysMem
|
||||
* Handle to SYSMEM memlist object
|
||||
* [in] gspFbAllocsSysOffset
|
||||
* Offset in SYSMEM for GSP's FB Allocations
|
||||
* [in] bEnteringGcoffState
|
||||
* Value of PDB_PROP_GPU_GCOFF_STATE_ENTERING
|
||||
*
|
||||
@@ -2979,44 +2950,29 @@ typedef struct NV2080_CTRL_INTERNAL_GSYNC_SET_OR_RESTORE_RASTER_SYNC_PARAMS {
|
||||
#define NV2080_CTRL_INTERNAL_FBSR_INIT_PARAMS_MESSAGE_ID (0xC2U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_FBSR_INIT_PARAMS {
|
||||
NvU32 fbsrType;
|
||||
NvU32 numRegions;
|
||||
NvHandle hClient;
|
||||
NvHandle hSysMem;
|
||||
NV_DECLARE_ALIGNED(NvU64 gspFbAllocsSysOffset, 8);
|
||||
NvBool bEnteringGcoffState;
|
||||
} NV2080_CTRL_INTERNAL_FBSR_INIT_PARAMS;
|
||||
|
||||
/*!
|
||||
* NV2080_CTRL_CMD_INTERNAL_FBSR_SEND_REGION_INFO
|
||||
* NV2080_CTRL_CMD_INTERNAL_FIFO_TOGGLE_ACTIVE_CHANNEL_SCHEDULING
|
||||
*
|
||||
* Send info of FB region that will be saved/restored by GSP on suspend-resume
|
||||
* Disable all the active channels during suspend
|
||||
* Resume FIFO scheduling from GSP after resume on Kernel-RM
|
||||
*
|
||||
* [in] fbsrType
|
||||
* Fbsr object type
|
||||
* [in] hClient
|
||||
* Handle to client of FBMEM memlist object
|
||||
* [in] hVidMem
|
||||
* Handle to FBMEM memlist object
|
||||
* [in] vidOffset
|
||||
* Offset in FBMEM region to save/restore
|
||||
* [in] sysOffset
|
||||
* Offset in SYSMEM region to save to/restore from
|
||||
* [in] size
|
||||
* Size of region being saved/restored
|
||||
* Possible status values returned are:
|
||||
* NV_OK
|
||||
* NV_ERR_NOT_SUPPORTED
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_FBSR_SEND_REGION_INFO (0x20800ac3) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_FBSR_SEND_REGION_INFO_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_FBSR_SEND_REGION_INFO_PARAMS_MESSAGE_ID (0xC3U)
|
||||
#define NV2080_CTRL_CMD_INTERNAL_FIFO_TOGGLE_ACTIVE_CHANNEL_SCHEDULING (0x20800ac3) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_CMD_INTERNAL_FIFO_TOGGLE_ACTIVE_CHANNEL_SCHEDULING_PARAMS_MESSAGE_ID" */
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_FBSR_SEND_REGION_INFO_PARAMS {
|
||||
NvU32 fbsrType;
|
||||
NvHandle hClient;
|
||||
NvHandle hVidMem;
|
||||
NV_DECLARE_ALIGNED(NvU64 vidOffset, 8);
|
||||
NV_DECLARE_ALIGNED(NvU64 sysOffset, 8);
|
||||
NV_DECLARE_ALIGNED(NvU64 size, 8);
|
||||
} NV2080_CTRL_INTERNAL_FBSR_SEND_REGION_INFO_PARAMS;
|
||||
#define NV2080_CTRL_CMD_INTERNAL_FIFO_TOGGLE_ACTIVE_CHANNEL_SCHEDULING_PARAMS_MESSAGE_ID (0xC3U)
|
||||
|
||||
typedef struct NV2080_CTRL_CMD_INTERNAL_FIFO_TOGGLE_ACTIVE_CHANNEL_SCHEDULING_PARAMS {
|
||||
NvBool bDisableActiveChannels;
|
||||
} NV2080_CTRL_CMD_INTERNAL_FIFO_TOGGLE_ACTIVE_CHANNEL_SCHEDULING_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_MEMMGR_GET_VGPU_CONFIG_HOST_RESERVED_FB
|
||||
@@ -3213,22 +3169,6 @@ typedef NV2080_CTRL_INTERNAL_PFM_REQ_HNDLR_STATE_SYNC_PARAMS NV2080_CTRL_INTERNA
|
||||
|
||||
typedef NV2080_CTRL_INTERNAL_PFM_REQ_HNDLR_STATE_SYNC_PARAMS NV2080_CTRL_INTERNAL_THERM_PFM_REQ_HNDLR_STATE_INIT_SYNC_PARAMS;
|
||||
|
||||
/*!
|
||||
* NV2080_CTRL_CMD_INTERNAL_GET_COHERENT_FB_APERTURE_SIZE
|
||||
*
|
||||
* Query Coherent FB Aperture Size.
|
||||
*
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_GET_COHERENT_FB_APERTURE_SIZE (0x20800ada) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_GET_COHERENT_FB_APERTURE_SIZE_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_GET_COHERENT_FB_APERTURE_SIZE_PARAMS_MESSAGE_ID (0xDAU)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_GET_COHERENT_FB_APERTURE_SIZE_PARAMS {
|
||||
// Get Coherent Fb Aperture Size
|
||||
NV_DECLARE_ALIGNED(NvU64 coherentFbApertureSize, 8);
|
||||
} NV2080_CTRL_INTERNAL_GET_COHERENT_FB_APERTURE_SIZE_PARAMS;
|
||||
|
||||
|
||||
/*!
|
||||
* Macros for NV2080_CTRL_CMD_INTERNAL_PERF_PFM_REQ_HNDLR_GET_PM1_STATE flag
|
||||
*/
|
||||
@@ -3634,15 +3574,11 @@ typedef struct NV2080_CTRL_CMD_INTERNAL_GET_GPU_FABRIC_PROBE_INFO_PARAMS {
|
||||
*
|
||||
* bwMode[IN]
|
||||
* - Nvlink Bandwidth mode
|
||||
*
|
||||
* bLocalEgmEnabled[IN]
|
||||
* - EGM Enablement Status that needs to be set in GSP-RM
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_START_GPU_FABRIC_PROBE_INFO_PARAMS_MESSAGE_ID (0xF5U)
|
||||
|
||||
typedef struct NV2080_CTRL_CMD_INTERNAL_START_GPU_FABRIC_PROBE_INFO_PARAMS {
|
||||
NvU8 bwMode;
|
||||
NvBool bLocalEgmEnabled;
|
||||
NvU8 bwMode;
|
||||
} NV2080_CTRL_CMD_INTERNAL_START_GPU_FABRIC_PROBE_INFO_PARAMS;
|
||||
|
||||
/*!
|
||||
@@ -3741,8 +3677,7 @@ typedef struct NV2080_CTRL_INTERNAL_CONF_COMPUTE_GET_STATIC_INFO_PARAMS {
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_SIZE 3U
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_SWL_KERNEL 0U
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_SWL_USER 1U
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_SWL_SCRUBBER 2U
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_SWL_COUNT 3U
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_SWL_COUNT 2U
|
||||
#define NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK_LCE_COUNT 6U
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_CONF_COMPUTE_IVMASK {
|
||||
@@ -3777,7 +3712,7 @@ typedef struct NV2080_CTRL_INTERNAL_CONF_COMPUTE_DERIVE_LCE_KEYS_PARAMS {
|
||||
} NV2080_CTRL_INTERNAL_CONF_COMPUTE_DERIVE_LCE_KEYS_PARAMS;
|
||||
|
||||
/*!
|
||||
* NV2080_CTRL_CMD_INTERNAL_CONF_COMPUTE_ROTATE_KEYS
|
||||
* NV2080_CTRL_CMD_INTERNAL_CONF_COMPUTE_ROTATE_KEY
|
||||
*
|
||||
* This command handles key rotation for a given H2D key (and corresponding D2H key)
|
||||
* by deriving new key on GSP and updating the key on relevant SEC2 or LCE.
|
||||
@@ -3869,6 +3804,22 @@ typedef struct NV2080_CTRL_CMD_INTERNAL_CONF_COMPUTE_SET_SECURITY_POLICY_PARAMS
|
||||
|
||||
|
||||
|
||||
/*!
|
||||
* NV2080_CTRL_CMD_INTERNAL_FIFO_GET_LOGICAL_UPROC_ID
|
||||
*
|
||||
* This command is an internal command sent from Kernel RM to Physical RM
|
||||
* to update the logical Uproc Id for the configuration.
|
||||
*
|
||||
* logicalUprocId [OUT]
|
||||
*/
|
||||
#define NV2080_CTRL_CMD_INTERNAL_FIFO_GET_LOGICAL_UPROC_ID (0x20800aef) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_FIFO_GET_LOGICAL_UPROC_ID_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_INTERNAL_FIFO_GET_LOGICAL_UPROC_ID_PARAMS_MESSAGE_ID (0xEFU)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_FIFO_GET_LOGICAL_UPROC_ID_PARAMS {
|
||||
NvU8 logicalUprocId;
|
||||
} NV2080_CTRL_INTERNAL_FIFO_GET_LOGICAL_UPROC_ID_PARAMS;
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_INTERNAL_MEMMGR_MEMORY_TRANSFER_WITH_GSP
|
||||
*
|
||||
@@ -4138,4 +4089,39 @@ typedef struct NV2080_CTRL_CMD_INTERNAL_GET_ENABLED_SEC2_CLASSES_PARAMS {
|
||||
|
||||
typedef NV2080_CTRL_GR_CTXSW_SETUP_BIND_PARAMS NV2080_CTRL_INTERNAL_GR_CTXSW_SETUP_BIND_PARAMS;
|
||||
|
||||
/*!
|
||||
* NV2080_CTRL_INTERNAL_GPU_CLIENT_LOW_POWER_MODE_ENTER
|
||||
*
|
||||
* @brief Notify the offloaded RM that CPU-RM enters the power management cycle.
|
||||
*
|
||||
* bInPMTransition : [IN]
|
||||
* newPMLevel : [IN]
|
||||
* New PM Level : NV2080_CTRL_GPU_SET_POWER_STATE_GPU_LEVEL_[0-7]
|
||||
*
|
||||
* @return NV_OK on success
|
||||
* @return NV_ERR_ otherwise
|
||||
*/
|
||||
#define NV2080_CTRL_INTERNAL_GPU_CLIENT_LOW_POWER_MODE_ENTER_PARAMS_MESSAGE_ID (0xE9U)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_GPU_CLIENT_LOW_POWER_MODE_ENTER_PARAMS {
|
||||
NvBool bInPMTransition;
|
||||
NvU32 newPMLevel;
|
||||
} NV2080_CTRL_INTERNAL_GPU_CLIENT_LOW_POWER_MODE_ENTER_PARAMS;
|
||||
#define NV2080_CTRL_INTERNAL_GPU_CLIENT_LOW_POWER_MODE_ENTER (0x20800ae9) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_GPU_CLIENT_LOW_POWER_MODE_ENTER_PARAMS_MESSAGE_ID" */
|
||||
|
||||
/*!
|
||||
* NV2080_CTRL_CMD_INTERNAL_GPU_GET_GSP_RM_FREE_HEAP
|
||||
*
|
||||
* @brief To get the free heap size of GSP-RM
|
||||
*
|
||||
* freeHeapSize : [OUT]
|
||||
*
|
||||
* @return NV_OK
|
||||
*/
|
||||
#define NV2080_CTRL_INTERNAL_GPU_GET_GSP_RM_FREE_HEAP_PARAMS_MESSAGE_ID (0xEBU)
|
||||
|
||||
typedef struct NV2080_CTRL_INTERNAL_GPU_GET_GSP_RM_FREE_HEAP_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NvU64 freeHeapSize, 8);
|
||||
} NV2080_CTRL_INTERNAL_GPU_GET_GSP_RM_FREE_HEAP_PARAMS;
|
||||
#define NV2080_CTRL_CMD_INTERNAL_GPU_GET_GSP_RM_FREE_HEAP (0x20800aeb) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_INTERNAL_INTERFACE_ID << 8) | NV2080_CTRL_INTERNAL_GPU_GET_GSP_RM_FREE_HEAP_PARAMS_MESSAGE_ID" */
|
||||
/* ctrl2080internal_h */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2014-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2014-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -136,6 +136,7 @@ typedef struct NV2080_CTRL_CMD_NVLINK_GET_NVLINK_CAPS_PARAMS {
|
||||
#define NV2080_CTRL_NVLINK_CAPS_NVLINK_VERSION_3_1 (0x00000006U)
|
||||
#define NV2080_CTRL_NVLINK_CAPS_NVLINK_VERSION_4_0 (0x00000007U)
|
||||
|
||||
|
||||
#define NV2080_CTRL_NVLINK_CAPS_NCI_VERSION_INVALID (0x00000000U)
|
||||
#define NV2080_CTRL_NVLINK_CAPS_NCI_VERSION_1_0 (0x00000001U)
|
||||
#define NV2080_CTRL_NVLINK_CAPS_NCI_VERSION_2_0 (0x00000002U)
|
||||
@@ -259,6 +260,12 @@ typedef struct NV2080_CTRL_NVLINK_DEVICE_INFO {
|
||||
* This field specifies the link number on the remote end of the link
|
||||
* remoteDeviceInfo
|
||||
* This field stores the device information for the remote end of the link
|
||||
* nvlinkMinL1Threshold
|
||||
* This field stores the Min L1 Thresohld of the link
|
||||
* nvlinkMaxL1Threshold
|
||||
* This field stores the Max L1 Threshold of the link
|
||||
* nvlinkL1ThresholdUnits
|
||||
* This field stores the L1 Threshold Units of the link
|
||||
*
|
||||
*/
|
||||
typedef struct NV2080_CTRL_NVLINK_LINK_STATUS_INFO {
|
||||
@@ -310,6 +317,11 @@ typedef struct NV2080_CTRL_NVLINK_LINK_STATUS_INFO {
|
||||
// Ampere+ only
|
||||
NvU32 laneRxdetStatusMask;
|
||||
|
||||
// L1 Threshold Info
|
||||
NvU32 nvlinkMinL1Threshold;
|
||||
NvU32 nvlinkMaxL1Threshold;
|
||||
NvU32 nvlinkL1ThresholdUnits;
|
||||
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_NVLINK_DEVICE_INFO remoteDeviceInfo, 8);
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_NVLINK_DEVICE_INFO localDeviceInfo, 8);
|
||||
} NV2080_CTRL_NVLINK_LINK_STATUS_INFO;
|
||||
@@ -361,6 +373,8 @@ typedef struct NV2080_CTRL_NVLINK_LINK_STATUS_INFO {
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NVLINK_VERSION_3_0 (0x00000005U)
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NVLINK_VERSION_3_1 (0x00000006U)
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NVLINK_VERSION_4_0 (0x00000007U)
|
||||
|
||||
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NVLINK_VERSION_INVALID (0x000000FFU)
|
||||
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NCI_VERSION_1_0 (0x00000001U)
|
||||
@@ -369,6 +383,8 @@ typedef struct NV2080_CTRL_NVLINK_LINK_STATUS_INFO {
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NCI_VERSION_3_0 (0x00000005U)
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NCI_VERSION_3_1 (0x00000006U)
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NCI_VERSION_4_0 (0x00000007U)
|
||||
|
||||
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NCI_VERSION_INVALID (0x000000FFU)
|
||||
|
||||
#define NV2080_CTRL_NVLINK_STATUS_NVHS_VERSION_1_0 (0x00000001U)
|
||||
@@ -387,12 +403,18 @@ typedef struct NV2080_CTRL_NVLINK_LINK_STATUS_INFO {
|
||||
|
||||
#define NV2080_CTRL_NVLINK_STATUS_REMOTE_LINK_NUMBER_INVALID (0x000000FFU)
|
||||
|
||||
#define NV2080_CTRL_NVLINK_MAX_LINKS 32
|
||||
// L1 Threshold Units
|
||||
typedef enum NV2080_CTRL_NVLINK_STATUS_L1_THRESHOLD_UNIT {
|
||||
NV2080_CTRL_NVLINK_STATUS_L1_THRESHOLD_UNIT_100US = 0,
|
||||
NV2080_CTRL_NVLINK_STATUS_L1_THRESHOLD_UNIT_50US = 1,
|
||||
} NV2080_CTRL_NVLINK_STATUS_L1_THRESHOLD_UNIT;
|
||||
|
||||
#define NV2080_CTRL_NVLINK_MAX_LINKS 32
|
||||
|
||||
// NVLink REFCLK types
|
||||
#define NV2080_CTRL_NVLINK_REFCLK_TYPE_INVALID (0x00U)
|
||||
#define NV2080_CTRL_NVLINK_REFCLK_TYPE_NVHS (0x01U)
|
||||
#define NV2080_CTRL_NVLINK_REFCLK_TYPE_PEX (0x02U)
|
||||
#define NV2080_CTRL_NVLINK_REFCLK_TYPE_INVALID (0x00U)
|
||||
#define NV2080_CTRL_NVLINK_REFCLK_TYPE_NVHS (0x01U)
|
||||
#define NV2080_CTRL_NVLINK_REFCLK_TYPE_PEX (0x02U)
|
||||
|
||||
#define NV2080_CTRL_CMD_NVLINK_GET_NVLINK_STATUS_PARAMS_MESSAGE_ID (0x2U)
|
||||
|
||||
@@ -811,6 +833,96 @@ typedef struct NV2080_CTRL_NVLINK_CLEAR_COUNTERS_PARAMS {
|
||||
} NV2080_CTRL_NVLINK_CLEAR_COUNTERS_PARAMS;
|
||||
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_TP_TL_TX0 0U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_TP_TL_TX1 1U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_TP_TL_RX0 2U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_TP_TL_RX1 3U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_ECC_LANE_SIZE 4U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_ECC_LANE_L0 4U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_ECC_LANE_L1 5U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_ECC_LANE_L2 6U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_ECC_LANE_L3 7U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_SIZE 8U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L0 8U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L1 9U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L2 10U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L3 11U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L4 12U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L5 13U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L6 14U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_LANE_L7 15U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_TX_ERR_RECOVERY 16U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_TX_ERR_REPLAY 17U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_REPLAY 18U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_MASKED 19U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_ERR_DL_RX_ERR_CRC_FLIT 20U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_LP_DL 21U
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_V1_MAX_COUNTER NV2080_CTRL_NVLINK_COUNTER_LP_DL
|
||||
|
||||
|
||||
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_MAX_GROUPS 2U
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_MAX_COUNTERS_PER_LINK_IN_REQ 28
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_V2_GROUP(i) ((i) / 64)
|
||||
#define NV2080_CTRL_NVLINK_COUNTER_V2_COUNTER_MASK(i) ((NvU64)1 << ((i) % 64))
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_NVLINK_GET_COUNTERS_V2
|
||||
* This command gets the counts for different counter types.
|
||||
*
|
||||
* [in] linkMask
|
||||
* Mask of links to be queried
|
||||
*
|
||||
* [in] counterMask
|
||||
* Mask of counter types to be queried
|
||||
* One of NV2080_CTRL_NVLINK_COUNTERS_TYPE_* macros
|
||||
*
|
||||
* [out] counter
|
||||
* This array contains the error counts for each error type as requested from
|
||||
* the counterMask. The array indexes correspond to the mask bits one-to-one.
|
||||
*/
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_COUNTERS_V2_VALUES {
|
||||
NvBool overFlow;
|
||||
NV_DECLARE_ALIGNED(NvU64 value, 8);
|
||||
} NV2080_CTRL_NVLINK_COUNTERS_V2_VALUES;
|
||||
|
||||
#define NV2080_CTRL_NVLINK_GET_COUNTERS_V2_PARAMS_MESSAGE_ID (0x50U)
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_GET_COUNTERS_V2_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NvU64 linkMask, 8);
|
||||
NV_DECLARE_ALIGNED(NvU64 counterMask[NV2080_CTRL_NVLINK_COUNTER_MAX_GROUPS], 8);
|
||||
NV_DECLARE_ALIGNED(NV2080_CTRL_NVLINK_COUNTERS_V2_VALUES counter[NV2080_CTRL_NVLINK_MAX_LINKS][NV2080_CTRL_NVLINK_COUNTER_MAX_COUNTERS_PER_LINK_IN_REQ], 8);
|
||||
} NV2080_CTRL_NVLINK_GET_COUNTERS_V2_PARAMS;
|
||||
#define NV2080_CTRL_CMD_NVLINK_GET_COUNTERS_V2 (0x20803050U) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8 | NV2080_CTRL_NVLINK_GET_COUNTERS_V2_PARAMS_MESSAGE_ID)" */
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_NVLINK_CLEAR_COUNTERS_V2
|
||||
* This command clears/resets the counters for the specified types.
|
||||
*
|
||||
* [in] linkMask
|
||||
* This parameter specifies for which links we want to clear the
|
||||
* counters.
|
||||
*
|
||||
* [in] counterMask
|
||||
* This parameter specifies the input mask for desired counters to be
|
||||
* cleared. Note that all counters cannot be cleared.
|
||||
*/
|
||||
|
||||
#define NV2080_CTRL_NVLINK_CLEAR_COUNTERS_V2_PARAMS_MESSAGE_ID (0x51U)
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_CLEAR_COUNTERS_V2_PARAMS {
|
||||
NV_DECLARE_ALIGNED(NvU64 linkMask, 8);
|
||||
NV_DECLARE_ALIGNED(NvU64 counterMask[NV2080_CTRL_NVLINK_COUNTER_MAX_GROUPS], 8);
|
||||
} NV2080_CTRL_NVLINK_CLEAR_COUNTERS_V2_PARAMS;
|
||||
#define NV2080_CTRL_CMD_NVLINK_CLEAR_COUNTERS_V2 (0x20803051U) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8 | NV2080_CTRL_NVLINK_CLEAR_COUNTERS_V2_PARAMS_MESSAGE_ID)" */
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_NVLINK_INJECT_ERROR
|
||||
@@ -2225,6 +2337,9 @@ typedef struct NV2080_CTRL_NVLINK_UPDATE_CURRENT_CONFIG_PARAMS {
|
||||
#define NV2080_CTRL_NVLINK_SET_LOOPBACK_MODE_NEA (0x00000001)
|
||||
#define NV2080_CTRL_NVLINK_SET_LOOPBACK_MODE_NEDR (0x00000002)
|
||||
#define NV2080_CTRL_NVLINK_SET_LOOPBACK_MODE_NEDW (0x00000003)
|
||||
#define NV2080_CTRL_NVLINK_SET_LOOPBACK_MODE_PHY_REMOTE (0x00000004)
|
||||
#define NV2080_CTRL_NVLINK_SET_LOOPBACK_MODE_PHY_LOCAL (0x00000005)
|
||||
#define NV2080_CTRL_NVLINK_SET_LOOPBACK_MODE_EXT_LOCAL (0x00000006)
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_NVLINK_SET_LOOPBACK_MODE
|
||||
@@ -2395,11 +2510,14 @@ typedef struct NV2080_CTRL_NVLINK_CLEAR_REFRESH_COUNTERS_PARAMS {
|
||||
*
|
||||
* [Out] postRxDetLinkMask
|
||||
* Mask of links discovered
|
||||
* [Out] laneRxdetStatusMask
|
||||
* RXDET per-lane status mask
|
||||
*/
|
||||
#define NV2080_CTRL_NVLINK_GET_LINK_MASK_POST_RX_DET_PARAMS_MESSAGE_ID (0x2aU)
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_GET_LINK_MASK_POST_RX_DET_PARAMS {
|
||||
NvU32 postRxDetLinkMask;
|
||||
NvU32 laneRxdetStatusMask[NV2080_CTRL_NVLINK_MAX_LINKS];
|
||||
} NV2080_CTRL_NVLINK_GET_LINK_MASK_POST_RX_DET_PARAMS;
|
||||
|
||||
#define NV2080_CTRL_CMD_NVLINK_GET_LINK_MASK_POST_RX_DET (0x2080302aU) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8) | NV2080_CTRL_NVLINK_GET_LINK_MASK_POST_RX_DET_PARAMS_MESSAGE_ID" */
|
||||
@@ -2609,6 +2727,12 @@ typedef struct NV2080_CTRL_NVLINK_DISABLE_DL_INTERRUPTS_PARAMS {
|
||||
* Current Nvlink refclk source
|
||||
* [Out] nvlinkReqLinkClockMhz
|
||||
* Requested link clock value
|
||||
* [Out] nvlinkMinL1Threshold
|
||||
* Requested link Min L1 Threshold
|
||||
* [Out] nvlinkMaxL1Threshold
|
||||
* Requested link Max L1 Threshold
|
||||
* [Out] nvlinkL1ThresholdUnits
|
||||
* Requested link L1 Threshold Units
|
||||
*/
|
||||
typedef struct NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_VALUES {
|
||||
NvBool bLinkConnectedToSystem;
|
||||
@@ -2625,6 +2749,9 @@ typedef struct NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_VALUES {
|
||||
NvU32 nvlinkLinkDataRateKiBps;
|
||||
NvU8 nvlinkRefClkType;
|
||||
NvU32 nvlinkReqLinkClockMhz;
|
||||
NvU32 nvlinkMinL1Threshold;
|
||||
NvU32 nvlinkMaxL1Threshold;
|
||||
NvU32 nvlinkL1ThresholdUnits;
|
||||
} NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_VALUES;
|
||||
|
||||
/*
|
||||
@@ -2642,7 +2769,7 @@ typedef struct NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_VALUES {
|
||||
typedef struct NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_INFO_PARAMS {
|
||||
NvU32 linkMask;
|
||||
NvU32 nvlinkRefClkSpeedKHz;
|
||||
NvBool bSublinkStateInst; // whether instantaneous sublink state is needed
|
||||
NvBool bSublinkStateInst; // whether instantaneous sublink state is needed
|
||||
NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_VALUES linkInfo[NV2080_CTRL_NVLINK_MAX_LINKS];
|
||||
} NV2080_CTRL_NVLINK_GET_LINK_AND_CLOCK_INFO_PARAMS;
|
||||
|
||||
@@ -2694,15 +2821,12 @@ typedef struct NV2080_CTRL_NVLINK_PROCESS_FORCED_CONFIGS_PARAMS {
|
||||
*
|
||||
* Sync the NVLink lane shutdown properties with GSP-RM
|
||||
*
|
||||
* [In] bLaneShutdownEnabled
|
||||
* Whether nvlink shutdown is enabled for the chip
|
||||
* [In] bLaneShutdownOnUnload
|
||||
* Whether nvlink shutdown should be triggered on driver unload
|
||||
*/
|
||||
#define NV2080_CTRL_NVLINK_SYNC_NVLINK_SHUTDOWN_PROPS_PARAMS_MESSAGE_ID (0x35U)
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_SYNC_NVLINK_SHUTDOWN_PROPS_PARAMS {
|
||||
NvBool bLaneShutdownEnabled;
|
||||
NvBool bLaneShutdownOnUnload;
|
||||
} NV2080_CTRL_NVLINK_SYNC_NVLINK_SHUTDOWN_PROPS_PARAMS;
|
||||
|
||||
@@ -2888,19 +3012,26 @@ typedef struct NV2080_CTRL_NVLINK_INBAND_RECEIVED_DATA_PARAMS {
|
||||
|
||||
#define NV2080_CTRL_CMD_READ_NVLINK_INBAND_RESPONSE (0x2080303d) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8) | NV2080_CTRL_NVLINK_INBAND_RECEIVED_DATA_PARAMS_MESSAGE_ID" */
|
||||
|
||||
#define NV2080_CTRL_NVLINK_L1_THRESHOLD_VALUE_DEFAULT (0xFFFFFFFF)
|
||||
|
||||
/*
|
||||
* NV2080_CTRL_CMD_NVLINK_SET_L1_THRESHOLD
|
||||
*
|
||||
* This command is used to set the L1 threshold value
|
||||
* This command is used to set the L1 threshold value.
|
||||
* A value of NV2080_CTRL_NVLINK_L1_THRESHOLD_VALUE_DEFAULT
|
||||
* will reset the L1 Threshold to the default values.
|
||||
*
|
||||
* [in] l1Threshold
|
||||
* Used to set the L1 threshold value
|
||||
*
|
||||
* [in] l1ExitThreshold
|
||||
* Used to set the L1 Exit threshold value
|
||||
*/
|
||||
#define NV2080_CTRL_NVLINK_SET_L1_THRESHOLD_PARAMS_MESSAGE_ID (0x3eU)
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_SET_L1_THRESHOLD_PARAMS {
|
||||
NvU32 l1Threshold;
|
||||
NvU32 l1ExitThreshold;
|
||||
} NV2080_CTRL_NVLINK_SET_L1_THRESHOLD_PARAMS;
|
||||
|
||||
#define NV2080_CTRL_CMD_NVLINK_SET_L1_THRESHOLD (0x2080303eU) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8) | NV2080_CTRL_NVLINK_SET_L1_THRESHOLD_PARAMS_MESSAGE_ID" */
|
||||
@@ -2913,11 +3044,14 @@ typedef struct NV2080_CTRL_NVLINK_SET_L1_THRESHOLD_PARAMS {
|
||||
* [out] l1Threshold
|
||||
* Used to get the L1 threshold value
|
||||
*
|
||||
* [out] l1ExitThreshold
|
||||
* Used to get the L1 Exit Thrshold value
|
||||
*/
|
||||
#define NV2080_CTRL_NVLINK_GET_L1_THRESHOLD_PARAMS_MESSAGE_ID (0x3fU)
|
||||
|
||||
typedef struct NV2080_CTRL_NVLINK_GET_L1_THRESHOLD_PARAMS {
|
||||
NvU32 l1Threshold;
|
||||
NvU32 l1ExitThreshold;
|
||||
} NV2080_CTRL_NVLINK_GET_L1_THRESHOLD_PARAMS;
|
||||
|
||||
#define NV2080_CTRL_CMD_NVLINK_GET_L1_THRESHOLD (0x2080303fU) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8) | NV2080_CTRL_NVLINK_GET_L1_THRESHOLD_PARAMS_MESSAGE_ID" */
|
||||
@@ -3113,5 +3247,6 @@ typedef struct NV2080_CTRL_NVLINK_IS_REDUCED_CONFIG_PARAMS {
|
||||
#define NV2080_CTRL_CMD_NVLINK_FATAL_ERROR_RECOVERY (0x20803048U) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_NVLINK_INTERFACE_ID << 8) | 0x48" */
|
||||
|
||||
|
||||
|
||||
/* _ctrl2080nvlink_h_ */
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2022-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
@@ -34,8 +34,6 @@
|
||||
|
||||
/*************************** SPDM COMMANDS ************************************/
|
||||
|
||||
#include "cc_drv.h"
|
||||
|
||||
/*!
|
||||
* @brief SPDM Command Types
|
||||
*
|
||||
@@ -45,7 +43,6 @@
|
||||
#define RM_GSP_SPDM_CMD_ID_CC_CTRL (0x3)
|
||||
#define RM_GSP_SPDM_CMD_ID_CC_INIT_RM_DATA (0x4)
|
||||
#define RM_GSP_SPDM_CMD_ID_CC_HEARTBEAT_CTRL (0x5)
|
||||
#define RM_GSP_SPDM_CMD_ID_FIPS_SELFTEST (0x6)
|
||||
|
||||
|
||||
#define RM_GSP_SPDM_CMD_ID_INVALID_COMMAND (0xFF)
|
||||
@@ -117,25 +114,6 @@ typedef struct RM_GSP_SPDM_CMD_CC_HEARTBEAT_CTRL {
|
||||
typedef struct RM_GSP_SPDM_CMD_CC_HEARTBEAT_CTRL *PRM_GSP_SPDM_CMD_CC_HEARTBEAT_CTRL;
|
||||
|
||||
|
||||
|
||||
/*!
|
||||
* HCC FIPS Self-test.
|
||||
*/
|
||||
#define CE_FIPS_SELF_TEST_DATA_SIZE 16
|
||||
#define CE_FIPS_SELF_TEST_AUTH_TAG_SIZE 16
|
||||
#define CE_FIPS_SELF_TEST_IV_SIZE 12
|
||||
|
||||
typedef struct RM_GSP_SPDM_CMD_FIPS_SELFTEST {
|
||||
NvU8 cmdType;
|
||||
NvU8 isEnc;
|
||||
CC_KMB kmb;
|
||||
NvU8 text[CE_FIPS_SELF_TEST_DATA_SIZE];
|
||||
NvU8 authTag[CE_FIPS_SELF_TEST_AUTH_TAG_SIZE];
|
||||
} RM_GSP_SPDM_CMD_FIPS_SELFTEST;
|
||||
typedef struct RM_GSP_SPDM_CMD_FIPS_SELFTEST *PRM_GSP_SPDM_CMD_FIPS_SELFTEST;
|
||||
|
||||
|
||||
|
||||
/*!
|
||||
* NOTE : Do not include structure members that have alignment requirement >= 8 to avoid alignment directives
|
||||
* getting added in FINN generated structures / unions as RM_GSP_SPDM_CMD / RM_GSP_SPDM_MSG are pragma packed in
|
||||
@@ -154,9 +132,6 @@ typedef union RM_GSP_SPDM_CMD {
|
||||
RM_GSP_SPDM_CMD_CC_INIT_RM_DATA rmDataInitCmd;
|
||||
RM_GSP_SPDM_CMD_CC_HEARTBEAT_CTRL ccHeartbeatCtrl;
|
||||
|
||||
|
||||
RM_GSP_SPDM_CMD_FIPS_SELFTEST ccFipsTest;
|
||||
|
||||
} RM_GSP_SPDM_CMD;
|
||||
typedef union RM_GSP_SPDM_CMD *PRM_GSP_SPDM_CMD;
|
||||
|
||||
@@ -174,7 +149,6 @@ typedef union RM_GSP_SPDM_CMD *PRM_GSP_SPDM_CMD;
|
||||
#define RM_GSP_SPDM_MSG_ID_CC_CTRL (0x3)
|
||||
#define RM_GSP_SPDM_MSG_ID_CC_INIT_RM_DATA (0x4)
|
||||
#define RM_GSP_SPDM_MSG_ID_CC_HEARTBEAT_CTRL (0x5)
|
||||
#define RM_GSP_SPDM_MSG_ID_FIPS_SELFTEST (0x6)
|
||||
|
||||
|
||||
|
||||
@@ -194,20 +168,20 @@ typedef union RM_GSP_SPDM_CMD *PRM_GSP_SPDM_CMD;
|
||||
* SPDM message structure.
|
||||
*/
|
||||
typedef struct RM_GSP_SPDM_MSG {
|
||||
NvU8 msgType;
|
||||
NvU8 msgType;
|
||||
|
||||
// status returned from GSP message infrastructure.
|
||||
NvU32 status;
|
||||
NvU32 status;
|
||||
|
||||
NvU32 rsvd1;
|
||||
NvU32 rsvd1;
|
||||
|
||||
NvU32 rsvd2;
|
||||
NvU32 rsvd2;
|
||||
|
||||
NvU32 rsvd3;
|
||||
NvU32 rsvd3;
|
||||
|
||||
NvU32 rsvd4;
|
||||
NvU32 rsvd4;
|
||||
|
||||
NvU32 rsvd5;
|
||||
NvBool rsvd5;
|
||||
} RM_GSP_SPDM_MSG;
|
||||
typedef struct RM_GSP_SPDM_MSG *PRM_GSP_SPDM_MSG;
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2020-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-FileCopyrightText: Copyright (c) 2020-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
|
||||
Reference in New Issue
Block a user