/***************************************************************************
 *     Copyright (c) 1999-2009, Broadcom Corporation
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 *
 * Module Description:
 *                     DO NOT EDIT THIS FILE DIRECTLY
 *
 * This module was generated magically with RDB from a source description
 * file. You must edit the source file for changes to be made to this file.
 *
 *
 * Date:           Generated on         Tue Nov 17 18:21:08 2009
 *                 MD5 Checksum         c5a869a181cd53ce96d34b0e7ab357f3
 *
 * Compiled with:  RDB Utility          combo_header.pl
 *                 RDB Parser           3.0
 *                 unknown              unknown
 *                 Perl Interpreter     5.008008
 *                 Operating System     linux
 *
 * Revision History:
 *
 * $brcm_Log: /magnum/basemodules/chp/7420/rdb/c0/bchp_memc_arb_1.h $
 * 
 * Hydra_Software_Devel/1   11/17/09 9:26p albertl
 * SW7420-455: Initial revision.
 *
 ***************************************************************************/

#ifndef BCHP_MEMC_ARB_1_H__
#define BCHP_MEMC_ARB_1_H__

/***************************************************************************
 *MEMC_ARB_1 - Memory Controller Arbitration & Client Info Registers 1
 ***************************************************************************/
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER 0x003c1000 /* MEMC CORE and IOBUF Interface Debug Register */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0            0x003c1004 /* Client Programming register for client 0. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1            0x003c1008 /* Client Programming register for client 1. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2            0x003c100c /* Client Programming register for client 2. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3            0x003c1010 /* Client Programming register for client 3. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4            0x003c1014 /* Client Programming register for client 4. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5            0x003c1018 /* Client Programming register for client 5. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6            0x003c101c /* Client Programming register for client 6. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7            0x003c1020 /* Client Programming register for client 7. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8            0x003c1024 /* Client Programming register for client 8. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9            0x003c1028 /* Client Programming register for client 9. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10           0x003c102c /* Client Programming register for client 10. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11           0x003c1030 /* Client Programming register for client 11. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12           0x003c1034 /* Client Programming register for client 12. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13           0x003c1038 /* Client Programming register for client 13. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14           0x003c103c /* Client Programming register for client 14. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15           0x003c1040 /* Client Programming register for client 15. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16           0x003c1044 /* Client Programming register for client 16. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17           0x003c1048 /* Client Programming register for client 17. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18           0x003c104c /* Client Programming register for client 18. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19           0x003c1050 /* Client Programming register for client 19. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20           0x003c1054 /* Client Programming register for client 20. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21           0x003c1058 /* Client Programming register for client 21. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22           0x003c105c /* Client Programming register for client 22. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23           0x003c1060 /* Client Programming register for client 23. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24           0x003c1064 /* Client Programming register for client 24. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25           0x003c1068 /* Client Programming register for client 25. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26           0x003c106c /* Client Programming register for client 26. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27           0x003c1070 /* Client Programming register for client 27. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28           0x003c1074 /* Client Programming register for client 28. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29           0x003c1078 /* Client Programming register for client 29. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30           0x003c107c /* Client Programming register for client 30. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31           0x003c1080 /* Client Programming register for client 31. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32           0x003c1084 /* Client Programming register for client 32. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33           0x003c1088 /* Client Programming register for client 33. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34           0x003c108c /* Client Programming register for client 34. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35           0x003c1090 /* Client Programming register for client 35. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36           0x003c1094 /* Client Programming register for client 36. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37           0x003c1098 /* Client Programming register for client 37. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38           0x003c109c /* Client Programming register for client 38. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39           0x003c10a0 /* Client Programming register for client 39. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40           0x003c10a4 /* Client Programming register for client 40. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41           0x003c10a8 /* Client Programming register for client 41. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42           0x003c10ac /* Client Programming register for client 42. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43           0x003c10b0 /* Client Programming register for client 43. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44           0x003c10b4 /* Client Programming register for client 44. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45           0x003c10b8 /* Client Programming register for client 45. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46           0x003c10bc /* Client Programming register for client 46. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47           0x003c10c0 /* Client Programming register for client 47. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48           0x003c10c4 /* Client Programming register for client 48. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49           0x003c10c8 /* Client Programming register for client 49. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50           0x003c10cc /* Client Programming register for client 50. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51           0x003c10d0 /* Client Programming register for client 51. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52           0x003c10d4 /* Client Programming register for client 52. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53           0x003c10d8 /* Client Programming register for client 53. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54           0x003c10dc /* Client Programming register for client 54. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55           0x003c10e0 /* Client Programming register for client 55. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56           0x003c10e4 /* Client Programming register for client 56. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57           0x003c10e8 /* Client Programming register for client 57. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58           0x003c10ec /* Client Programming register for client 58. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59           0x003c10f0 /* Client Programming register for client 59. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60           0x003c10f4 /* Client Programming register for client 60. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61           0x003c10f8 /* Client Programming register for client 61. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62           0x003c10fc /* Client Programming register for client 62. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63           0x003c1100 /* Client Programming register for client 63. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64           0x003c1104 /* Client Programming register for client 64. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65           0x003c1108 /* Client Programming register for client 65. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66           0x003c110c /* Client Programming register for client 66. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67           0x003c1110 /* Client Programming register for client 67. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68           0x003c1114 /* Client Programming register for client 68. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69           0x003c1118 /* Client Programming register for client 69. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70           0x003c111c /* Client Programming register for client 70. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71           0x003c1120 /* Client Programming register for client 71. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72           0x003c1124 /* Client Programming register for client 72. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73           0x003c1128 /* Client Programming register for client 73. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74           0x003c112c /* Client Programming register for client 74. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75           0x003c1130 /* Client Programming register for client 75. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76           0x003c1134 /* Client Programming register for client 76. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77           0x003c1138 /* Client Programming register for client 77. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78           0x003c113c /* Client Programming register for client 78. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79           0x003c1140 /* Client Programming register for client 79. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80           0x003c1144 /* Client Programming register for client 80. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81           0x003c1148 /* Client Programming register for client 81. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82           0x003c114c /* Client Programming register for client 82. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83           0x003c1150 /* Client Programming register for client 83. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84           0x003c1154 /* Client Programming register for client 84. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85           0x003c1158 /* Client Programming register for client 85. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86           0x003c115c /* Client Programming register for client 86. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87           0x003c1160 /* Client Programming register for client 87. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88           0x003c1164 /* Client Programming register for client 88. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89           0x003c1168 /* Client Programming register for client 89. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90           0x003c116c /* Client Programming register for client 90. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91           0x003c1170 /* Client Programming register for client 91. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92           0x003c1174 /* Client Programming register for client 92. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93           0x003c1178 /* Client Programming register for client 93. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94           0x003c117c /* Client Programming register for client 94. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95           0x003c1180 /* Client Programming register for client 95. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96           0x003c1184 /* Client Programming register for client 96. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97           0x003c1188 /* Client Programming register for client 97. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98           0x003c118c /* Client Programming register for client 98. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99           0x003c1190 /* Client Programming register for client 99. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100          0x003c1194 /* Client Programming register for client 100. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101          0x003c1198 /* Client Programming register for client 101. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102          0x003c119c /* Client Programming register for client 102. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103          0x003c11a0 /* Client Programming register for client 103. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104          0x003c11a4 /* Client Programming register for client 104. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105          0x003c11a8 /* Client Programming register for client 105. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106          0x003c11ac /* Client Programming register for client 106. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107          0x003c11b0 /* Client Programming register for client 107. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108          0x003c11b4 /* Client Programming register for client 108. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109          0x003c11b8 /* Client Programming register for client 109. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110          0x003c11bc /* Client Programming register for client 110. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111          0x003c11c0 /* Client Programming register for client 111. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112          0x003c11c4 /* Client Programming register for client 112. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113          0x003c11c8 /* Client Programming register for client 113. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114          0x003c11cc /* Client Programming register for client 114. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115          0x003c11d0 /* Client Programming register for client 115. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116          0x003c11d4 /* Client Programming register for client 116. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117          0x003c11d8 /* Client Programming register for client 117. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118          0x003c11dc /* Client Programming register for client 118. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119          0x003c11e0 /* Client Programming register for client 119. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120          0x003c11e4 /* Client Programming register for client 120. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121          0x003c11e8 /* Client Programming register for client 121. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122          0x003c11ec /* Client Programming register for client 122. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123          0x003c11f0 /* Client Programming register for client 123. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124          0x003c11f4 /* Client Programming register for client 124. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125          0x003c11f8 /* Client Programming register for client 125. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126          0x003c11fc /* Client Programming register for client 126. */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127          0x003c1200 /* Client Programming register for client 127 */
#define BCHP_MEMC_ARB_1_REQ_MASK_0               0x003c1204 /* Request Mask register for Clients 0 to 31 */
#define BCHP_MEMC_ARB_1_REQ_MASK_1               0x003c1208 /* Request Mask register for Clients 32 to 63 */
#define BCHP_MEMC_ARB_1_REQ_MASK_2               0x003c120c /* Request Mask register for Clients 64 to 95 */
#define BCHP_MEMC_ARB_1_REQ_MASK_3               0x003c1210 /* Request Mask register for Clients 96 to 127 */
#define BCHP_MEMC_ARB_1_ARB_WINNER               0x003c1214 /* SCB-Arbitration Winner. */
#define BCHP_MEMC_ARB_1_RTS_ERR_0                0x003c1218 /* RTS Deadline miss register for Clients 0 to 31 */
#define BCHP_MEMC_ARB_1_RTS_ERR_1                0x003c121c /* RTS Deadline miss register for Clients 32 to 63 */
#define BCHP_MEMC_ARB_1_RTS_ERR_2                0x003c1220 /* RTS Deadline miss register for Clients 64 to 95 */
#define BCHP_MEMC_ARB_1_RTS_ERR_3                0x003c1224 /* RTS Deadline miss register for Clients 96 to 127 */
#define BCHP_MEMC_ARB_1_FULLNESS_THRESHOLD       0x003c1228 /* Arbiter fullness threshold register */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE     0x003c122c /* Minimum command size register */
#define BCHP_MEMC_ARB_1_RTS_ERR_INFO_WRITE_CLEAR 0x003c1230 /* MEMC RTS_ERR_INFO write clear register */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER 0x003c1234 /* MEMC SCB Interface and Arbiter State Machine and FIFO Debug Register */
#define BCHP_MEMC_ARB_1_SPARE_1                  0x003c1238 /* Spare Register 1 . */
#define BCHP_MEMC_ARB_1_SPARE_2                  0x003c123c /* Spare Register 2 . */
#define BCHP_MEMC_ARB_1_SPARE_RO_1               0x003c1240 /* Read only Spare Register 1 . */
#define BCHP_MEMC_ARB_1_SPARE_RO_2               0x003c1244 /* Read only Spare Register 2 . */

