aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0164-drm-amdgpu-add-UVD-4.2-register-headers.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0164-drm-amdgpu-add-UVD-4.2-register-headers.patch')
-rw-r--r--common/recipes-kernel/linux/files/0164-drm-amdgpu-add-UVD-4.2-register-headers.patch931
1 files changed, 0 insertions, 931 deletions
diff --git a/common/recipes-kernel/linux/files/0164-drm-amdgpu-add-UVD-4.2-register-headers.patch b/common/recipes-kernel/linux/files/0164-drm-amdgpu-add-UVD-4.2-register-headers.patch
deleted file mode 100644
index a534ee9c..00000000
--- a/common/recipes-kernel/linux/files/0164-drm-amdgpu-add-UVD-4.2-register-headers.patch
+++ /dev/null
@@ -1,931 +0,0 @@
-From 8630f839e0d0c439098b084d8867b82e3aa6084a Mon Sep 17 00:00:00 2001
-From: Alex Deucher <alexander.deucher@amd.com>
-Date: Thu, 16 Apr 2015 15:33:44 -0400
-Subject: [PATCH 0164/1050] drm/amdgpu: add UVD 4.2 register headers
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-These are register headers for the UVD (Universal Video Decoder)
-block on the GPU.
-
-Acked-by: Christian König <christian.koenig@amd.com>
-Acked-by: Jammy Zhou <Jammy.Zhou@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
----
- .../gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_d.h | 95 +++
- .../drm/amd/include/asic_reg/uvd/uvd_4_2_sh_mask.h | 800 +++++++++++++++++++++
- 2 files changed, 895 insertions(+)
- create mode 100644 drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_d.h
- create mode 100644 drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_sh_mask.h
-
-diff --git a/drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_d.h b/drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_d.h
-new file mode 100644
-index 0000000..f3e53b1
---- /dev/null
-+++ b/drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_d.h
-@@ -0,0 +1,95 @@
-+/*
-+ * UVD_4_2 Register documentation
-+ *
-+ * Copyright (C) 2014 Advanced Micro Devices, Inc.
-+ *
-+ * 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 COPYRIGHT HOLDER(S) 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 UVD_4_2_D_H
-+#define UVD_4_2_D_H
-+
-+#define mmUVD_SEMA_ADDR_LOW 0x3bc0
-+#define mmUVD_SEMA_ADDR_HIGH 0x3bc1
-+#define mmUVD_SEMA_CMD 0x3bc2
-+#define mmUVD_GPCOM_VCPU_CMD 0x3bc3
-+#define mmUVD_GPCOM_VCPU_DATA0 0x3bc4
-+#define mmUVD_GPCOM_VCPU_DATA1 0x3bc5
-+#define mmUVD_ENGINE_CNTL 0x3bc6
-+#define mmUVD_UDEC_ADDR_CONFIG 0x3bd3
-+#define mmUVD_UDEC_DB_ADDR_CONFIG 0x3bd4
-+#define mmUVD_UDEC_DBW_ADDR_CONFIG 0x3bd5
-+#define mmUVD_SEMA_CNTL 0x3d00
-+#define mmUVD_LMI_EXT40_ADDR 0x3d26
-+#define mmUVD_CTX_INDEX 0x3d28
-+#define mmUVD_CTX_DATA 0x3d29
-+#define mmUVD_CGC_GATE 0x3d2a
-+#define mmUVD_CGC_STATUS 0x3d2b
-+#define mmUVD_CGC_CTRL 0x3d2c
-+#define mmUVD_CGC_UDEC_STATUS 0x3d2d
-+#define mmUVD_LMI_CTRL2 0x3d3d
-+#define mmUVD_MASTINT_EN 0x3d40
-+#define mmUVD_LMI_ADDR_EXT 0x3d65
-+#define mmUVD_LMI_CTRL 0x3d66
-+#define mmUVD_LMI_STATUS 0x3d67
-+#define mmUVD_LMI_SWAP_CNTL 0x3d6d
-+#define mmUVD_MP_SWAP_CNTL 0x3d6f
-+#define mmUVD_MPC_CNTL 0x3d77
-+#define mmUVD_MPC_SET_MUXA0 0x3d79
-+#define mmUVD_MPC_SET_MUXA1 0x3d7a
-+#define mmUVD_MPC_SET_MUXB0 0x3d7b
-+#define mmUVD_MPC_SET_MUXB1 0x3d7c
-+#define mmUVD_MPC_SET_MUX 0x3d7d
-+#define mmUVD_MPC_SET_ALU 0x3d7e
-+#define mmUVD_VCPU_CACHE_OFFSET0 0x3d82
-+#define mmUVD_VCPU_CACHE_SIZE0 0x3d83
-+#define mmUVD_VCPU_CACHE_OFFSET1 0x3d84
-+#define mmUVD_VCPU_CACHE_SIZE1 0x3d85
-+#define mmUVD_VCPU_CACHE_OFFSET2 0x3d86
-+#define mmUVD_VCPU_CACHE_SIZE2 0x3d87
-+#define mmUVD_VCPU_CNTL 0x3d98
-+#define mmUVD_SOFT_RESET 0x3da0
-+#define mmUVD_RBC_IB_BASE 0x3da1
-+#define mmUVD_RBC_IB_SIZE 0x3da2
-+#define mmUVD_RBC_RB_BASE 0x3da3
-+#define mmUVD_RBC_RB_RPTR 0x3da4
-+#define mmUVD_RBC_RB_WPTR 0x3da5
-+#define mmUVD_RBC_RB_WPTR_CNTL 0x3da6
-+#define mmUVD_RBC_RB_CNTL 0x3da9
-+#define mmUVD_RBC_RB_RPTR_ADDR 0x3daa
-+#define mmUVD_STATUS 0x3daf
-+#define mmUVD_SEMA_TIMEOUT_STATUS 0x3db0
-+#define mmUVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL 0x3db1
-+#define mmUVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL 0x3db2
-+#define mmUVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL 0x3db3
-+#define mmUVD_CONTEXT_ID 0x3dbd
-+#define mmUVD_RBC_IB_SIZE_UPDATE 0x3df1
-+#define ixUVD_LMI_CACHE_CTRL 0x9b
-+#define ixUVD_LMI_SWAP_CNTL2 0xaa
-+#define ixUVD_LMI_ADDR_EXT2 0xab
-+#define ixUVD_CGC_MEM_CTRL 0xc0
-+#define ixUVD_CGC_CTRL2 0xc1
-+#define mmUVD_PGFSM_CONFIG 0x38f8
-+#define mmUVD_PGFSM_READ_TILE1 0x38fa
-+#define mmUVD_PGFSM_READ_TILE2 0x38fb
-+#define mmUVD_POWER_STATUS 0x38fc
-+#define ixUVD_MIF_CURR_ADDR_CONFIG 0x48
-+#define ixUVD_MIF_REF_ADDR_CONFIG 0x4c
-+#define ixUVD_MIF_RECON1_ADDR_CONFIG 0x114
-+
-+#endif /* UVD_4_2_D_H */
-diff --git a/drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_sh_mask.h b/drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_sh_mask.h
-new file mode 100644
-index 0000000..65e8be9
---- /dev/null
-+++ b/drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_4_2_sh_mask.h
-@@ -0,0 +1,800 @@
-+/*
-+ * UVD_4_2 Register documentation
-+ *
-+ * Copyright (C) 2014 Advanced Micro Devices, Inc.
-+ *
-+ * 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 COPYRIGHT HOLDER(S) 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 UVD_4_2_SH_MASK_H
-+#define UVD_4_2_SH_MASK_H
-+
-+#define UVD_SEMA_ADDR_LOW__ADDR_22_3_MASK 0xfffff
-+#define UVD_SEMA_ADDR_LOW__ADDR_22_3__SHIFT 0x0
-+#define UVD_SEMA_ADDR_HIGH__ADDR_42_23_MASK 0xfffff
-+#define UVD_SEMA_ADDR_HIGH__ADDR_42_23__SHIFT 0x0
-+#define UVD_SEMA_CMD__REQ_CMD_MASK 0xf
-+#define UVD_SEMA_CMD__REQ_CMD__SHIFT 0x0
-+#define UVD_SEMA_CMD__WR_PHASE_MASK 0x30
-+#define UVD_SEMA_CMD__WR_PHASE__SHIFT 0x4
-+#define UVD_SEMA_CMD__MODE_MASK 0x40
-+#define UVD_SEMA_CMD__MODE__SHIFT 0x6
-+#define UVD_SEMA_CMD__VMID_EN_MASK 0x80
-+#define UVD_SEMA_CMD__VMID_EN__SHIFT 0x7
-+#define UVD_SEMA_CMD__VMID_MASK 0xf00
-+#define UVD_SEMA_CMD__VMID__SHIFT 0x8
-+#define UVD_GPCOM_VCPU_CMD__CMD_SEND_MASK 0x1
-+#define UVD_GPCOM_VCPU_CMD__CMD_SEND__SHIFT 0x0
-+#define UVD_GPCOM_VCPU_CMD__CMD_MASK 0x7ffffffe
-+#define UVD_GPCOM_VCPU_CMD__CMD__SHIFT 0x1
-+#define UVD_GPCOM_VCPU_CMD__CMD_SOURCE_MASK 0x80000000
-+#define UVD_GPCOM_VCPU_CMD__CMD_SOURCE__SHIFT 0x1f
-+#define UVD_GPCOM_VCPU_DATA0__DATA0_MASK 0xffffffff
-+#define UVD_GPCOM_VCPU_DATA0__DATA0__SHIFT 0x0
-+#define UVD_GPCOM_VCPU_DATA1__DATA1_MASK 0xffffffff
-+#define UVD_GPCOM_VCPU_DATA1__DATA1__SHIFT 0x0
-+#define UVD_ENGINE_CNTL__ENGINE_START_MASK 0x1
-+#define UVD_ENGINE_CNTL__ENGINE_START__SHIFT 0x0
-+#define UVD_ENGINE_CNTL__ENGINE_START_MODE_MASK 0x2
-+#define UVD_ENGINE_CNTL__ENGINE_START_MODE__SHIFT 0x1
-+#define UVD_UDEC_ADDR_CONFIG__NUM_PIPES_MASK 0x7
-+#define UVD_UDEC_ADDR_CONFIG__NUM_PIPES__SHIFT 0x0
-+#define UVD_UDEC_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE_MASK 0x70
-+#define UVD_UDEC_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE__SHIFT 0x4
-+#define UVD_UDEC_ADDR_CONFIG__BANK_INTERLEAVE_SIZE_MASK 0x700
-+#define UVD_UDEC_ADDR_CONFIG__BANK_INTERLEAVE_SIZE__SHIFT 0x8
-+#define UVD_UDEC_ADDR_CONFIG__NUM_SHADER_ENGINES_MASK 0x3000
-+#define UVD_UDEC_ADDR_CONFIG__NUM_SHADER_ENGINES__SHIFT 0xc
-+#define UVD_UDEC_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE_MASK 0x70000
-+#define UVD_UDEC_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE__SHIFT 0x10
-+#define UVD_UDEC_ADDR_CONFIG__NUM_GPUS_MASK 0x700000
-+#define UVD_UDEC_ADDR_CONFIG__NUM_GPUS__SHIFT 0x14
-+#define UVD_UDEC_ADDR_CONFIG__MULTI_GPU_TILE_SIZE_MASK 0x3000000
-+#define UVD_UDEC_ADDR_CONFIG__MULTI_GPU_TILE_SIZE__SHIFT 0x18
-+#define UVD_UDEC_ADDR_CONFIG__ROW_SIZE_MASK 0x30000000
-+#define UVD_UDEC_ADDR_CONFIG__ROW_SIZE__SHIFT 0x1c
-+#define UVD_UDEC_ADDR_CONFIG__NUM_LOWER_PIPES_MASK 0x40000000
-+#define UVD_UDEC_ADDR_CONFIG__NUM_LOWER_PIPES__SHIFT 0x1e
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_PIPES_MASK 0x7
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_PIPES__SHIFT 0x0
-+#define UVD_UDEC_DB_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE_MASK 0x70
-+#define UVD_UDEC_DB_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE__SHIFT 0x4
-+#define UVD_UDEC_DB_ADDR_CONFIG__BANK_INTERLEAVE_SIZE_MASK 0x700
-+#define UVD_UDEC_DB_ADDR_CONFIG__BANK_INTERLEAVE_SIZE__SHIFT 0x8
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_SHADER_ENGINES_MASK 0x3000
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_SHADER_ENGINES__SHIFT 0xc
-+#define UVD_UDEC_DB_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE_MASK 0x70000
-+#define UVD_UDEC_DB_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE__SHIFT 0x10
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_GPUS_MASK 0x700000
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_GPUS__SHIFT 0x14
-+#define UVD_UDEC_DB_ADDR_CONFIG__MULTI_GPU_TILE_SIZE_MASK 0x3000000
-+#define UVD_UDEC_DB_ADDR_CONFIG__MULTI_GPU_TILE_SIZE__SHIFT 0x18
-+#define UVD_UDEC_DB_ADDR_CONFIG__ROW_SIZE_MASK 0x30000000
-+#define UVD_UDEC_DB_ADDR_CONFIG__ROW_SIZE__SHIFT 0x1c
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_LOWER_PIPES_MASK 0x40000000
-+#define UVD_UDEC_DB_ADDR_CONFIG__NUM_LOWER_PIPES__SHIFT 0x1e
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_PIPES_MASK 0x7
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_PIPES__SHIFT 0x0
-+#define UVD_UDEC_DBW_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE_MASK 0x70
-+#define UVD_UDEC_DBW_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE__SHIFT 0x4
-+#define UVD_UDEC_DBW_ADDR_CONFIG__BANK_INTERLEAVE_SIZE_MASK 0x700
-+#define UVD_UDEC_DBW_ADDR_CONFIG__BANK_INTERLEAVE_SIZE__SHIFT 0x8
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_SHADER_ENGINES_MASK 0x3000
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_SHADER_ENGINES__SHIFT 0xc
-+#define UVD_UDEC_DBW_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE_MASK 0x70000
-+#define UVD_UDEC_DBW_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE__SHIFT 0x10
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_GPUS_MASK 0x700000
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_GPUS__SHIFT 0x14
-+#define UVD_UDEC_DBW_ADDR_CONFIG__MULTI_GPU_TILE_SIZE_MASK 0x3000000
-+#define UVD_UDEC_DBW_ADDR_CONFIG__MULTI_GPU_TILE_SIZE__SHIFT 0x18
-+#define UVD_UDEC_DBW_ADDR_CONFIG__ROW_SIZE_MASK 0x30000000
-+#define UVD_UDEC_DBW_ADDR_CONFIG__ROW_SIZE__SHIFT 0x1c
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_LOWER_PIPES_MASK 0x40000000
-+#define UVD_UDEC_DBW_ADDR_CONFIG__NUM_LOWER_PIPES__SHIFT 0x1e
-+#define UVD_SEMA_CNTL__SEMAPHORE_EN_MASK 0x1
-+#define UVD_SEMA_CNTL__SEMAPHORE_EN__SHIFT 0x0
-+#define UVD_SEMA_CNTL__ADVANCED_MODE_DIS_MASK 0x2
-+#define UVD_SEMA_CNTL__ADVANCED_MODE_DIS__SHIFT 0x1
-+#define UVD_LMI_EXT40_ADDR__ADDR_MASK 0xff
-+#define UVD_LMI_EXT40_ADDR__ADDR__SHIFT 0x0
-+#define UVD_LMI_EXT40_ADDR__INDEX_MASK 0x1f0000
-+#define UVD_LMI_EXT40_ADDR__INDEX__SHIFT 0x10
-+#define UVD_LMI_EXT40_ADDR__WRITE_ADDR_MASK 0x80000000
-+#define UVD_LMI_EXT40_ADDR__WRITE_ADDR__SHIFT 0x1f
-+#define UVD_CTX_INDEX__INDEX_MASK 0x1ff
-+#define UVD_CTX_INDEX__INDEX__SHIFT 0x0
-+#define UVD_CTX_DATA__DATA_MASK 0xffffffff
-+#define UVD_CTX_DATA__DATA__SHIFT 0x0
-+#define UVD_CGC_GATE__SYS_MASK 0x1
-+#define UVD_CGC_GATE__SYS__SHIFT 0x0
-+#define UVD_CGC_GATE__UDEC_MASK 0x2
-+#define UVD_CGC_GATE__UDEC__SHIFT 0x1
-+#define UVD_CGC_GATE__MPEG2_MASK 0x4
-+#define UVD_CGC_GATE__MPEG2__SHIFT 0x2
-+#define UVD_CGC_GATE__REGS_MASK 0x8
-+#define UVD_CGC_GATE__REGS__SHIFT 0x3
-+#define UVD_CGC_GATE__RBC_MASK 0x10
-+#define UVD_CGC_GATE__RBC__SHIFT 0x4
-+#define UVD_CGC_GATE__LMI_MC_MASK 0x20
-+#define UVD_CGC_GATE__LMI_MC__SHIFT 0x5
-+#define UVD_CGC_GATE__LMI_UMC_MASK 0x40
-+#define UVD_CGC_GATE__LMI_UMC__SHIFT 0x6
-+#define UVD_CGC_GATE__IDCT_MASK 0x80
-+#define UVD_CGC_GATE__IDCT__SHIFT 0x7
-+#define UVD_CGC_GATE__MPRD_MASK 0x100
-+#define UVD_CGC_GATE__MPRD__SHIFT 0x8
-+#define UVD_CGC_GATE__MPC_MASK 0x200
-+#define UVD_CGC_GATE__MPC__SHIFT 0x9
-+#define UVD_CGC_GATE__LBSI_MASK 0x400
-+#define UVD_CGC_GATE__LBSI__SHIFT 0xa
-+#define UVD_CGC_GATE__LRBBM_MASK 0x800
-+#define UVD_CGC_GATE__LRBBM__SHIFT 0xb
-+#define UVD_CGC_GATE__UDEC_RE_MASK 0x1000
-+#define UVD_CGC_GATE__UDEC_RE__SHIFT 0xc
-+#define UVD_CGC_GATE__UDEC_CM_MASK 0x2000
-+#define UVD_CGC_GATE__UDEC_CM__SHIFT 0xd
-+#define UVD_CGC_GATE__UDEC_IT_MASK 0x4000
-+#define UVD_CGC_GATE__UDEC_IT__SHIFT 0xe
-+#define UVD_CGC_GATE__UDEC_DB_MASK 0x8000
-+#define UVD_CGC_GATE__UDEC_DB__SHIFT 0xf
-+#define UVD_CGC_GATE__UDEC_MP_MASK 0x10000
-+#define UVD_CGC_GATE__UDEC_MP__SHIFT 0x10
-+#define UVD_CGC_GATE__WCB_MASK 0x20000
-+#define UVD_CGC_GATE__WCB__SHIFT 0x11
-+#define UVD_CGC_GATE__VCPU_MASK 0x40000
-+#define UVD_CGC_GATE__VCPU__SHIFT 0x12
-+#define UVD_CGC_GATE__SCPU_MASK 0x80000
-+#define UVD_CGC_GATE__SCPU__SHIFT 0x13
-+#define UVD_CGC_STATUS__SYS_SCLK_MASK 0x1
-+#define UVD_CGC_STATUS__SYS_SCLK__SHIFT 0x0
-+#define UVD_CGC_STATUS__SYS_DCLK_MASK 0x2
-+#define UVD_CGC_STATUS__SYS_DCLK__SHIFT 0x1
-+#define UVD_CGC_STATUS__SYS_VCLK_MASK 0x4
-+#define UVD_CGC_STATUS__SYS_VCLK__SHIFT 0x2
-+#define UVD_CGC_STATUS__UDEC_SCLK_MASK 0x8
-+#define UVD_CGC_STATUS__UDEC_SCLK__SHIFT 0x3
-+#define UVD_CGC_STATUS__UDEC_DCLK_MASK 0x10
-+#define UVD_CGC_STATUS__UDEC_DCLK__SHIFT 0x4
-+#define UVD_CGC_STATUS__UDEC_VCLK_MASK 0x20
-+#define UVD_CGC_STATUS__UDEC_VCLK__SHIFT 0x5
-+#define UVD_CGC_STATUS__MPEG2_SCLK_MASK 0x40
-+#define UVD_CGC_STATUS__MPEG2_SCLK__SHIFT 0x6
-+#define UVD_CGC_STATUS__MPEG2_DCLK_MASK 0x80
-+#define UVD_CGC_STATUS__MPEG2_DCLK__SHIFT 0x7
-+#define UVD_CGC_STATUS__MPEG2_VCLK_MASK 0x100
-+#define UVD_CGC_STATUS__MPEG2_VCLK__SHIFT 0x8
-+#define UVD_CGC_STATUS__REGS_SCLK_MASK 0x200
-+#define UVD_CGC_STATUS__REGS_SCLK__SHIFT 0x9
-+#define UVD_CGC_STATUS__REGS_VCLK_MASK 0x400
-+#define UVD_CGC_STATUS__REGS_VCLK__SHIFT 0xa
-+#define UVD_CGC_STATUS__RBC_SCLK_MASK 0x800
-+#define UVD_CGC_STATUS__RBC_SCLK__SHIFT 0xb
-+#define UVD_CGC_STATUS__LMI_MC_SCLK_MASK 0x1000
-+#define UVD_CGC_STATUS__LMI_MC_SCLK__SHIFT 0xc
-+#define UVD_CGC_STATUS__LMI_UMC_SCLK_MASK 0x2000
-+#define UVD_CGC_STATUS__LMI_UMC_SCLK__SHIFT 0xd
-+#define UVD_CGC_STATUS__IDCT_SCLK_MASK 0x4000
-+#define UVD_CGC_STATUS__IDCT_SCLK__SHIFT 0xe
-+#define UVD_CGC_STATUS__IDCT_VCLK_MASK 0x8000
-+#define UVD_CGC_STATUS__IDCT_VCLK__SHIFT 0xf
-+#define UVD_CGC_STATUS__MPRD_SCLK_MASK 0x10000
-+#define UVD_CGC_STATUS__MPRD_SCLK__SHIFT 0x10
-+#define UVD_CGC_STATUS__MPRD_DCLK_MASK 0x20000
-+#define UVD_CGC_STATUS__MPRD_DCLK__SHIFT 0x11
-+#define UVD_CGC_STATUS__MPRD_VCLK_MASK 0x40000
-+#define UVD_CGC_STATUS__MPRD_VCLK__SHIFT 0x12
-+#define UVD_CGC_STATUS__MPC_SCLK_MASK 0x80000
-+#define UVD_CGC_STATUS__MPC_SCLK__SHIFT 0x13
-+#define UVD_CGC_STATUS__MPC_DCLK_MASK 0x100000
-+#define UVD_CGC_STATUS__MPC_DCLK__SHIFT 0x14
-+#define UVD_CGC_STATUS__LBSI_SCLK_MASK 0x200000
-+#define UVD_CGC_STATUS__LBSI_SCLK__SHIFT 0x15
-+#define UVD_CGC_STATUS__LBSI_VCLK_MASK 0x400000
-+#define UVD_CGC_STATUS__LBSI_VCLK__SHIFT 0x16
-+#define UVD_CGC_STATUS__LRBBM_SCLK_MASK 0x800000
-+#define UVD_CGC_STATUS__LRBBM_SCLK__SHIFT 0x17
-+#define UVD_CGC_STATUS__WCB_SCLK_MASK 0x1000000
-+#define UVD_CGC_STATUS__WCB_SCLK__SHIFT 0x18
-+#define UVD_CGC_STATUS__VCPU_SCLK_MASK 0x2000000
-+#define UVD_CGC_STATUS__VCPU_SCLK__SHIFT 0x19
-+#define UVD_CGC_STATUS__VCPU_VCLK_MASK 0x4000000
-+#define UVD_CGC_STATUS__VCPU_VCLK__SHIFT 0x1a
-+#define UVD_CGC_STATUS__SCPU_SCLK_MASK 0x8000000
-+#define UVD_CGC_STATUS__SCPU_SCLK__SHIFT 0x1b
-+#define UVD_CGC_STATUS__SCPU_VCLK_MASK 0x10000000
-+#define UVD_CGC_STATUS__SCPU_VCLK__SHIFT 0x1c
-+#define UVD_CGC_CTRL__DYN_CLOCK_MODE_MASK 0x1
-+#define UVD_CGC_CTRL__DYN_CLOCK_MODE__SHIFT 0x0
-+#define UVD_CGC_CTRL__CLK_GATE_DLY_TIMER_MASK 0x3c
-+#define UVD_CGC_CTRL__CLK_GATE_DLY_TIMER__SHIFT 0x2
-+#define UVD_CGC_CTRL__CLK_OFF_DELAY_MASK 0x7c0
-+#define UVD_CGC_CTRL__CLK_OFF_DELAY__SHIFT 0x6
-+#define UVD_CGC_CTRL__UDEC_RE_MODE_MASK 0x800
-+#define UVD_CGC_CTRL__UDEC_RE_MODE__SHIFT 0xb
-+#define UVD_CGC_CTRL__UDEC_CM_MODE_MASK 0x1000
-+#define UVD_CGC_CTRL__UDEC_CM_MODE__SHIFT 0xc
-+#define UVD_CGC_CTRL__UDEC_IT_MODE_MASK 0x2000
-+#define UVD_CGC_CTRL__UDEC_IT_MODE__SHIFT 0xd
-+#define UVD_CGC_CTRL__UDEC_DB_MODE_MASK 0x4000
-+#define UVD_CGC_CTRL__UDEC_DB_MODE__SHIFT 0xe
-+#define UVD_CGC_CTRL__UDEC_MP_MODE_MASK 0x8000
-+#define UVD_CGC_CTRL__UDEC_MP_MODE__SHIFT 0xf
-+#define UVD_CGC_CTRL__SYS_MODE_MASK 0x10000
-+#define UVD_CGC_CTRL__SYS_MODE__SHIFT 0x10
-+#define UVD_CGC_CTRL__UDEC_MODE_MASK 0x20000
-+#define UVD_CGC_CTRL__UDEC_MODE__SHIFT 0x11
-+#define UVD_CGC_CTRL__MPEG2_MODE_MASK 0x40000
-+#define UVD_CGC_CTRL__MPEG2_MODE__SHIFT 0x12
-+#define UVD_CGC_CTRL__REGS_MODE_MASK 0x80000
-+#define UVD_CGC_CTRL__REGS_MODE__SHIFT 0x13
-+#define UVD_CGC_CTRL__RBC_MODE_MASK 0x100000
-+#define UVD_CGC_CTRL__RBC_MODE__SHIFT 0x14
-+#define UVD_CGC_CTRL__LMI_MC_MODE_MASK 0x200000
-+#define UVD_CGC_CTRL__LMI_MC_MODE__SHIFT 0x15
-+#define UVD_CGC_CTRL__LMI_UMC_MODE_MASK 0x400000
-+#define UVD_CGC_CTRL__LMI_UMC_MODE__SHIFT 0x16
-+#define UVD_CGC_CTRL__IDCT_MODE_MASK 0x800000
-+#define UVD_CGC_CTRL__IDCT_MODE__SHIFT 0x17
-+#define UVD_CGC_CTRL__MPRD_MODE_MASK 0x1000000
-+#define UVD_CGC_CTRL__MPRD_MODE__SHIFT 0x18
-+#define UVD_CGC_CTRL__MPC_MODE_MASK 0x2000000
-+#define UVD_CGC_CTRL__MPC_MODE__SHIFT 0x19
-+#define UVD_CGC_CTRL__LBSI_MODE_MASK 0x4000000
-+#define UVD_CGC_CTRL__LBSI_MODE__SHIFT 0x1a
-+#define UVD_CGC_CTRL__LRBBM_MODE_MASK 0x8000000
-+#define UVD_CGC_CTRL__LRBBM_MODE__SHIFT 0x1b
-+#define UVD_CGC_CTRL__WCB_MODE_MASK 0x10000000
-+#define UVD_CGC_CTRL__WCB_MODE__SHIFT 0x1c
-+#define UVD_CGC_CTRL__VCPU_MODE_MASK 0x20000000
-+#define UVD_CGC_CTRL__VCPU_MODE__SHIFT 0x1d
-+#define UVD_CGC_CTRL__SCPU_MODE_MASK 0x40000000
-+#define UVD_CGC_CTRL__SCPU_MODE__SHIFT 0x1e
-+#define UVD_CGC_UDEC_STATUS__RE_SCLK_MASK 0x1
-+#define UVD_CGC_UDEC_STATUS__RE_SCLK__SHIFT 0x0
-+#define UVD_CGC_UDEC_STATUS__RE_DCLK_MASK 0x2
-+#define UVD_CGC_UDEC_STATUS__RE_DCLK__SHIFT 0x1
-+#define UVD_CGC_UDEC_STATUS__RE_VCLK_MASK 0x4
-+#define UVD_CGC_UDEC_STATUS__RE_VCLK__SHIFT 0x2
-+#define UVD_CGC_UDEC_STATUS__CM_SCLK_MASK 0x8
-+#define UVD_CGC_UDEC_STATUS__CM_SCLK__SHIFT 0x3
-+#define UVD_CGC_UDEC_STATUS__CM_DCLK_MASK 0x10
-+#define UVD_CGC_UDEC_STATUS__CM_DCLK__SHIFT 0x4
-+#define UVD_CGC_UDEC_STATUS__CM_VCLK_MASK 0x20
-+#define UVD_CGC_UDEC_STATUS__CM_VCLK__SHIFT 0x5
-+#define UVD_CGC_UDEC_STATUS__IT_SCLK_MASK 0x40
-+#define UVD_CGC_UDEC_STATUS__IT_SCLK__SHIFT 0x6
-+#define UVD_CGC_UDEC_STATUS__IT_DCLK_MASK 0x80
-+#define UVD_CGC_UDEC_STATUS__IT_DCLK__SHIFT 0x7
-+#define UVD_CGC_UDEC_STATUS__IT_VCLK_MASK 0x100
-+#define UVD_CGC_UDEC_STATUS__IT_VCLK__SHIFT 0x8
-+#define UVD_CGC_UDEC_STATUS__DB_SCLK_MASK 0x200
-+#define UVD_CGC_UDEC_STATUS__DB_SCLK__SHIFT 0x9
-+#define UVD_CGC_UDEC_STATUS__DB_DCLK_MASK 0x400
-+#define UVD_CGC_UDEC_STATUS__DB_DCLK__SHIFT 0xa
-+#define UVD_CGC_UDEC_STATUS__DB_VCLK_MASK 0x800
-+#define UVD_CGC_UDEC_STATUS__DB_VCLK__SHIFT 0xb
-+#define UVD_CGC_UDEC_STATUS__MP_SCLK_MASK 0x1000
-+#define UVD_CGC_UDEC_STATUS__MP_SCLK__SHIFT 0xc
-+#define UVD_CGC_UDEC_STATUS__MP_DCLK_MASK 0x2000
-+#define UVD_CGC_UDEC_STATUS__MP_DCLK__SHIFT 0xd
-+#define UVD_CGC_UDEC_STATUS__MP_VCLK_MASK 0x4000
-+#define UVD_CGC_UDEC_STATUS__MP_VCLK__SHIFT 0xe
-+#define UVD_LMI_CTRL2__SPH_DIS_MASK 0x1
-+#define UVD_LMI_CTRL2__SPH_DIS__SHIFT 0x0
-+#define UVD_LMI_CTRL2__STALL_ARB_MASK 0x2
-+#define UVD_LMI_CTRL2__STALL_ARB__SHIFT 0x1
-+#define UVD_LMI_CTRL2__ASSERT_UMC_URGENT_MASK 0x4
-+#define UVD_LMI_CTRL2__ASSERT_UMC_URGENT__SHIFT 0x2
-+#define UVD_LMI_CTRL2__MASK_UMC_URGENT_MASK 0x8
-+#define UVD_LMI_CTRL2__MASK_UMC_URGENT__SHIFT 0x3
-+#define UVD_LMI_CTRL2__MCIF_WR_WATERMARK_MASK 0x70
-+#define UVD_LMI_CTRL2__MCIF_WR_WATERMARK__SHIFT 0x4
-+#define UVD_LMI_CTRL2__DRCITF_BUBBLE_FIX_DIS_MASK 0x80
-+#define UVD_LMI_CTRL2__DRCITF_BUBBLE_FIX_DIS__SHIFT 0x7
-+#define UVD_LMI_CTRL2__STALL_ARB_UMC_MASK 0x100
-+#define UVD_LMI_CTRL2__STALL_ARB_UMC__SHIFT 0x8
-+#define UVD_LMI_CTRL2__MC_READ_ID_SEL_MASK 0x600
-+#define UVD_LMI_CTRL2__MC_READ_ID_SEL__SHIFT 0x9
-+#define UVD_LMI_CTRL2__MC_WRITE_ID_SEL_MASK 0x1800
-+#define UVD_LMI_CTRL2__MC_WRITE_ID_SEL__SHIFT 0xb
-+#define UVD_LMI_CTRL2__VCPU_NC0_EXT_EN_MASK 0x2000
-+#define UVD_LMI_CTRL2__VCPU_NC0_EXT_EN__SHIFT 0xd
-+#define UVD_LMI_CTRL2__VCPU_NC1_EXT_EN_MASK 0x4000
-+#define UVD_LMI_CTRL2__VCPU_NC1_EXT_EN__SHIFT 0xe
-+#define UVD_LMI_CTRL2__SPU_EXTRA_CID_EN_MASK 0x8000
-+#define UVD_LMI_CTRL2__SPU_EXTRA_CID_EN__SHIFT 0xf
-+#define UVD_LMI_CTRL2__RE_OFFLOAD_EN_MASK 0x10000
-+#define UVD_LMI_CTRL2__RE_OFFLOAD_EN__SHIFT 0x10
-+#define UVD_LMI_CTRL2__RE_OFLD_MIF_WR_REQ_NUM_MASK 0x1fe0000
-+#define UVD_LMI_CTRL2__RE_OFLD_MIF_WR_REQ_NUM__SHIFT 0x11
-+#define UVD_MASTINT_EN__OVERRUN_RST_MASK 0x1
-+#define UVD_MASTINT_EN__OVERRUN_RST__SHIFT 0x0
-+#define UVD_MASTINT_EN__VCPU_EN_MASK 0x2
-+#define UVD_MASTINT_EN__VCPU_EN__SHIFT 0x1
-+#define UVD_MASTINT_EN__SYS_EN_MASK 0x4
-+#define UVD_MASTINT_EN__SYS_EN__SHIFT 0x2
-+#define UVD_MASTINT_EN__INT_OVERRUN_MASK 0x7ffff0
-+#define UVD_MASTINT_EN__INT_OVERRUN__SHIFT 0x4
-+#define UVD_LMI_ADDR_EXT__VCPU_ADDR_EXT_MASK 0xf
-+#define UVD_LMI_ADDR_EXT__VCPU_ADDR_EXT__SHIFT 0x0
-+#define UVD_LMI_ADDR_EXT__CM_ADDR_EXT_MASK 0xf0
-+#define UVD_LMI_ADDR_EXT__CM_ADDR_EXT__SHIFT 0x4
-+#define UVD_LMI_ADDR_EXT__IT_ADDR_EXT_MASK 0xf00
-+#define UVD_LMI_ADDR_EXT__IT_ADDR_EXT__SHIFT 0x8
-+#define UVD_LMI_ADDR_EXT__VCPU_VM_ADDR_EXT_MASK 0xf000
-+#define UVD_LMI_ADDR_EXT__VCPU_VM_ADDR_EXT__SHIFT 0xc
-+#define UVD_LMI_ADDR_EXT__RE_ADDR_EXT_MASK 0xf0000
-+#define UVD_LMI_ADDR_EXT__RE_ADDR_EXT__SHIFT 0x10
-+#define UVD_LMI_ADDR_EXT__MP_ADDR_EXT_MASK 0xf00000
-+#define UVD_LMI_ADDR_EXT__MP_ADDR_EXT__SHIFT 0x14
-+#define UVD_LMI_ADDR_EXT__VCPU_NC0_ADDR_EXT_MASK 0xf000000
-+#define UVD_LMI_ADDR_EXT__VCPU_NC0_ADDR_EXT__SHIFT 0x18
-+#define UVD_LMI_ADDR_EXT__VCPU_NC1_ADDR_EXT_MASK 0xf0000000
-+#define UVD_LMI_ADDR_EXT__VCPU_NC1_ADDR_EXT__SHIFT 0x1c
-+#define UVD_LMI_CTRL__WRITE_CLEAN_TIMER_MASK 0xff
-+#define UVD_LMI_CTRL__WRITE_CLEAN_TIMER__SHIFT 0x0
-+#define UVD_LMI_CTRL__WRITE_CLEAN_TIMER_EN_MASK 0x100
-+#define UVD_LMI_CTRL__WRITE_CLEAN_TIMER_EN__SHIFT 0x8
-+#define UVD_LMI_CTRL__REQ_MODE_MASK 0x200
-+#define UVD_LMI_CTRL__REQ_MODE__SHIFT 0x9
-+#define UVD_LMI_CTRL__ASSERT_MC_URGENT_MASK 0x800
-+#define UVD_LMI_CTRL__ASSERT_MC_URGENT__SHIFT 0xb
-+#define UVD_LMI_CTRL__MASK_MC_URGENT_MASK 0x1000
-+#define UVD_LMI_CTRL__MASK_MC_URGENT__SHIFT 0xc
-+#define UVD_LMI_CTRL__DATA_COHERENCY_EN_MASK 0x2000
-+#define UVD_LMI_CTRL__DATA_COHERENCY_EN__SHIFT 0xd
-+#define UVD_LMI_CTRL__CRC_RESET_MASK 0x4000
-+#define UVD_LMI_CTRL__CRC_RESET__SHIFT 0xe
-+#define UVD_LMI_CTRL__CRC_SEL_MASK 0xf8000
-+#define UVD_LMI_CTRL__CRC_SEL__SHIFT 0xf
-+#define UVD_LMI_CTRL__DISABLE_ON_FWV_FAIL_MASK 0x100000
-+#define UVD_LMI_CTRL__DISABLE_ON_FWV_FAIL__SHIFT 0x14
-+#define UVD_LMI_CTRL__VCPU_DATA_COHERENCY_EN_MASK 0x200000
-+#define UVD_LMI_CTRL__VCPU_DATA_COHERENCY_EN__SHIFT 0x15
-+#define UVD_LMI_CTRL__CM_DATA_COHERENCY_EN_MASK 0x400000
-+#define UVD_LMI_CTRL__CM_DATA_COHERENCY_EN__SHIFT 0x16
-+#define UVD_LMI_CTRL__DB_DB_DATA_COHERENCY_EN_MASK 0x800000
-+#define UVD_LMI_CTRL__DB_DB_DATA_COHERENCY_EN__SHIFT 0x17
-+#define UVD_LMI_CTRL__DB_IT_DATA_COHERENCY_EN_MASK 0x1000000
-+#define UVD_LMI_CTRL__DB_IT_DATA_COHERENCY_EN__SHIFT 0x18
-+#define UVD_LMI_CTRL__IT_IT_DATA_COHERENCY_EN_MASK 0x2000000
-+#define UVD_LMI_CTRL__IT_IT_DATA_COHERENCY_EN__SHIFT 0x19
-+#define UVD_LMI_CTRL__MIF_MIF_DATA_COHERENCY_EN_MASK 0x4000000
-+#define UVD_LMI_CTRL__MIF_MIF_DATA_COHERENCY_EN__SHIFT 0x1a
-+#define UVD_LMI_CTRL__RFU_MASK 0xf8000000
-+#define UVD_LMI_CTRL__RFU__SHIFT 0x1b
-+#define UVD_LMI_STATUS__READ_CLEAN_MASK 0x1
-+#define UVD_LMI_STATUS__READ_CLEAN__SHIFT 0x0
-+#define UVD_LMI_STATUS__WRITE_CLEAN_MASK 0x2
-+#define UVD_LMI_STATUS__WRITE_CLEAN__SHIFT 0x1
-+#define UVD_LMI_STATUS__WRITE_CLEAN_RAW_MASK 0x4
-+#define UVD_LMI_STATUS__WRITE_CLEAN_RAW__SHIFT 0x2
-+#define UVD_LMI_STATUS__VCPU_LMI_WRITE_CLEAN_MASK 0x8
-+#define UVD_LMI_STATUS__VCPU_LMI_WRITE_CLEAN__SHIFT 0x3
-+#define UVD_LMI_STATUS__UMC_READ_CLEAN_MASK 0x10
-+#define UVD_LMI_STATUS__UMC_READ_CLEAN__SHIFT 0x4
-+#define UVD_LMI_STATUS__UMC_WRITE_CLEAN_MASK 0x20
-+#define UVD_LMI_STATUS__UMC_WRITE_CLEAN__SHIFT 0x5
-+#define UVD_LMI_STATUS__UMC_WRITE_CLEAN_RAW_MASK 0x40
-+#define UVD_LMI_STATUS__UMC_WRITE_CLEAN_RAW__SHIFT 0x6
-+#define UVD_LMI_STATUS__PENDING_UVD_MC_WRITE_MASK 0x80
-+#define UVD_LMI_STATUS__PENDING_UVD_MC_WRITE__SHIFT 0x7
-+#define UVD_LMI_STATUS__READ_CLEAN_RAW_MASK 0x100
-+#define UVD_LMI_STATUS__READ_CLEAN_RAW__SHIFT 0x8
-+#define UVD_LMI_STATUS__UMC_READ_CLEAN_RAW_MASK 0x200
-+#define UVD_LMI_STATUS__UMC_READ_CLEAN_RAW__SHIFT 0x9
-+#define UVD_LMI_STATUS__UMC_UVD_IDLE_MASK 0x400
-+#define UVD_LMI_STATUS__UMC_UVD_IDLE__SHIFT 0xa
-+#define UVD_LMI_STATUS__UMC_AVP_IDLE_MASK 0x800
-+#define UVD_LMI_STATUS__UMC_AVP_IDLE__SHIFT 0xb
-+#define UVD_LMI_STATUS__ADP_MC_READ_CLEAN_MASK 0x1000
-+#define UVD_LMI_STATUS__ADP_MC_READ_CLEAN__SHIFT 0xc
-+#define UVD_LMI_STATUS__ADP_UMC_READ_CLEAN_MASK 0x2000
-+#define UVD_LMI_STATUS__ADP_UMC_READ_CLEAN__SHIFT 0xd
-+#define UVD_LMI_SWAP_CNTL__RB_MC_SWAP_MASK 0x3
-+#define UVD_LMI_SWAP_CNTL__RB_MC_SWAP__SHIFT 0x0
-+#define UVD_LMI_SWAP_CNTL__IB_MC_SWAP_MASK 0xc
-+#define UVD_LMI_SWAP_CNTL__IB_MC_SWAP__SHIFT 0x2
-+#define UVD_LMI_SWAP_CNTL__RB_RPTR_MC_SWAP_MASK 0x30
-+#define UVD_LMI_SWAP_CNTL__RB_RPTR_MC_SWAP__SHIFT 0x4
-+#define UVD_LMI_SWAP_CNTL__VCPU_R_MC_SWAP_MASK 0xc0
-+#define UVD_LMI_SWAP_CNTL__VCPU_R_MC_SWAP__SHIFT 0x6
-+#define UVD_LMI_SWAP_CNTL__VCPU_W_MC_SWAP_MASK 0x300
-+#define UVD_LMI_SWAP_CNTL__VCPU_W_MC_SWAP__SHIFT 0x8
-+#define UVD_LMI_SWAP_CNTL__CM_MC_SWAP_MASK 0xc00
-+#define UVD_LMI_SWAP_CNTL__CM_MC_SWAP__SHIFT 0xa
-+#define UVD_LMI_SWAP_CNTL__IT_MC_SWAP_MASK 0x3000
-+#define UVD_LMI_SWAP_CNTL__IT_MC_SWAP__SHIFT 0xc
-+#define UVD_LMI_SWAP_CNTL__DB_R_MC_SWAP_MASK 0xc000
-+#define UVD_LMI_SWAP_CNTL__DB_R_MC_SWAP__SHIFT 0xe
-+#define UVD_LMI_SWAP_CNTL__DB_W_MC_SWAP_MASK 0x30000
-+#define UVD_LMI_SWAP_CNTL__DB_W_MC_SWAP__SHIFT 0x10
-+#define UVD_LMI_SWAP_CNTL__CSM_MC_SWAP_MASK 0xc0000
-+#define UVD_LMI_SWAP_CNTL__CSM_MC_SWAP__SHIFT 0x12
-+#define UVD_LMI_SWAP_CNTL__MP_REF16_MC_SWAP_MASK 0xc00000
-+#define UVD_LMI_SWAP_CNTL__MP_REF16_MC_SWAP__SHIFT 0x16
-+#define UVD_LMI_SWAP_CNTL__DBW_MC_SWAP_MASK 0x3000000
-+#define UVD_LMI_SWAP_CNTL__DBW_MC_SWAP__SHIFT 0x18
-+#define UVD_LMI_SWAP_CNTL__RB_WR_MC_SWAP_MASK 0xc000000
-+#define UVD_LMI_SWAP_CNTL__RB_WR_MC_SWAP__SHIFT 0x1a
-+#define UVD_LMI_SWAP_CNTL__RE_MC_SWAP_MASK 0x30000000
-+#define UVD_LMI_SWAP_CNTL__RE_MC_SWAP__SHIFT 0x1c
-+#define UVD_LMI_SWAP_CNTL__MP_MC_SWAP_MASK 0xc0000000
-+#define UVD_LMI_SWAP_CNTL__MP_MC_SWAP__SHIFT 0x1e
-+#define UVD_MP_SWAP_CNTL__MP_REF0_MC_SWAP_MASK 0x3
-+#define UVD_MP_SWAP_CNTL__MP_REF0_MC_SWAP__SHIFT 0x0
-+#define UVD_MP_SWAP_CNTL__MP_REF1_MC_SWAP_MASK 0xc
-+#define UVD_MP_SWAP_CNTL__MP_REF1_MC_SWAP__SHIFT 0x2
-+#define UVD_MP_SWAP_CNTL__MP_REF2_MC_SWAP_MASK 0x30
-+#define UVD_MP_SWAP_CNTL__MP_REF2_MC_SWAP__SHIFT 0x4
-+#define UVD_MP_SWAP_CNTL__MP_REF3_MC_SWAP_MASK 0xc0
-+#define UVD_MP_SWAP_CNTL__MP_REF3_MC_SWAP__SHIFT 0x6
-+#define UVD_MP_SWAP_CNTL__MP_REF4_MC_SWAP_MASK 0x300
-+#define UVD_MP_SWAP_CNTL__MP_REF4_MC_SWAP__SHIFT 0x8
-+#define UVD_MP_SWAP_CNTL__MP_REF5_MC_SWAP_MASK 0xc00
-+#define UVD_MP_SWAP_CNTL__MP_REF5_MC_SWAP__SHIFT 0xa
-+#define UVD_MP_SWAP_CNTL__MP_REF6_MC_SWAP_MASK 0x3000
-+#define UVD_MP_SWAP_CNTL__MP_REF6_MC_SWAP__SHIFT 0xc
-+#define UVD_MP_SWAP_CNTL__MP_REF7_MC_SWAP_MASK 0xc000
-+#define UVD_MP_SWAP_CNTL__MP_REF7_MC_SWAP__SHIFT 0xe
-+#define UVD_MP_SWAP_CNTL__MP_REF8_MC_SWAP_MASK 0x30000
-+#define UVD_MP_SWAP_CNTL__MP_REF8_MC_SWAP__SHIFT 0x10
-+#define UVD_MP_SWAP_CNTL__MP_REF9_MC_SWAP_MASK 0xc0000
-+#define UVD_MP_SWAP_CNTL__MP_REF9_MC_SWAP__SHIFT 0x12
-+#define UVD_MP_SWAP_CNTL__MP_REF10_MC_SWAP_MASK 0x300000
-+#define UVD_MP_SWAP_CNTL__MP_REF10_MC_SWAP__SHIFT 0x14
-+#define UVD_MP_SWAP_CNTL__MP_REF11_MC_SWAP_MASK 0xc00000
-+#define UVD_MP_SWAP_CNTL__MP_REF11_MC_SWAP__SHIFT 0x16
-+#define UVD_MP_SWAP_CNTL__MP_REF12_MC_SWAP_MASK 0x3000000
-+#define UVD_MP_SWAP_CNTL__MP_REF12_MC_SWAP__SHIFT 0x18
-+#define UVD_MP_SWAP_CNTL__MP_REF13_MC_SWAP_MASK 0xc000000
-+#define UVD_MP_SWAP_CNTL__MP_REF13_MC_SWAP__SHIFT 0x1a
-+#define UVD_MP_SWAP_CNTL__MP_REF14_MC_SWAP_MASK 0x30000000
-+#define UVD_MP_SWAP_CNTL__MP_REF14_MC_SWAP__SHIFT 0x1c
-+#define UVD_MP_SWAP_CNTL__MP_REF15_MC_SWAP_MASK 0xc0000000
-+#define UVD_MP_SWAP_CNTL__MP_REF15_MC_SWAP__SHIFT 0x1e
-+#define UVD_MPC_CNTL__REPLACEMENT_MODE_MASK 0x38
-+#define UVD_MPC_CNTL__REPLACEMENT_MODE__SHIFT 0x3
-+#define UVD_MPC_CNTL__PERF_RST_MASK 0x40
-+#define UVD_MPC_CNTL__PERF_RST__SHIFT 0x6
-+#define UVD_MPC_CNTL__DBG_MUX_MASK 0x700
-+#define UVD_MPC_CNTL__DBG_MUX__SHIFT 0x8
-+#define UVD_MPC_CNTL__AVE_WEIGHT_MASK 0x30000
-+#define UVD_MPC_CNTL__AVE_WEIGHT__SHIFT 0x10
-+#define UVD_MPC_CNTL__URGENT_EN_MASK 0x40000
-+#define UVD_MPC_CNTL__URGENT_EN__SHIFT 0x12
-+#define UVD_MPC_SET_MUXA0__VARA_0_MASK 0x3f
-+#define UVD_MPC_SET_MUXA0__VARA_0__SHIFT 0x0
-+#define UVD_MPC_SET_MUXA0__VARA_1_MASK 0xfc0
-+#define UVD_MPC_SET_MUXA0__VARA_1__SHIFT 0x6
-+#define UVD_MPC_SET_MUXA0__VARA_2_MASK 0x3f000
-+#define UVD_MPC_SET_MUXA0__VARA_2__SHIFT 0xc
-+#define UVD_MPC_SET_MUXA0__VARA_3_MASK 0xfc0000
-+#define UVD_MPC_SET_MUXA0__VARA_3__SHIFT 0x12
-+#define UVD_MPC_SET_MUXA0__VARA_4_MASK 0x3f000000
-+#define UVD_MPC_SET_MUXA0__VARA_4__SHIFT 0x18
-+#define UVD_MPC_SET_MUXA1__VARA_5_MASK 0x3f
-+#define UVD_MPC_SET_MUXA1__VARA_5__SHIFT 0x0
-+#define UVD_MPC_SET_MUXA1__VARA_6_MASK 0xfc0
-+#define UVD_MPC_SET_MUXA1__VARA_6__SHIFT 0x6
-+#define UVD_MPC_SET_MUXA1__VARA_7_MASK 0x3f000
-+#define UVD_MPC_SET_MUXA1__VARA_7__SHIFT 0xc
-+#define UVD_MPC_SET_MUXB0__VARB_0_MASK 0x3f
-+#define UVD_MPC_SET_MUXB0__VARB_0__SHIFT 0x0
-+#define UVD_MPC_SET_MUXB0__VARB_1_MASK 0xfc0
-+#define UVD_MPC_SET_MUXB0__VARB_1__SHIFT 0x6
-+#define UVD_MPC_SET_MUXB0__VARB_2_MASK 0x3f000
-+#define UVD_MPC_SET_MUXB0__VARB_2__SHIFT 0xc
-+#define UVD_MPC_SET_MUXB0__VARB_3_MASK 0xfc0000
-+#define UVD_MPC_SET_MUXB0__VARB_3__SHIFT 0x12
-+#define UVD_MPC_SET_MUXB0__VARB_4_MASK 0x3f000000
-+#define UVD_MPC_SET_MUXB0__VARB_4__SHIFT 0x18
-+#define UVD_MPC_SET_MUXB1__VARB_5_MASK 0x3f
-+#define UVD_MPC_SET_MUXB1__VARB_5__SHIFT 0x0
-+#define UVD_MPC_SET_MUXB1__VARB_6_MASK 0xfc0
-+#define UVD_MPC_SET_MUXB1__VARB_6__SHIFT 0x6
-+#define UVD_MPC_SET_MUXB1__VARB_7_MASK 0x3f000
-+#define UVD_MPC_SET_MUXB1__VARB_7__SHIFT 0xc
-+#define UVD_MPC_SET_MUX__SET_0_MASK 0x7
-+#define UVD_MPC_SET_MUX__SET_0__SHIFT 0x0
-+#define UVD_MPC_SET_MUX__SET_1_MASK 0x38
-+#define UVD_MPC_SET_MUX__SET_1__SHIFT 0x3
-+#define UVD_MPC_SET_MUX__SET_2_MASK 0x1c0
-+#define UVD_MPC_SET_MUX__SET_2__SHIFT 0x6
-+#define UVD_MPC_SET_ALU__FUNCT_MASK 0x7
-+#define UVD_MPC_SET_ALU__FUNCT__SHIFT 0x0
-+#define UVD_MPC_SET_ALU__OPERAND_MASK 0xff0
-+#define UVD_MPC_SET_ALU__OPERAND__SHIFT 0x4
-+#define UVD_VCPU_CACHE_OFFSET0__CACHE_OFFSET0_MASK 0x1ffffff
-+#define UVD_VCPU_CACHE_OFFSET0__CACHE_OFFSET0__SHIFT 0x0
-+#define UVD_VCPU_CACHE_SIZE0__CACHE_SIZE0_MASK 0x1fffff
-+#define UVD_VCPU_CACHE_SIZE0__CACHE_SIZE0__SHIFT 0x0
-+#define UVD_VCPU_CACHE_OFFSET1__CACHE_OFFSET1_MASK 0x1ffffff
-+#define UVD_VCPU_CACHE_OFFSET1__CACHE_OFFSET1__SHIFT 0x0
-+#define UVD_VCPU_CACHE_SIZE1__CACHE_SIZE1_MASK 0x1fffff
-+#define UVD_VCPU_CACHE_SIZE1__CACHE_SIZE1__SHIFT 0x0
-+#define UVD_VCPU_CACHE_OFFSET2__CACHE_OFFSET2_MASK 0x1ffffff
-+#define UVD_VCPU_CACHE_OFFSET2__CACHE_OFFSET2__SHIFT 0x0
-+#define UVD_VCPU_CACHE_SIZE2__CACHE_SIZE2_MASK 0x1fffff
-+#define UVD_VCPU_CACHE_SIZE2__CACHE_SIZE2__SHIFT 0x0
-+#define UVD_VCPU_CNTL__IRQ_ERR_MASK 0xf
-+#define UVD_VCPU_CNTL__IRQ_ERR__SHIFT 0x0
-+#define UVD_VCPU_CNTL__AXI_MAX_BRST_SIZE_IS_4_MASK 0x10
-+#define UVD_VCPU_CNTL__AXI_MAX_BRST_SIZE_IS_4__SHIFT 0x4
-+#define UVD_VCPU_CNTL__PMB_ED_ENABLE_MASK 0x20
-+#define UVD_VCPU_CNTL__PMB_ED_ENABLE__SHIFT 0x5
-+#define UVD_VCPU_CNTL__PMB_SOFT_RESET_MASK 0x40
-+#define UVD_VCPU_CNTL__PMB_SOFT_RESET__SHIFT 0x6
-+#define UVD_VCPU_CNTL__RBBM_SOFT_RESET_MASK 0x80
-+#define UVD_VCPU_CNTL__RBBM_SOFT_RESET__SHIFT 0x7
-+#define UVD_VCPU_CNTL__ABORT_REQ_MASK 0x100
-+#define UVD_VCPU_CNTL__ABORT_REQ__SHIFT 0x8
-+#define UVD_VCPU_CNTL__CLK_EN_MASK 0x200
-+#define UVD_VCPU_CNTL__CLK_EN__SHIFT 0x9
-+#define UVD_VCPU_CNTL__TRCE_EN_MASK 0x400
-+#define UVD_VCPU_CNTL__TRCE_EN__SHIFT 0xa
-+#define UVD_VCPU_CNTL__TRCE_MUX_MASK 0x1800
-+#define UVD_VCPU_CNTL__TRCE_MUX__SHIFT 0xb
-+#define UVD_VCPU_CNTL__DBG_MUX_MASK 0xe000
-+#define UVD_VCPU_CNTL__DBG_MUX__SHIFT 0xd
-+#define UVD_VCPU_CNTL__JTAG_EN_MASK 0x10000
-+#define UVD_VCPU_CNTL__JTAG_EN__SHIFT 0x10
-+#define UVD_VCPU_CNTL__CLK_ACTIVE_MASK 0x20000
-+#define UVD_VCPU_CNTL__CLK_ACTIVE__SHIFT 0x11
-+#define UVD_VCPU_CNTL__TIMEOUT_DIS_MASK 0x40000
-+#define UVD_VCPU_CNTL__TIMEOUT_DIS__SHIFT 0x12
-+#define UVD_VCPU_CNTL__PRB_TIMEOUT_VAL_MASK 0xff00000
-+#define UVD_VCPU_CNTL__PRB_TIMEOUT_VAL__SHIFT 0x14
-+#define UVD_VCPU_CNTL__CABAC_MB_ACC_MASK 0x10000000
-+#define UVD_VCPU_CNTL__CABAC_MB_ACC__SHIFT 0x1c
-+#define UVD_VCPU_CNTL__ECPU_AM32_EN_MASK 0x20000000
-+#define UVD_VCPU_CNTL__ECPU_AM32_EN__SHIFT 0x1d
-+#define UVD_VCPU_CNTL__WMV9_EN_MASK 0x40000000
-+#define UVD_VCPU_CNTL__WMV9_EN__SHIFT 0x1e
-+#define UVD_VCPU_CNTL__RE_OFFLOAD_EN_MASK 0x80000000
-+#define UVD_VCPU_CNTL__RE_OFFLOAD_EN__SHIFT 0x1f
-+#define UVD_SOFT_RESET__RBC_SOFT_RESET_MASK 0x1
-+#define UVD_SOFT_RESET__RBC_SOFT_RESET__SHIFT 0x0
-+#define UVD_SOFT_RESET__LBSI_SOFT_RESET_MASK 0x2
-+#define UVD_SOFT_RESET__LBSI_SOFT_RESET__SHIFT 0x1
-+#define UVD_SOFT_RESET__LMI_SOFT_RESET_MASK 0x4
-+#define UVD_SOFT_RESET__LMI_SOFT_RESET__SHIFT 0x2
-+#define UVD_SOFT_RESET__VCPU_SOFT_RESET_MASK 0x8
-+#define UVD_SOFT_RESET__VCPU_SOFT_RESET__SHIFT 0x3
-+#define UVD_SOFT_RESET__UDEC_SOFT_RESET_MASK 0x10
-+#define UVD_SOFT_RESET__UDEC_SOFT_RESET__SHIFT 0x4
-+#define UVD_SOFT_RESET__CSM_SOFT_RESET_MASK 0x20
-+#define UVD_SOFT_RESET__CSM_SOFT_RESET__SHIFT 0x5
-+#define UVD_SOFT_RESET__CXW_SOFT_RESET_MASK 0x40
-+#define UVD_SOFT_RESET__CXW_SOFT_RESET__SHIFT 0x6
-+#define UVD_SOFT_RESET__TAP_SOFT_RESET_MASK 0x80
-+#define UVD_SOFT_RESET__TAP_SOFT_RESET__SHIFT 0x7
-+#define UVD_SOFT_RESET__MPC_SOFT_RESET_MASK 0x100
-+#define UVD_SOFT_RESET__MPC_SOFT_RESET__SHIFT 0x8
-+#define UVD_SOFT_RESET__FWV_SOFT_RESET_MASK 0x200
-+#define UVD_SOFT_RESET__FWV_SOFT_RESET__SHIFT 0x9
-+#define UVD_SOFT_RESET__IH_SOFT_RESET_MASK 0x400
-+#define UVD_SOFT_RESET__IH_SOFT_RESET__SHIFT 0xa
-+#define UVD_SOFT_RESET__MPRD_SOFT_RESET_MASK 0x800
-+#define UVD_SOFT_RESET__MPRD_SOFT_RESET__SHIFT 0xb
-+#define UVD_SOFT_RESET__IDCT_SOFT_RESET_MASK 0x1000
-+#define UVD_SOFT_RESET__IDCT_SOFT_RESET__SHIFT 0xc
-+#define UVD_SOFT_RESET__LMI_UMC_SOFT_RESET_MASK 0x2000
-+#define UVD_SOFT_RESET__LMI_UMC_SOFT_RESET__SHIFT 0xd
-+#define UVD_SOFT_RESET__SPH_SOFT_RESET_MASK 0x4000
-+#define UVD_SOFT_RESET__SPH_SOFT_RESET__SHIFT 0xe
-+#define UVD_SOFT_RESET__MIF_SOFT_RESET_MASK 0x8000
-+#define UVD_SOFT_RESET__MIF_SOFT_RESET__SHIFT 0xf
-+#define UVD_SOFT_RESET__LCM_SOFT_RESET_MASK 0x10000
-+#define UVD_SOFT_RESET__LCM_SOFT_RESET__SHIFT 0x10
-+#define UVD_RBC_IB_BASE__IB_BASE_MASK 0xffffffc0
-+#define UVD_RBC_IB_BASE__IB_BASE__SHIFT 0x6
-+#define UVD_RBC_IB_SIZE__IB_SIZE_MASK 0x7ffff0
-+#define UVD_RBC_IB_SIZE__IB_SIZE__SHIFT 0x4
-+#define UVD_RBC_RB_BASE__RB_BASE_MASK 0xffffffc0
-+#define UVD_RBC_RB_BASE__RB_BASE__SHIFT 0x6
-+#define UVD_RBC_RB_RPTR__RB_RPTR_MASK 0x7ffff0
-+#define UVD_RBC_RB_RPTR__RB_RPTR__SHIFT 0x4
-+#define UVD_RBC_RB_WPTR__RB_WPTR_MASK 0x7ffff0
-+#define UVD_RBC_RB_WPTR__RB_WPTR__SHIFT 0x4
-+#define UVD_RBC_RB_CNTL__RB_BUFSZ_MASK 0x1f
-+#define UVD_RBC_RB_CNTL__RB_BUFSZ__SHIFT 0x0
-+#define UVD_RBC_RB_CNTL__RB_BLKSZ_MASK 0x1f00
-+#define UVD_RBC_RB_CNTL__RB_BLKSZ__SHIFT 0x8
-+#define UVD_RBC_RB_CNTL__RB_NO_FETCH_MASK 0x10000
-+#define UVD_RBC_RB_CNTL__RB_NO_FETCH__SHIFT 0x10
-+#define UVD_RBC_RB_CNTL__RB_WPTR_POLL_EN_MASK 0x100000
-+#define UVD_RBC_RB_CNTL__RB_WPTR_POLL_EN__SHIFT 0x14
-+#define UVD_RBC_RB_CNTL__RB_NO_UPDATE_MASK 0x1000000
-+#define UVD_RBC_RB_CNTL__RB_NO_UPDATE__SHIFT 0x18
-+#define UVD_RBC_RB_CNTL__RB_RPTR_WR_EN_MASK 0x10000000
-+#define UVD_RBC_RB_CNTL__RB_RPTR_WR_EN__SHIFT 0x1c
-+#define UVD_RBC_RB_RPTR_ADDR__RB_RPTR_ADDR_MASK 0xffffffff
-+#define UVD_RBC_RB_RPTR_ADDR__RB_RPTR_ADDR__SHIFT 0x0
-+#define UVD_STATUS__RBC_BUSY_MASK 0x1
-+#define UVD_STATUS__RBC_BUSY__SHIFT 0x0
-+#define UVD_STATUS__VCPU_REPORT_MASK 0xfe
-+#define UVD_STATUS__VCPU_REPORT__SHIFT 0x1
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_WAIT_INCOMPLETE_TIMEOUT_STAT_MASK 0x1
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_WAIT_INCOMPLETE_TIMEOUT_STAT__SHIFT 0x0
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_WAIT_FAULT_TIMEOUT_STAT_MASK 0x2
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_WAIT_FAULT_TIMEOUT_STAT__SHIFT 0x1
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_SIGNAL_INCOMPLETE_TIMEOUT_STAT_MASK 0x4
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_SIGNAL_INCOMPLETE_TIMEOUT_STAT__SHIFT 0x2
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_TIMEOUT_CLEAR_MASK 0x8
-+#define UVD_SEMA_TIMEOUT_STATUS__SEMAPHORE_TIMEOUT_CLEAR__SHIFT 0x3
-+#define UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL__WAIT_INCOMPLETE_EN_MASK 0x1
-+#define UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL__WAIT_INCOMPLETE_EN__SHIFT 0x0
-+#define UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL__WAIT_INCOMPLETE_COUNT_MASK 0x1ffffe
-+#define UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL__WAIT_INCOMPLETE_COUNT__SHIFT 0x1
-+#define UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL__RESEND_TIMER_MASK 0x7000000
-+#define UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL__RESEND_TIMER__SHIFT 0x18
-+#define UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL__WAIT_FAULT_EN_MASK 0x1
-+#define UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL__WAIT_FAULT_EN__SHIFT 0x0
-+#define UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL__WAIT_FAULT_COUNT_MASK 0x1ffffe
-+#define UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL__WAIT_FAULT_COUNT__SHIFT 0x1
-+#define UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL__RESEND_TIMER_MASK 0x7000000
-+#define UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL__RESEND_TIMER__SHIFT 0x18
-+#define UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL__SIGNAL_INCOMPLETE_EN_MASK 0x1
-+#define UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL__SIGNAL_INCOMPLETE_EN__SHIFT 0x0
-+#define UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL__SIGNAL_INCOMPLETE_COUNT_MASK 0x1ffffe
-+#define UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL__SIGNAL_INCOMPLETE_COUNT__SHIFT 0x1
-+#define UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL__RESEND_TIMER_MASK 0x7000000
-+#define UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL__RESEND_TIMER__SHIFT 0x18
-+#define UVD_CONTEXT_ID__CONTEXT_ID_MASK 0xffffffff
-+#define UVD_CONTEXT_ID__CONTEXT_ID__SHIFT 0x0
-+#define UVD_LMI_CACHE_CTRL__IT_EN_MASK 0x1
-+#define UVD_LMI_CACHE_CTRL__IT_EN__SHIFT 0x0
-+#define UVD_LMI_CACHE_CTRL__IT_FLUSH_MASK 0x2
-+#define UVD_LMI_CACHE_CTRL__IT_FLUSH__SHIFT 0x1
-+#define UVD_LMI_CACHE_CTRL__CM_EN_MASK 0x4
-+#define UVD_LMI_CACHE_CTRL__CM_EN__SHIFT 0x2
-+#define UVD_LMI_CACHE_CTRL__CM_FLUSH_MASK 0x8
-+#define UVD_LMI_CACHE_CTRL__CM_FLUSH__SHIFT 0x3
-+#define UVD_LMI_CACHE_CTRL__VCPU_EN_MASK 0x10
-+#define UVD_LMI_CACHE_CTRL__VCPU_EN__SHIFT 0x4
-+#define UVD_LMI_CACHE_CTRL__VCPU_FLUSH_MASK 0x20
-+#define UVD_LMI_CACHE_CTRL__VCPU_FLUSH__SHIFT 0x5
-+#define UVD_LMI_SWAP_CNTL2__SCPU_R_MC_SWAP_MASK 0x3
-+#define UVD_LMI_SWAP_CNTL2__SCPU_R_MC_SWAP__SHIFT 0x0
-+#define UVD_LMI_SWAP_CNTL2__SCPU_W_MC_SWAP_MASK 0xc
-+#define UVD_LMI_SWAP_CNTL2__SCPU_W_MC_SWAP__SHIFT 0x2
-+#define UVD_LMI_ADDR_EXT2__SCPU_ADDR_EXT_MASK 0xf
-+#define UVD_LMI_ADDR_EXT2__SCPU_ADDR_EXT__SHIFT 0x0
-+#define UVD_LMI_ADDR_EXT2__SCPU_VM_ADDR_EXT_MASK 0xf0
-+#define UVD_LMI_ADDR_EXT2__SCPU_VM_ADDR_EXT__SHIFT 0x4
-+#define UVD_LMI_ADDR_EXT2__SCPU_NC0_ADDR_EXT_MASK 0xf00
-+#define UVD_LMI_ADDR_EXT2__SCPU_NC0_ADDR_EXT__SHIFT 0x8
-+#define UVD_LMI_ADDR_EXT2__SCPU_NC1_ADDR_EXT_MASK 0xf000
-+#define UVD_LMI_ADDR_EXT2__SCPU_NC1_ADDR_EXT__SHIFT 0xc
-+#define UVD_CGC_MEM_CTRL__LMI_MC_LS_EN_MASK 0x1
-+#define UVD_CGC_MEM_CTRL__LMI_MC_LS_EN__SHIFT 0x0
-+#define UVD_CGC_MEM_CTRL__MPC_LS_EN_MASK 0x2
-+#define UVD_CGC_MEM_CTRL__MPC_LS_EN__SHIFT 0x1
-+#define UVD_CGC_MEM_CTRL__MPRD_LS_EN_MASK 0x4
-+#define UVD_CGC_MEM_CTRL__MPRD_LS_EN__SHIFT 0x2
-+#define UVD_CGC_MEM_CTRL__WCB_LS_EN_MASK 0x8
-+#define UVD_CGC_MEM_CTRL__WCB_LS_EN__SHIFT 0x3
-+#define UVD_CGC_MEM_CTRL__UDEC_RE_LS_EN_MASK 0x10
-+#define UVD_CGC_MEM_CTRL__UDEC_RE_LS_EN__SHIFT 0x4
-+#define UVD_CGC_MEM_CTRL__UDEC_CM_LS_EN_MASK 0x20
-+#define UVD_CGC_MEM_CTRL__UDEC_CM_LS_EN__SHIFT 0x5
-+#define UVD_CGC_MEM_CTRL__UDEC_IT_LS_EN_MASK 0x40
-+#define UVD_CGC_MEM_CTRL__UDEC_IT_LS_EN__SHIFT 0x6
-+#define UVD_CGC_MEM_CTRL__UDEC_DB_LS_EN_MASK 0x80
-+#define UVD_CGC_MEM_CTRL__UDEC_DB_LS_EN__SHIFT 0x7
-+#define UVD_CGC_MEM_CTRL__UDEC_MP_LS_EN_MASK 0x100
-+#define UVD_CGC_MEM_CTRL__UDEC_MP_LS_EN__SHIFT 0x8
-+#define UVD_CGC_MEM_CTRL__SYS_LS_EN_MASK 0x200
-+#define UVD_CGC_MEM_CTRL__SYS_LS_EN__SHIFT 0x9
-+#define UVD_CGC_MEM_CTRL__VCPU_LS_EN_MASK 0x400
-+#define UVD_CGC_MEM_CTRL__VCPU_LS_EN__SHIFT 0xa
-+#define UVD_CGC_MEM_CTRL__SCPU_LS_EN_MASK 0x800
-+#define UVD_CGC_MEM_CTRL__SCPU_LS_EN__SHIFT 0xb
-+#define UVD_CGC_MEM_CTRL__MIF_LS_EN_MASK 0x1000
-+#define UVD_CGC_MEM_CTRL__MIF_LS_EN__SHIFT 0xc
-+#define UVD_CGC_MEM_CTRL__LCM_LS_EN_MASK 0x2000
-+#define UVD_CGC_MEM_CTRL__LCM_LS_EN__SHIFT 0xd
-+#define UVD_CGC_MEM_CTRL__LS_SET_DELAY_MASK 0xf0000
-+#define UVD_CGC_MEM_CTRL__LS_SET_DELAY__SHIFT 0x10
-+#define UVD_CGC_MEM_CTRL__LS_CLEAR_DELAY_MASK 0xf00000
-+#define UVD_CGC_MEM_CTRL__LS_CLEAR_DELAY__SHIFT 0x14
-+#define UVD_CGC_CTRL2__DYN_OCLK_RAMP_EN_MASK 0x1
-+#define UVD_CGC_CTRL2__DYN_OCLK_RAMP_EN__SHIFT 0x0
-+#define UVD_CGC_CTRL2__DYN_RCLK_RAMP_EN_MASK 0x2
-+#define UVD_CGC_CTRL2__DYN_RCLK_RAMP_EN__SHIFT 0x1
-+#define UVD_CGC_CTRL2__GATER_DIV_ID_MASK 0x1c
-+#define UVD_CGC_CTRL2__GATER_DIV_ID__SHIFT 0x2
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_FSM_ADDR_MASK 0xff
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_FSM_ADDR__SHIFT 0x0
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_POWER_DOWN_MASK 0x100
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_POWER_DOWN__SHIFT 0x8
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_POWER_UP_MASK 0x200
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_POWER_UP__SHIFT 0x9
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_P1_SELECT_MASK 0x400
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_P1_SELECT__SHIFT 0xa
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_P2_SELECT_MASK 0x800
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_P2_SELECT__SHIFT 0xb
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_WRITE_MASK 0x1000
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_WRITE__SHIFT 0xc
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_READ_MASK 0x2000
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_READ__SHIFT 0xd
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_REG_ADDR_MASK 0xf0000000
-+#define UVD_PGFSM_CONFIG__UVD_PGFSM_REG_ADDR__SHIFT 0x1c
-+#define UVD_PGFSM_READ_TILE1__UVD_PGFSM_READ_TILE1_VALUE_MASK 0xffffff
-+#define UVD_PGFSM_READ_TILE1__UVD_PGFSM_READ_TILE1_VALUE__SHIFT 0x0
-+#define UVD_PGFSM_READ_TILE2__UVD_PGFSM_READ_TILE2_VALUE_MASK 0xffffff
-+#define UVD_PGFSM_READ_TILE2__UVD_PGFSM_READ_TILE2_VALUE__SHIFT 0x0
-+#define UVD_POWER_STATUS__UVD_POWER_STATUS_MASK 0x1
-+#define UVD_POWER_STATUS__UVD_POWER_STATUS__SHIFT 0x0
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_PIPES_MASK 0x7
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_PIPES__SHIFT 0x0
-+#define UVD_MIF_CURR_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE_MASK 0x70
-+#define UVD_MIF_CURR_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE__SHIFT 0x4
-+#define UVD_MIF_CURR_ADDR_CONFIG__BANK_INTERLEAVE_SIZE_MASK 0x700
-+#define UVD_MIF_CURR_ADDR_CONFIG__BANK_INTERLEAVE_SIZE__SHIFT 0x8
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_SHADER_ENGINES_MASK 0x3000
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_SHADER_ENGINES__SHIFT 0xc
-+#define UVD_MIF_CURR_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE_MASK 0x70000
-+#define UVD_MIF_CURR_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE__SHIFT 0x10
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_GPUS_MASK 0x700000
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_GPUS__SHIFT 0x14
-+#define UVD_MIF_CURR_ADDR_CONFIG__MULTI_GPU_TILE_SIZE_MASK 0x3000000
-+#define UVD_MIF_CURR_ADDR_CONFIG__MULTI_GPU_TILE_SIZE__SHIFT 0x18
-+#define UVD_MIF_CURR_ADDR_CONFIG__ROW_SIZE_MASK 0x30000000
-+#define UVD_MIF_CURR_ADDR_CONFIG__ROW_SIZE__SHIFT 0x1c
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_LOWER_PIPES_MASK 0x40000000
-+#define UVD_MIF_CURR_ADDR_CONFIG__NUM_LOWER_PIPES__SHIFT 0x1e
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_PIPES_MASK 0x7
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_PIPES__SHIFT 0x0
-+#define UVD_MIF_REF_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE_MASK 0x70
-+#define UVD_MIF_REF_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE__SHIFT 0x4
-+#define UVD_MIF_REF_ADDR_CONFIG__BANK_INTERLEAVE_SIZE_MASK 0x700
-+#define UVD_MIF_REF_ADDR_CONFIG__BANK_INTERLEAVE_SIZE__SHIFT 0x8
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_SHADER_ENGINES_MASK 0x3000
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_SHADER_ENGINES__SHIFT 0xc
-+#define UVD_MIF_REF_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE_MASK 0x70000
-+#define UVD_MIF_REF_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE__SHIFT 0x10
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_GPUS_MASK 0x700000
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_GPUS__SHIFT 0x14
-+#define UVD_MIF_REF_ADDR_CONFIG__MULTI_GPU_TILE_SIZE_MASK 0x3000000
-+#define UVD_MIF_REF_ADDR_CONFIG__MULTI_GPU_TILE_SIZE__SHIFT 0x18
-+#define UVD_MIF_REF_ADDR_CONFIG__ROW_SIZE_MASK 0x30000000
-+#define UVD_MIF_REF_ADDR_CONFIG__ROW_SIZE__SHIFT 0x1c
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_LOWER_PIPES_MASK 0x40000000
-+#define UVD_MIF_REF_ADDR_CONFIG__NUM_LOWER_PIPES__SHIFT 0x1e
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_PIPES_MASK 0x7
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_PIPES__SHIFT 0x0
-+#define UVD_MIF_RECON1_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE_MASK 0x70
-+#define UVD_MIF_RECON1_ADDR_CONFIG__PIPE_INTERLEAVE_SIZE__SHIFT 0x4
-+#define UVD_MIF_RECON1_ADDR_CONFIG__BANK_INTERLEAVE_SIZE_MASK 0x700
-+#define UVD_MIF_RECON1_ADDR_CONFIG__BANK_INTERLEAVE_SIZE__SHIFT 0x8
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_SHADER_ENGINES_MASK 0x3000
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_SHADER_ENGINES__SHIFT 0xc
-+#define UVD_MIF_RECON1_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE_MASK 0x70000
-+#define UVD_MIF_RECON1_ADDR_CONFIG__SHADER_ENGINE_TILE_SIZE__SHIFT 0x10
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_GPUS_MASK 0x700000
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_GPUS__SHIFT 0x14
-+#define UVD_MIF_RECON1_ADDR_CONFIG__MULTI_GPU_TILE_SIZE_MASK 0x3000000
-+#define UVD_MIF_RECON1_ADDR_CONFIG__MULTI_GPU_TILE_SIZE__SHIFT 0x18
-+#define UVD_MIF_RECON1_ADDR_CONFIG__ROW_SIZE_MASK 0x30000000
-+#define UVD_MIF_RECON1_ADDR_CONFIG__ROW_SIZE__SHIFT 0x1c
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_LOWER_PIPES_MASK 0x40000000
-+#define UVD_MIF_RECON1_ADDR_CONFIG__NUM_LOWER_PIPES__SHIFT 0x1e
-+
-+#endif /* UVD_4_2_SH_MASK_H */
---
-1.9.1
-