/*
 * Copyright (C) 2021 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 _dpcs_2_0_3_OFFSET_HEADER
#define _dpcs_2_0_3_OFFSET_HEADER
// addressBlock: dpcssysa_dpcs0_dpcstx0_dispdec
// base address: 0x0
#define mmDPCSTX0_DPCSTX_TX_CLOCK_CNTL                                                                 0x2928
#define mmDPCSTX0_DPCSTX_TX_CLOCK_CNTL_BASE_IDX                                                        2
#define mmDPCSTX0_DPCSTX_TX_CNTL                                                                       0x2929
#define mmDPCSTX0_DPCSTX_TX_CNTL_BASE_IDX                                                              2
#define mmDPCSTX0_DPCSTX_CBUS_CNTL                                                                     0x292a
#define mmDPCSTX0_DPCSTX_CBUS_CNTL_BASE_IDX                                                            2
#define mmDPCSTX0_DPCSTX_INTERRUPT_CNTL                                                                0x292b
#define mmDPCSTX0_DPCSTX_INTERRUPT_CNTL_BASE_IDX                                                       2
#define mmDPCSTX0_DPCSTX_PLL_UPDATE_ADDR                                                               0x292c
#define mmDPCSTX0_DPCSTX_PLL_UPDATE_ADDR_BASE_IDX                                                      2
#define mmDPCSTX0_DPCSTX_PLL_UPDATE_DATA                                                               0x292d
#define mmDPCSTX0_DPCSTX_PLL_UPDATE_DATA_BASE_IDX                                                      2


// addressBlock: dpcssysa_dpcs0_rdpcstx0_dispdec
// base address: 0x0
#define mmRDPCSTX0_RDPCSTX_CNTL                                                                        0x2930
#define mmRDPCSTX0_RDPCSTX_CNTL_BASE_IDX                                                               2
#define mmRDPCSTX0_RDPCSTX_CLOCK_CNTL                                                                  0x2931
#define mmRDPCSTX0_RDPCSTX_CLOCK_CNTL_BASE_IDX                                                         2
#define mmRDPCSTX0_RDPCSTX_INTERRUPT_CONTROL                                                           0x2932
#define mmRDPCSTX0_RDPCSTX_INTERRUPT_CONTROL_BASE_IDX                                                  2
#define mmRDPCSTX0_RDPCSTX_PLL_UPDATE_DATA                                                             0x2933
#define mmRDPCSTX0_RDPCSTX_PLL_UPDATE_DATA_BASE_IDX                                                    2
#define mmRDPCSTX0_RDPCS_TX_CR_ADDR                                                                    0x2934
#define mmRDPCSTX0_RDPCS_TX_CR_ADDR_BASE_IDX                                                           2
#define mmRDPCSTX0_RDPCS_TX_CR_DATA                                                                    0x2935
#define mmRDPCSTX0_RDPCS_TX_CR_DATA_BASE_IDX                                                           2
#define mmRDPCSTX0_RDPCSTX_SCRATCH                                                                     0x2939
#define mmRDPCSTX0_RDPCSTX_SCRATCH_BASE_IDX                                                            2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL0                                                                   0x2940
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL0_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL1                                                                   0x2941
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL1_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL2                                                                   0x2942
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL2_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL3                                                                   0x2943
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL3_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL4                                                                   0x2944
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL4_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL5                                                                   0x2945
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL5_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL6                                                                   0x2946
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL6_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL7                                                                   0x2947
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL7_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL8                                                                   0x2948
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL8_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL9                                                                   0x2949
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL9_BASE_IDX                                                          2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL10                                                                  0x294a
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL10_BASE_IDX                                                         2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL11                                                                  0x294b
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL11_BASE_IDX                                                         2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL12                                                                  0x294c
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL12_BASE_IDX                                                         2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL13                                                                  0x294d
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL13_BASE_IDX                                                         2
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL14                                                                  0x294e
#define mmRDPCSTX0_RDPCSTX_PHY_CNTL14_BASE_IDX                                                         2


// addressBlock: dpcssysa_dpcs0_dpcstx1_dispdec
// base address: 0x360
#define mmDPCSTX1_DPCSTX_TX_CLOCK_CNTL                                                                 0x2a00
#define mmDPCSTX1_DPCSTX_TX_CLOCK_CNTL_BASE_IDX                                                        2
#define mmDPCSTX1_DPCSTX_TX_CNTL                                                                       0x2a01
#define mmDPCSTX1_DPCSTX_TX_CNTL_BASE_IDX                                                              2
#define mmDPCSTX1_DPCSTX_CBUS_CNTL                                                                     0x2a02
#define mmDPCSTX1_DPCSTX_CBUS_CNTL_BASE_IDX                                                            2
#define mmDPCSTX1_DPCSTX_INTERRUPT_CNTL                                                                0x2a03
#define mmDPCSTX1_DPCSTX_INTERRUPT_CNTL_BASE_IDX                                                       2
#define mmDPCSTX1_DPCSTX_PLL_UPDATE_ADDR                                                               0x2a04
#define mmDPCSTX1_DPCSTX_PLL_UPDATE_ADDR_BASE_IDX                                                      2
#define mmDPCSTX1_DPCSTX_PLL_UPDATE_DATA                                                               0x2a05
#define mmDPCSTX1_DPCSTX_PLL_UPDATE_DATA_BASE_IDX                                                      2


// addressBlock: dpcssysa_dpcs0_rdpcstx1_dispdec
// base address: 0x360
#define mmRDPCSTX1_RDPCSTX_CNTL                                                                        0x2a08
#define mmRDPCSTX1_RDPCSTX_CNTL_BASE_IDX                                                               2
#define mmRDPCSTX1_RDPCSTX_CLOCK_CNTL                                                                  0x2a09
#define mmRDPCSTX1_RDPCSTX_CLOCK_CNTL_BASE_IDX                                                         2
#define mmRDPCSTX1_RDPCSTX_INTERRUPT_CONTROL                                                           0x2a0a
#define mmRDPCSTX1_RDPCSTX_INTERRUPT_CONTROL_BASE_IDX                                                  2
#define mmRDPCSTX1_RDPCSTX_PLL_UPDATE_DATA                                                             0x2a0b
#define mmRDPCSTX1_RDPCSTX_PLL_UPDATE_DATA_BASE_IDX                                                    2
#define mmRDPCSTX1_RDPCS_TX_CR_ADDR                                                                    0x2a0c
#define mmRDPCSTX1_RDPCS_TX_CR_ADDR_BASE_IDX                                                           2
#define mmRDPCSTX1_RDPCS_TX_CR_DATA                                                                    0x2a0d
#define mmRDPCSTX1_RDPCS_TX_CR_DATA_BASE_IDX                                                           2
#define mmRDPCSTX1_RDPCSTX_SCRATCH                                                                     0x2a11
#define mmRDPCSTX1_RDPCSTX_SCRATCH_BASE_IDX                                                            2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL0                                                                   0x2a18
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL0_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL1                                                                   0x2a19
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL1_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL2                                                                   0x2a1a
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL2_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL3                                                                   0x2a1b
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL3_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL4                                                                   0x2a1c
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL4_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL5                                                                   0x2a1d
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL5_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL6                                                                   0x2a1e
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL6_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL7                                                                   0x2a1f
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL7_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL8                                                                   0x2a20
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL8_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL9                                                                   0x2a21
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL9_BASE_IDX                                                          2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL10                                                                  0x2a22
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL10_BASE_IDX                                                         2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL11                                                                  0x2a23
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL11_BASE_IDX                                                         2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL12                                                                  0x2a24
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL12_BASE_IDX                                                         2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL13                                                                  0x2a25
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL13_BASE_IDX                                                         2
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL14                                                                  0x2a26
#define mmRDPCSTX1_RDPCSTX_PHY_CNTL14_BASE_IDX                                                         2

#endif