/***************************************************************************
 *ANALOG_PHY_DEBUG_REGISTER - MEMC CORE and IOBUF Interface Debug Register
 ***************************************************************************/
/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: reserved0 [31:08] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_reserved0_MASK   0xffffff00
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_reserved0_SHIFT  8

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: PMC2MEMC_BSP_RDY [07:07] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_PMC2MEMC_BSP_RDY_MASK 0x00000080
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_PMC2MEMC_BSP_RDY_SHIFT 7

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: PHY2CORE_INIT_RDY [06:06] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_PHY2CORE_INIT_RDY_MASK 0x00000040
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_PHY2CORE_INIT_RDY_SHIFT 6

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: PHY2CORE_POWERDOWN_RDY [05:05] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_PHY2CORE_POWERDOWN_RDY_MASK 0x00000020
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_PHY2CORE_POWERDOWN_RDY_SHIFT 5

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: IO2C_CMD_DATA_FIFO_FULL [04:04] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_IO2C_CMD_DATA_FIFO_FULL_MASK 0x00000010
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_IO2C_CMD_DATA_FIFO_FULL_SHIFT 4

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: IO2C_RD_DATA_FIFO_EMPTY [03:03] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_IO2C_RD_DATA_FIFO_EMPTY_MASK 0x00000008
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_IO2C_RD_DATA_FIFO_EMPTY_SHIFT 3

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: C2IO_CMD_DATA_FIFO_PUSH [02:02] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_C2IO_CMD_DATA_FIFO_PUSH_MASK 0x00000004
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_C2IO_CMD_DATA_FIFO_PUSH_SHIFT 2

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: DRAM_RD_DATA_FIFO_POP [01:01] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_DRAM_RD_DATA_FIFO_POP_MASK 0x00000002
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_DRAM_RD_DATA_FIFO_POP_SHIFT 1

/* MEMC_ARB_1 :: ANALOG_PHY_DEBUG_REGISTER :: CORE2PHY_PLL_DLL_SHUTDOWN_REQ [00:00] */
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_CORE2PHY_PLL_DLL_SHUTDOWN_REQ_MASK 0x00000001
#define BCHP_MEMC_ARB_1_ANALOG_PHY_DEBUG_REGISTER_CORE2PHY_PLL_DLL_SHUTDOWN_REQ_SHIFT 0

/***************************************************************************
 *CLIENT_INFO_0 - Client Programming register for client 0.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_0 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_0 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_0 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_0 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_0_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_1 - Client Programming register for client 1.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_1 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_1 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_1 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_1 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_1_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_2 - Client Programming register for client 2.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_2 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_2 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_2 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_2 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_2_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_3 - Client Programming register for client 3.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_3 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_3 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_3 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_3 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_3_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_4 - Client Programming register for client 4.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_4 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_4 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_4 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_4 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_4_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_5 - Client Programming register for client 5.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_5 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_5 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_5 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_5 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_5_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_6 - Client Programming register for client 6.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_6 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_6 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_6 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_6 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_6_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_7 - Client Programming register for client 7.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_7 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_7 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_7 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_7 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_7_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_8 - Client Programming register for client 8.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_8 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_8 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_8 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_8 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_8_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_9 - Client Programming register for client 9.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_9 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_reserved0_MASK               0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_reserved0_SHIFT              21

/* MEMC_ARB_1 :: CLIENT_INFO_9 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_BO_VAL_MASK                  0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_BO_VAL_SHIFT                 8

/* MEMC_ARB_1 :: CLIENT_INFO_9 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_RR_EN_MASK                   0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_RR_EN_SHIFT                  7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_RR_EN_DISABLED               0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_RR_EN_ENABLED                1

/* MEMC_ARB_1 :: CLIENT_INFO_9 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_PR_TAG_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_9_PR_TAG_SHIFT                 0

/***************************************************************************
 *CLIENT_INFO_10 - Client Programming register for client 10.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_10 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_10 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_10 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_10 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_10_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_11 - Client Programming register for client 11.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_11 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_11 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_11 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_11 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_11_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_12 - Client Programming register for client 12.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_12 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_12 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_12 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_12 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_12_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_13 - Client Programming register for client 13.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_13 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_13 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_13 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_13 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_13_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_14 - Client Programming register for client 14.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_14 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_14 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_14 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_14 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_14_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_15 - Client Programming register for client 15.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_15 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_15 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_15 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_15 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_15_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_16 - Client Programming register for client 16.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_16 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_16 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_16 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_16 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_16_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_17 - Client Programming register for client 17.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_17 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_17 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_17 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_17 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_17_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_18 - Client Programming register for client 18.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_18 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_18 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_18 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_18 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_18_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_19 - Client Programming register for client 19.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_19 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_19 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_19 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_19 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_19_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_20 - Client Programming register for client 20.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_20 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_20 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_20 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_20 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_20_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_21 - Client Programming register for client 21.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_21 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_21 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_21 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_21 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_21_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_22 - Client Programming register for client 22.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_22 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_22 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_22 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_22 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_22_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_23 - Client Programming register for client 23.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_23 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_23 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_23 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_23 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_23_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_24 - Client Programming register for client 24.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_24 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_24 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_24 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_24 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_24_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_25 - Client Programming register for client 25.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_25 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_25 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_25 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_25 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_25_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_26 - Client Programming register for client 26.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_26 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_26 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_26 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_26 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_26_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_27 - Client Programming register for client 27.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_27 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_27 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_27 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_27 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_27_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_28 - Client Programming register for client 28.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_28 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_28 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_28 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_28 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_28_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_29 - Client Programming register for client 29.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_29 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_29 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_29 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_29 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_29_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_30 - Client Programming register for client 30.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_30 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_30 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_30 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_30 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_30_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_31 - Client Programming register for client 31.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_31 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_31 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_31 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_31 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_31_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_32 - Client Programming register for client 32.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_32 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_32 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_32 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_32 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_32_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_33 - Client Programming register for client 33.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_33 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_33 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_33 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_33 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_33_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_34 - Client Programming register for client 34.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_34 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_34 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_34 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_34 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_34_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_35 - Client Programming register for client 35.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_35 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_35 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_35 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_35 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_35_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_36 - Client Programming register for client 36.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_36 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_36 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_36 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_36 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_36_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_37 - Client Programming register for client 37.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_37 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_37 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_37 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_37 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_37_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_38 - Client Programming register for client 38.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_38 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_38 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_38 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_38 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_38_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_39 - Client Programming register for client 39.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_39 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_39 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_39 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_39 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_39_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_40 - Client Programming register for client 40.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_40 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_40 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_40 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_40 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_40_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_41 - Client Programming register for client 41.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_41 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_41 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_41 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_41 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_41_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_42 - Client Programming register for client 42.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_42 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_42 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_42 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_42 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_42_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_43 - Client Programming register for client 43.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_43 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_43 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_43 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_43 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_43_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_44 - Client Programming register for client 44.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_44 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_44 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_44 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_44 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_44_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_45 - Client Programming register for client 45.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_45 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_45 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_45 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_45 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_45_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_46 - Client Programming register for client 46.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_46 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_46 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_46 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_46 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_46_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_47 - Client Programming register for client 47.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_47 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_47 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_47 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_47 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_47_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_48 - Client Programming register for client 48.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_48 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_48 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_48 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_48 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_48_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_49 - Client Programming register for client 49.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_49 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_49 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_49 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_49 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_49_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_50 - Client Programming register for client 50.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_50 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_50 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_50 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_50 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_50_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_51 - Client Programming register for client 51.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_51 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_51 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_51 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_51 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_51_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_52 - Client Programming register for client 52.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_52 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_52 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_52 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_52 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_52_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_53 - Client Programming register for client 53.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_53 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_53 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_53 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_53 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_53_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_54 - Client Programming register for client 54.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_54 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_54 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_54 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_54 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_54_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_55 - Client Programming register for client 55.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_55 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_55 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_55 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_55 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_55_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_56 - Client Programming register for client 56.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_56 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_56 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_56 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_56 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_56_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_57 - Client Programming register for client 57.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_57 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_57 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_57 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_57 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_57_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_58 - Client Programming register for client 58.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_58 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_58 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_58 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_58 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_58_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_59 - Client Programming register for client 59.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_59 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_59 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_59 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_59 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_59_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_60 - Client Programming register for client 60.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_60 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_60 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_60 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_60 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_60_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_61 - Client Programming register for client 61.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_61 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_61 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_61 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_61 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_61_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_62 - Client Programming register for client 62.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_62 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_62 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_62 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_62 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_62_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_63 - Client Programming register for client 63.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_63 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_63 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_63 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_63 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_63_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_64 - Client Programming register for client 64.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_64 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_64 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_64 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_64 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_64_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_65 - Client Programming register for client 65.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_65 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_65 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_65 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_65 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_65_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_66 - Client Programming register for client 66.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_66 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_66 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_66 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_66 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_66_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_67 - Client Programming register for client 67.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_67 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_67 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_67 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_67 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_67_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_68 - Client Programming register for client 68.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_68 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_68 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_68 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_68 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_68_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_69 - Client Programming register for client 69.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_69 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_69 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_69 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_69 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_69_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_70 - Client Programming register for client 70.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_70 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_70 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_70 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_70 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_70_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_71 - Client Programming register for client 71.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_71 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_71 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_71 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_71 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_71_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_72 - Client Programming register for client 72.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_72 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_72 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_72 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_72 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_72_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_73 - Client Programming register for client 73.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_73 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_73 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_73 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_73 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_73_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_74 - Client Programming register for client 74.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_74 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_74 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_74 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_74 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_74_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_75 - Client Programming register for client 75.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_75 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_75 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_75 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_75 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_75_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_76 - Client Programming register for client 76.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_76 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_76 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_76 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_76 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_76_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_77 - Client Programming register for client 77.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_77 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_77 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_77 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_77 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_77_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_78 - Client Programming register for client 78.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_78 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_78 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_78 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_78 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_78_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_79 - Client Programming register for client 79.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_79 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_79 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_79 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_79 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_79_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_80 - Client Programming register for client 80.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_80 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_80 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_80 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_80 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_80_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_81 - Client Programming register for client 81.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_81 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_81 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_81 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_81 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_81_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_82 - Client Programming register for client 82.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_82 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_82 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_82 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_82 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_82_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_83 - Client Programming register for client 83.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_83 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_83 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_83 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_83 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_83_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_84 - Client Programming register for client 84.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_84 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_84 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_84 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_84 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_84_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_85 - Client Programming register for client 85.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_85 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_85 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_85 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_85 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_85_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_86 - Client Programming register for client 86.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_86 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_86 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_86 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_86 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_86_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_87 - Client Programming register for client 87.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_87 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_87 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_87 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_87 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_87_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_88 - Client Programming register for client 88.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_88 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_88 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_88 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_88 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_88_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_89 - Client Programming register for client 89.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_89 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_89 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_89 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_89 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_89_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_90 - Client Programming register for client 90.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_90 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_90 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_90 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_90 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_90_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_91 - Client Programming register for client 91.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_91 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_91 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_91 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_91 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_91_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_92 - Client Programming register for client 92.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_92 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_92 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_92 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_92 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_92_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_93 - Client Programming register for client 93.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_93 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_93 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_93 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_93 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_93_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_94 - Client Programming register for client 94.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_94 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_94 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_94 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_94 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_94_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_95 - Client Programming register for client 95.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_95 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_95 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_95 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_95 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_95_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_96 - Client Programming register for client 96.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_96 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_96 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_96 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_96 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_96_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_97 - Client Programming register for client 97.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_97 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_97 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_97 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_97 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_97_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_98 - Client Programming register for client 98.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_98 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_98 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_98 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_98 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_98_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_99 - Client Programming register for client 99.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_99 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_reserved0_MASK              0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_reserved0_SHIFT             21

/* MEMC_ARB_1 :: CLIENT_INFO_99 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_BO_VAL_MASK                 0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_BO_VAL_SHIFT                8

/* MEMC_ARB_1 :: CLIENT_INFO_99 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_RR_EN_MASK                  0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_RR_EN_SHIFT                 7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_RR_EN_DISABLED              0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_RR_EN_ENABLED               1

/* MEMC_ARB_1 :: CLIENT_INFO_99 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_PR_TAG_MASK                 0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_99_PR_TAG_SHIFT                0

/***************************************************************************
 *CLIENT_INFO_100 - Client Programming register for client 100.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_100 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_100 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_100 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_100 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_100_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_101 - Client Programming register for client 101.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_101 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_101 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_101 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_101 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_101_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_102 - Client Programming register for client 102.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_102 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_102 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_102 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_102 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_102_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_103 - Client Programming register for client 103.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_103 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_103 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_103 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_103 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_103_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_104 - Client Programming register for client 104.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_104 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_104 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_104 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_104 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_104_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_105 - Client Programming register for client 105.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_105 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_105 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_105 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_105 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_105_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_106 - Client Programming register for client 106.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_106 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_106 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_106 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_106 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_106_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_107 - Client Programming register for client 107.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_107 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_107 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_107 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_107 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_107_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_108 - Client Programming register for client 108.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_108 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_108 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_108 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_108 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_108_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_109 - Client Programming register for client 109.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_109 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_109 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_109 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_109 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_109_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_110 - Client Programming register for client 110.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_110 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_110 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_110 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_110 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_110_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_111 - Client Programming register for client 111.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_111 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_111 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_111 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_111 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_111_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_112 - Client Programming register for client 112.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_112 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_112 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_112 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_112 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_112_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_113 - Client Programming register for client 113.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_113 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_113 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_113 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_113 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_113_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_114 - Client Programming register for client 114.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_114 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_114 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_114 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_114 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_114_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_115 - Client Programming register for client 115.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_115 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_115 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_115 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_115 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_115_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_116 - Client Programming register for client 116.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_116 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_116 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_116 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_116 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_116_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_117 - Client Programming register for client 117.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_117 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_117 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_117 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_117 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_117_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_118 - Client Programming register for client 118.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_118 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_118 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_118 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_118 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_118_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_119 - Client Programming register for client 119.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_119 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_119 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_119 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_119 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_119_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_120 - Client Programming register for client 120.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_120 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_120 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_120 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_120 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_120_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_121 - Client Programming register for client 121.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_121 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_121 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_121 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_121 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_121_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_122 - Client Programming register for client 122.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_122 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_122 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_122 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_122 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_122_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_123 - Client Programming register for client 123.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_123 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_123 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_123 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_123 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_123_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_124 - Client Programming register for client 124.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_124 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_124 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_124 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_124 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_124_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_125 - Client Programming register for client 125.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_125 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_125 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_125 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_125 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_125_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_126 - Client Programming register for client 126.
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_126 :: reserved0 [31:21] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_reserved0_MASK             0xffe00000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_reserved0_SHIFT            21

/* MEMC_ARB_1 :: CLIENT_INFO_126 :: BO_VAL [20:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_BO_VAL_MASK                0x001fff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_BO_VAL_SHIFT               8

/* MEMC_ARB_1 :: CLIENT_INFO_126 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_126 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_126_PR_TAG_SHIFT               0

/***************************************************************************
 *CLIENT_INFO_127 - Client Programming register for client 127
 ***************************************************************************/
/* MEMC_ARB_1 :: CLIENT_INFO_127 :: reserved0 [31:26] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_reserved0_MASK             0xfc000000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_reserved0_SHIFT            26

/* MEMC_ARB_1 :: CLIENT_INFO_127 :: REF_CLUST [25:24] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_CLUST_MASK             0x03000000
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_CLUST_SHIFT            24
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_CLUST_NO_CLUSTER       0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_CLUST_CLUSTER_TWO      1
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_CLUST_CLUSTER_FOUR     2

/* MEMC_ARB_1 :: CLIENT_INFO_127 :: REF_PRD [23:08] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_PRD_MASK               0x00ffff00
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_REF_PRD_SHIFT              8

/* MEMC_ARB_1 :: CLIENT_INFO_127 :: RR_EN [07:07] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_RR_EN_MASK                 0x00000080
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_RR_EN_SHIFT                7
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_RR_EN_DISABLED             0
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_RR_EN_ENABLED              1

/* MEMC_ARB_1 :: CLIENT_INFO_127 :: PR_TAG [06:00] */
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_PR_TAG_MASK                0x0000007f
#define BCHP_MEMC_ARB_1_CLIENT_INFO_127_PR_TAG_SHIFT               0

/***************************************************************************
 *REQ_MASK_0 - Request Mask register for Clients 0 to 31
 ***************************************************************************/
/* MEMC_ARB_1 :: REQ_MASK_0 :: MASK [31:00] */
#define BCHP_MEMC_ARB_1_REQ_MASK_0_MASK_MASK                       0xffffffff
#define BCHP_MEMC_ARB_1_REQ_MASK_0_MASK_SHIFT                      0
#define BCHP_MEMC_ARB_1_REQ_MASK_0_MASK_UNMASK                     0

/***************************************************************************
 *REQ_MASK_1 - Request Mask register for Clients 32 to 63
 ***************************************************************************/
/* MEMC_ARB_1 :: REQ_MASK_1 :: MASK [31:00] */
#define BCHP_MEMC_ARB_1_REQ_MASK_1_MASK_MASK                       0xffffffff
#define BCHP_MEMC_ARB_1_REQ_MASK_1_MASK_SHIFT                      0
#define BCHP_MEMC_ARB_1_REQ_MASK_1_MASK_UNMASK                     0

/***************************************************************************
 *REQ_MASK_2 - Request Mask register for Clients 64 to 95
 ***************************************************************************/
/* MEMC_ARB_1 :: REQ_MASK_2 :: MASK [31:00] */
#define BCHP_MEMC_ARB_1_REQ_MASK_2_MASK_MASK                       0xffffffff
#define BCHP_MEMC_ARB_1_REQ_MASK_2_MASK_SHIFT                      0
#define BCHP_MEMC_ARB_1_REQ_MASK_2_MASK_UNMASK                     0

/***************************************************************************
 *REQ_MASK_3 - Request Mask register for Clients 96 to 127
 ***************************************************************************/
/* MEMC_ARB_1 :: REQ_MASK_3 :: MASK [31:00] */
#define BCHP_MEMC_ARB_1_REQ_MASK_3_MASK_MASK                       0xffffffff
#define BCHP_MEMC_ARB_1_REQ_MASK_3_MASK_SHIFT                      0
#define BCHP_MEMC_ARB_1_REQ_MASK_3_MASK_UNMASK                     0

/***************************************************************************
 *ARB_WINNER - SCB-Arbitration Winner.
 ***************************************************************************/
/* MEMC_ARB_1 :: ARB_WINNER :: reserved0 [31:07] */
#define BCHP_MEMC_ARB_1_ARB_WINNER_reserved0_MASK                  0xffffff80
#define BCHP_MEMC_ARB_1_ARB_WINNER_reserved0_SHIFT                 7

/* MEMC_ARB_1 :: ARB_WINNER :: CLIENT_ID [06:00] */
#define BCHP_MEMC_ARB_1_ARB_WINNER_CLIENT_ID_MASK                  0x0000007f
#define BCHP_MEMC_ARB_1_ARB_WINNER_CLIENT_ID_SHIFT                 0

/***************************************************************************
 *RTS_ERR_0 - RTS Deadline miss register for Clients 0 to 31
 ***************************************************************************/
/* MEMC_ARB_1 :: RTS_ERR_0 :: CLIENT [31:00] */
#define BCHP_MEMC_ARB_1_RTS_ERR_0_CLIENT_MASK                      0xffffffff
#define BCHP_MEMC_ARB_1_RTS_ERR_0_CLIENT_SHIFT                     0
#define BCHP_MEMC_ARB_1_RTS_ERR_0_CLIENT_UNMASK                    0

/***************************************************************************
 *RTS_ERR_1 - RTS Deadline miss register for Clients 32 to 63
 ***************************************************************************/
/* MEMC_ARB_1 :: RTS_ERR_1 :: CLIENT [31:00] */
#define BCHP_MEMC_ARB_1_RTS_ERR_1_CLIENT_MASK                      0xffffffff
#define BCHP_MEMC_ARB_1_RTS_ERR_1_CLIENT_SHIFT                     0
#define BCHP_MEMC_ARB_1_RTS_ERR_1_CLIENT_UNMASK                    0

/***************************************************************************
 *RTS_ERR_2 - RTS Deadline miss register for Clients 64 to 95
 ***************************************************************************/
/* MEMC_ARB_1 :: RTS_ERR_2 :: CLIENT [31:00] */
#define BCHP_MEMC_ARB_1_RTS_ERR_2_CLIENT_MASK                      0xffffffff
#define BCHP_MEMC_ARB_1_RTS_ERR_2_CLIENT_SHIFT                     0
#define BCHP_MEMC_ARB_1_RTS_ERR_2_CLIENT_UNMASK                    0

/***************************************************************************
 *RTS_ERR_3 - RTS Deadline miss register for Clients 96 to 127
 ***************************************************************************/
/* MEMC_ARB_1 :: RTS_ERR_3 :: CLIENT [31:00] */
#define BCHP_MEMC_ARB_1_RTS_ERR_3_CLIENT_MASK                      0xffffffff
#define BCHP_MEMC_ARB_1_RTS_ERR_3_CLIENT_SHIFT                     0
#define BCHP_MEMC_ARB_1_RTS_ERR_3_CLIENT_UNMASK                    0

/***************************************************************************
 *FULLNESS_THRESHOLD - Arbiter fullness threshold register
 ***************************************************************************/
/* MEMC_ARB_1 :: FULLNESS_THRESHOLD :: reserved0 [31:06] */
#define BCHP_MEMC_ARB_1_FULLNESS_THRESHOLD_reserved0_MASK          0xffffffc0
#define BCHP_MEMC_ARB_1_FULLNESS_THRESHOLD_reserved0_SHIFT         6

/* MEMC_ARB_1 :: FULLNESS_THRESHOLD :: FULLNESS_THRESHOLD_VALUE [05:00] */
#define BCHP_MEMC_ARB_1_FULLNESS_THRESHOLD_FULLNESS_THRESHOLD_VALUE_MASK 0x0000003f
#define BCHP_MEMC_ARB_1_FULLNESS_THRESHOLD_FULLNESS_THRESHOLD_VALUE_SHIFT 0

/***************************************************************************
 *MINIMUM_COMMAND_SIZE - Minimum command size register
 ***************************************************************************/
/* MEMC_ARB_1 :: MINIMUM_COMMAND_SIZE :: reserved0 [31:22] */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_reserved0_MASK        0xffc00000
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_reserved0_SHIFT       22

/* MEMC_ARB_1 :: MINIMUM_COMMAND_SIZE :: MINIMUM_LMB_COMMAND_SIZE [21:16] */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_MINIMUM_LMB_COMMAND_SIZE_MASK 0x003f0000
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_MINIMUM_LMB_COMMAND_SIZE_SHIFT 16

/* MEMC_ARB_1 :: MINIMUM_COMMAND_SIZE :: reserved1 [15:14] */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_reserved1_MASK        0x0000c000
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_reserved1_SHIFT       14

/* MEMC_ARB_1 :: MINIMUM_COMMAND_SIZE :: MINIMUM_PFRI_COMMAND_SIZE [13:08] */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_MINIMUM_PFRI_COMMAND_SIZE_MASK 0x00003f00
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_MINIMUM_PFRI_COMMAND_SIZE_SHIFT 8

/* MEMC_ARB_1 :: MINIMUM_COMMAND_SIZE :: reserved2 [07:06] */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_reserved2_MASK        0x000000c0
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_reserved2_SHIFT       6

/* MEMC_ARB_1 :: MINIMUM_COMMAND_SIZE :: MINIMUM_SCB_COMMAND_SIZE [05:00] */
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_MINIMUM_SCB_COMMAND_SIZE_MASK 0x0000003f
#define BCHP_MEMC_ARB_1_MINIMUM_COMMAND_SIZE_MINIMUM_SCB_COMMAND_SIZE_SHIFT 0

/***************************************************************************
 *RTS_ERR_INFO_WRITE_CLEAR - MEMC RTS_ERR_INFO write clear register
 ***************************************************************************/
/* MEMC_ARB_1 :: RTS_ERR_INFO_WRITE_CLEAR :: reserved0 [31:01] */
#define BCHP_MEMC_ARB_1_RTS_ERR_INFO_WRITE_CLEAR_reserved0_MASK    0xfffffffe
#define BCHP_MEMC_ARB_1_RTS_ERR_INFO_WRITE_CLEAR_reserved0_SHIFT   1

/* MEMC_ARB_1 :: RTS_ERR_INFO_WRITE_CLEAR :: WRITE_CLEAR [00:00] */
#define BCHP_MEMC_ARB_1_RTS_ERR_INFO_WRITE_CLEAR_WRITE_CLEAR_MASK  0x00000001
#define BCHP_MEMC_ARB_1_RTS_ERR_INFO_WRITE_CLEAR_WRITE_CLEAR_SHIFT 0

/***************************************************************************
 *SCB_ARBITER_DEBUG_REGISTER - MEMC SCB Interface and Arbiter State Machine and FIFO Debug Register
 ***************************************************************************/
/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: reserved0 [31:30] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved0_MASK  0xc0000000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved0_SHIFT 30

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_RD_STATE [29:28] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_RD_STATE_MASK 0x30000000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_RD_STATE_SHIFT 28

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: reserved1 [27:26] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved1_MASK  0x0c000000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved1_SHIFT 26

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SS_WR_STRB_STATE [25:24] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SS_WR_STRB_STATE_MASK 0x03000000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SS_WR_STRB_STATE_SHIFT 24

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: reserved2 [23:21] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved2_MASK  0x00e00000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved2_SHIFT 21

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_LAST_WRITE_STATE [20:20] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_LAST_WRITE_STATE_MASK 0x00100000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_LAST_WRITE_STATE_SHIFT 20

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: reserved3 [19:17] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved3_MASK  0x000e0000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved3_SHIFT 17

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_WR_NATIVE_WORD_STATE [16:16] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_NATIVE_WORD_STATE_MASK 0x00010000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_NATIVE_WORD_STATE_SHIFT 16

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: reserved4 [15:14] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved4_MASK  0x0000c000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved4_SHIFT 14

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_WR_DATA_FIFO_FULL [13:13] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_DATA_FIFO_FULL_MASK 0x00002000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_DATA_FIFO_FULL_SHIFT 13

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_WR_DATA_FIFO_EMPTY [12:12] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_DATA_FIFO_EMPTY_MASK 0x00001000
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_DATA_FIFO_EMPTY_SHIFT 12

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_WR_MASK_FIFO_FULL [11:11] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_MASK_FIFO_FULL_MASK 0x00000800
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_MASK_FIFO_FULL_SHIFT 11

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_WR_MASK_FIFO_EMPTY [10:10] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_MASK_FIFO_EMPTY_MASK 0x00000400
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_WR_MASK_FIFO_EMPTY_SHIFT 10

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_CMD_FIFO_FULL [09:09] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_CMD_FIFO_FULL_MASK 0x00000200
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_CMD_FIFO_FULL_SHIFT 9

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: SCB_CMD_FIFO_EMPTY [08:08] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_CMD_FIFO_EMPTY_MASK 0x00000100
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_SCB_CMD_FIFO_EMPTY_SHIFT 8

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: reserved5 [07:03] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved5_MASK  0x000000f8
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_reserved5_SHIFT 3

/* MEMC_ARB_1 :: SCB_ARBITER_DEBUG_REGISTER :: ARB_STATE [02:00] */
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_ARB_STATE_MASK  0x00000007
#define BCHP_MEMC_ARB_1_SCB_ARBITER_DEBUG_REGISTER_ARB_STATE_SHIFT 0

/***************************************************************************
 *SPARE_1 - Spare Register 1 .
 ***************************************************************************/
/* MEMC_ARB_1 :: SPARE_1 :: SPARE [31:00] */
#define BCHP_MEMC_ARB_1_SPARE_1_SPARE_MASK                         0xffffffff
#define BCHP_MEMC_ARB_1_SPARE_1_SPARE_SHIFT                        0

/***************************************************************************
 *SPARE_2 - Spare Register 2 .
 ***************************************************************************/
/* MEMC_ARB_1 :: SPARE_2 :: SPARE [31:00] */
#define BCHP_MEMC_ARB_1_SPARE_2_SPARE_MASK                         0xffffffff
#define BCHP_MEMC_ARB_1_SPARE_2_SPARE_SHIFT                        0

/***************************************************************************
 *SPARE_RO_1 - Read only Spare Register 1 .
 ***************************************************************************/
/* MEMC_ARB_1 :: SPARE_RO_1 :: SPARE_RO [31:00] */
#define BCHP_MEMC_ARB_1_SPARE_RO_1_SPARE_RO_MASK                   0xffffffff
#define BCHP_MEMC_ARB_1_SPARE_RO_1_SPARE_RO_SHIFT                  0

/***************************************************************************
 *SPARE_RO_2 - Read only Spare Register 2 .
 ***************************************************************************/
/* MEMC_ARB_1 :: SPARE_RO_2 :: SPARE_RO [31:00] */
#define BCHP_MEMC_ARB_1_SPARE_RO_2_SPARE_RO_MASK                   0xffffffff
#define BCHP_MEMC_ARB_1_SPARE_RO_2_SPARE_RO_SHIFT                  0

#endif /* #ifndef BCHP_MEMC_ARB_1_H__ */

/* End of File */
