mv_ddr_regs.h 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (C) Marvell International Ltd. and its affiliates
  4. */
  5. #ifndef _MV_DDR_REGS_H
  6. #define _MV_DDR_REGS_H
  7. #define GLOB_CTRL_STATUS_REG 0x1030
  8. #define TRAINING_TRIGGER_OFFS 0
  9. #define TRAINING_TRIGGER_MASK 0x1
  10. #define TRAINING_TRIGGER_ENA 1
  11. #define TRAINING_DONE_OFFS 1
  12. #define TRAINING_DONE_MASK 0x1
  13. #define TRAINING_DONE_DONE 1
  14. #define TRAINING_DONE_NOT_DONE 0
  15. #define TRAINING_RESULT_OFFS 2
  16. #define TRAINING_RESULT_MASK 0x1
  17. #define TRAINING_RESULT_PASS 0
  18. #define TRAINING_RESULT_FAIL 1
  19. #define GENERAL_TRAINING_OPCODE_REG 0x1034
  20. #define OPCODE_REG0_BASE 0x1038
  21. #define OPCODE_REG0_REG(obj) (OPCODE_REG0_BASE + (obj) * 0x4)
  22. #define OPCODE_REG1_BASE 0x10b0
  23. #define OPCODE_REG1_REG(obj) (OPCODE_REG1_BASE + (obj) * 0x4)
  24. #define CAL_PHY_BASE 0x10c0
  25. #define CAL_PHY_REG(obj) (CAL_PHY_BASE + (obj) * 0x4)
  26. #define WL_DONE_CNTR_REF_REG 0x10f8
  27. #define ODPG_WR_RD_MODE_ENA_REG 0x10fc
  28. #define SDRAM_CFG_REG 0x1400
  29. #define REFRESH_OFFS 0
  30. #define REFRESH_MASK 0x3fff
  31. #define DRAM_TYPE_OFFS 14
  32. #define DRAM_TYPE_MASK 0x1
  33. #define BUS_IN_USE_OFFS 15
  34. #define BUS_IN_USE_MASK 0x1
  35. #define CPU_2DRAM_WR_BUFF_CUT_TH_OFFS 16
  36. #define CPU_2DRAM_WR_BUFF_CUT_TH_MASK 0x1
  37. #define REG_DIMM_OFFS 17
  38. #define REG_DIMM_MASK 0x1
  39. #define ECC_OFFS 18
  40. #define ECC_MASK 0x1
  41. #define IGNORE_ERRORS_OFFS 19
  42. #define IGNORE_ERRORS_MASK 0x1
  43. #define DRAM_TYPE_HIGH_OFFS 20
  44. #define DRAM_TYPE_HIGH_MASK 0x1
  45. #define SELF_REFRESH_MODE_OFFS 24
  46. #define SELF_REFRESH_MODE_MASK 0x1
  47. #define CPU_RD_PER_PROP_OFFS 25
  48. #define CPU_RD_PER_PROP_MASK 0x1
  49. #define DDR4_EMULATION_OFFS 26
  50. #define DDR4_EMULATION_MASK 0x1
  51. #define PHY_RF_RST_OFFS 27
  52. #define PHY_RF_RST_MASK 0x1
  53. #define PUP_RST_DIVIDER_OFFS 28
  54. #define PUP_RST_DIVIDER_MASK 0x1
  55. #define DATA_PUP_WR_RESET_OFFS 29
  56. #define DATA_PUP_WR_RESET_MASK 0x1
  57. #define DATA_PUP_RD_RESET_OFFS 30
  58. #define DATA_PUP_RD_RESET_MASK 0x1
  59. #define DATA_PUP_RD_RESET_ENA 0x0
  60. #define DATA_PUP_RD_RESET_DIS 0x1
  61. #define IO_BIST_OFFS 31
  62. #define DATA_PUP_RD_RESET_MASK 0x1
  63. #define DUNIT_CTRL_LOW_REG 0x1404
  64. #define SDRAM_TIMING_LOW_REG 0x1408
  65. #define SDRAM_TIMING_LOW_TRAS_OFFS 0
  66. #define SDRAM_TIMING_LOW_TRAS_MASK 0xf
  67. #define SDRAM_TIMING_LOW_TRCD_OFFS 4
  68. #define SDRAM_TIMING_LOW_TRCD_MASK 0xf
  69. #define SDRAM_TIMING_HIGH_TRCD_OFFS 22
  70. #define SDRAM_TIMING_HIGH_TRCD_MASK 0x1
  71. #define SDRAM_TIMING_LOW_TRP_OFFS 8
  72. #define SDRAM_TIMING_LOW_TRP_MASK 0xf
  73. #define SDRAM_TIMING_HIGH_TRP_OFFS 23
  74. #define SDRAM_TIMING_HIGH_TRP_MASK 0x1
  75. #define SDRAM_TIMING_LOW_TWR_OFFS 12
  76. #define SDRAM_TIMING_LOW_TWR_MASK 0xf
  77. #define SDRAM_TIMING_LOW_TWTR_OFFS 16
  78. #define SDRAM_TIMING_LOW_TWTR_MASK 0xf
  79. #define SDRAM_TIMING_LOW_TRAS_HIGH_OFFS 20
  80. #define SDRAM_TIMING_LOW_TRAS_HIGH_MASK 0x3
  81. #define SDRAM_TIMING_LOW_TRRD_OFFS 24
  82. #define SDRAM_TIMING_LOW_TRRD_MASK 0xf
  83. #define SDRAM_TIMING_LOW_TRTP_OFFS 28
  84. #define SDRAM_TIMING_LOW_TRTP_MASK 0xf
  85. #define SDRAM_TIMING_HIGH_REG 0x140c
  86. #define SDRAM_TIMING_HIGH_TRFC_OFFS 0
  87. #define SDRAM_TIMING_HIGH_TRFC_MASK 0x7f
  88. #define SDRAM_TIMING_HIGH_TR2R_OFFS 7
  89. #define SDRAM_TIMING_HIGH_TR2R_MASK 0x3
  90. #define SDRAM_TIMING_HIGH_TR2W_W2R_OFFS 9
  91. #define SDRAM_TIMING_HIGH_TR2W_W2R_MASK 0x3
  92. #define SDRAM_TIMING_HIGH_TW2W_OFFS 11
  93. #define SDRAM_TIMING_HIGH_TW2W_MASK 0x1f
  94. #define SDRAM_TIMING_HIGH_TRFC_HIGH_OFFS 16
  95. #define SDRAM_TIMING_HIGH_TRFC_HIGH_MASK 0x7
  96. #define SDRAM_TIMING_HIGH_TR2R_HIGH_OFFS 19
  97. #define SDRAM_TIMING_HIGH_TR2R_HIGH_MASK 0x7
  98. #define SDRAM_TIMING_HIGH_TR2W_W2R_HIGH_OFFS 22
  99. #define SDRAM_TIMING_HIGH_TR2W_W2R_HIGH_MASK 0x7
  100. #define SDRAM_TIMING_HIGH_TMOD_OFFS 25
  101. #define SDRAM_TIMING_HIGH_TMOD_MASK 0xf
  102. #define SDRAM_TIMING_HIGH_TMOD_HIGH_OFFS 30
  103. #define SDRAM_TIMING_HIGH_TMOD_HIGH_MASK 0x3
  104. #define SDRAM_ADDR_CTRL_REG 0x1410
  105. #define CS_STRUCT_BASE 0
  106. #define CS_STRUCT_OFFS(cs) (CS_STRUCT_BASE + (cs) * 4)
  107. #define CS_STRUCT_MASK 0x3
  108. #define CS_SIZE_BASE 2
  109. #define CS_SIZE_OFFS(cs) (CS_SIZE_BASE + (cs) * 4)
  110. #define CS_SIZE_MASK 0x3
  111. #define CS_SIZE_HIGH_BASE 20
  112. #define CS_SIZE_HIGH_OFFS(cs) (CS_SIZE_HIGH_BASE + (cs))
  113. #define CS_SIZE_HIGH_MASK 0x1
  114. #define T_FAW_OFFS 24
  115. #define T_FAW_MASK 0x7f
  116. #define SDRAM_OPEN_PAGES_CTRL_REG 0x1414
  117. #define SDRAM_OP_REG 0x1418
  118. #define SDRAM_OP_CMD_OFFS 0
  119. #define SDRAM_OP_CMD_MASK 0x1f
  120. #define SDRAM_OP_CMD_CS_BASE 8
  121. #define SDRAM_OP_CMD_CS_OFFS(cs) (SDRAM_OP_CMD_CS_BASE + (cs))
  122. #define SDRAM_OP_CMD_CS_MASK 0x1
  123. enum {
  124. CMD_NORMAL,
  125. CMD_PRECHARGE,
  126. CMD_REFRESH,
  127. CMD_DDR3_DDR4_MR0,
  128. CMD_DDR3_DDR4_MR1,
  129. CMD_NOP,
  130. CMD_RES_0X6,
  131. CMD_SELFREFRESH,
  132. CMD_DDR3_DDR4_MR2,
  133. CMD_DDR3_DDR4_MR3,
  134. CMD_ACT_PDE,
  135. CMD_PRE_PDE,
  136. CMD_ZQCL,
  137. CMD_ZQCS,
  138. CMD_CWA,
  139. CMD_RES_0XF,
  140. CMD_DDR4_MR4,
  141. CMD_DDR4_MR5,
  142. CMD_DDR4_MR6,
  143. DDR4_MPR_WR
  144. };
  145. #define DUNIT_CTRL_HIGH_REG 0x1424
  146. #define CPU_INTERJECTION_ENA_OFFS 3
  147. #define CPU_INTERJECTION_ENA_MASK 0x1
  148. #define CPU_INTERJECTION_ENA_SPLIT_ENA 0
  149. #define CPU_INTERJECTION_ENA_SPLIT_DIS 1
  150. #define DDR_ODT_TIMING_LOW_REG 0x1428
  151. #define DDR_TIMING_REG 0x142c
  152. #define DDR_TIMING_TCCD_OFFS 18
  153. #define DDR_TIMING_TCCD_MASK 0x7
  154. #define DDR_TIMING_TPD_OFFS 0
  155. #define DDR_TIMING_TPD_MASK 0xf
  156. #define DDR_TIMING_TXPDLL_OFFS 4
  157. #define DDR_TIMING_TXPDLL_MASK 0x1f
  158. #define DDR_ODT_TIMING_HIGH_REG 0x147c
  159. #define SDRAM_INIT_CTRL_REG 0x1480
  160. #define DRAM_RESET_MASK_OFFS 1
  161. #define DRAM_RESET_MASK_MASK 0x1
  162. #define DRAM_RESET_MASK_NORMAL 0
  163. #define DRAM_RESET_MASK_MASKED 1
  164. #define SDRAM_ODT_CTRL_HIGH_REG 0x1498
  165. #define DUNIT_ODT_CTRL_REG 0x149c
  166. #define RD_BUFFER_SEL_REG 0x14a4
  167. #define AXI_CTRL_REG 0x14a8
  168. #define DUNIT_MMASK_REG 0x14b0
  169. #define HORZ_SSTL_CAL_MACH_CTRL_REG 0x14c8
  170. #define HORZ_POD_CAL_MACH_CTRL_REG 0x17c8
  171. #define VERT_SSTL_CAL_MACH_CTRL_REG 0x1dc8
  172. #define VERT_POD_CAL_MACH_CTRL_REG 0x1ec8
  173. #define MAIN_PADS_CAL_MACH_CTRL_REG 0x14cc
  174. #define DYN_PADS_CAL_ENABLE_OFFS 0
  175. #define DYN_PADS_CAL_ENABLE_MASK 0x1
  176. #define DYN_PADS_CAL_ENABLE_DIS 0
  177. #define DYN_PADS_CAL_ENABLE_ENA 1
  178. #define PADS_RECAL_OFFS 1
  179. #define PADS_RECAL_MASK 0x1
  180. #define DYN_PADS_CAL_BLOCK_OFFS 2
  181. #define DYN_PADS_CAL_BLOCK_MASK 0x1
  182. #define CAL_UPDATE_CTRL_OFFS 3
  183. #define CAL_UPDATE_CTRL_MASK 0x3
  184. #define CAL_UPDATE_CTRL_INT 1
  185. #define CAL_UPDATE_CTRL_EXT 2
  186. #define DYN_PADS_CAL_CNTR_OFFS 13
  187. #define DYN_PADS_CAL_CNTR_MASK 0x3ffff
  188. #define CAL_MACH_STATUS_OFFS 31
  189. #define CAL_MACH_STATUS_MASK 0x1
  190. #define CAL_MACH_BUSY 0
  191. #define CAL_MACH_RDY 1
  192. #define DRAM_DLL_TIMING_REG 0x14e0
  193. #define DRAM_ZQ_INIT_TIMIMG_REG 0x14e4
  194. #define DRAM_ZQ_TIMING_REG 0x14e8
  195. #define DRAM_LONG_TIMING_REG 0x14ec
  196. #define DDR4_TRRD_L_OFFS 0
  197. #define DDR4_TRRD_L_MASK 0xf
  198. #define DDR4_TWTR_L_OFFS 4
  199. #define DDR4_TWTR_L_MASK 0xf
  200. #define DDR_IO_REG 0x1524
  201. #define DFS_REG 0x1528
  202. #define RD_DATA_SMPL_DLYS_REG 0x1538
  203. #define RD_SMPL_DLY_CS_BASE 0
  204. #define RD_SMPL_DLY_CS_OFFS(cs) (RD_SMPL_DLY_CS_BASE + (cs) * 8)
  205. #define RD_SMPL_DLY_CS_MASK 0x1f
  206. #define RD_DATA_RDY_DLYS_REG 0x153c
  207. #define RD_RDY_DLY_CS_BASE 0
  208. #define RD_RDY_DLY_CS_OFFS(cs) (RD_RDY_DLY_CS_BASE + (cs) * 8)
  209. #define RD_RDY_DLY_CS_MASK 0x1f
  210. #define TRAINING_REG 0x15b0
  211. #define TRN_START_OFFS 31
  212. #define TRN_START_MASK 0x1
  213. #define TRN_START_ENA 1
  214. #define TRN_START_DIS 0
  215. #define TRAINING_SW_1_REG 0x15b4
  216. #define TRAINING_SW_2_REG 0x15b8
  217. #define TRAINING_ECC_MUX_OFFS 1
  218. #define TRAINING_ECC_MUX_MASK 0x1
  219. #define TRAINING_ECC_MUX_DIS 0
  220. #define TRAINING_ECC_MUX_ENA 1
  221. #define TRAINING_SW_OVRD_OFFS 0
  222. #define TRAINING_SW_OVRD_MASK 0x1
  223. #define TRAINING_SW_OVRD_DIS 0
  224. #define TRAINING_SW_OVRD_ENA 1
  225. #define TRAINING_PATTERN_BASE_ADDR_REG 0x15bc
  226. #define TRAINING_DBG_1_REG 0x15c0
  227. #define TRAINING_DBG_2_REG 0x15c4
  228. #define TRAINING_DBG_3_REG 0x15c8
  229. #define TRN_DBG_RDY_INC_PH_2TO1_BASE 0
  230. #define TRN_DBG_RDY_INC_PH_2TO1_OFFS(phase) (TRN_DBG_RDY_INC_PH_2TO1_BASE + (phase) * 3)
  231. #define TRN_DBG_RDY_INC_PH_2TO1_MASK 0x7
  232. #define DDR3_RANK_CTRL_REG 0x15e0
  233. #define CS_EXIST_BASE 0
  234. #define CS_EXIST_OFFS(cs) (CS_EXIST_BASE + (cs))
  235. #define CS_EXIST_MASK 0x1
  236. #define ZQC_CFG_REG 0x15e4
  237. #define DRAM_PHY_CFG_REG 0x15ec
  238. #define ODPG_CTRL_CTRL_REG 0x1600
  239. #define ODPG_DATA_CTRL_REG 0x1630
  240. #define ODPG_WRBUF_WR_CTRL_OFFS 0
  241. #define ODPG_WRBUF_WR_CTRL_MASK 0x1
  242. #define ODPG_WRBUF_WR_CTRL_DIS 0
  243. #define ODPG_WRBUF_WR_CTRL_ENA 1
  244. #define ODPG_WRBUF_RD_CTRL_OFFS 1
  245. #define ODPG_WRBUF_RD_CTRL_MASK 0x1
  246. #define ODPG_WRBUF_RD_CTRL_DIS 0
  247. #define ODPG_WRBUF_RD_CTRL_ENA 1
  248. #define ODPG_DATA_CBDEL_OFFS 15
  249. #define ODPG_DATA_CBDEL_MASK 0x3f
  250. #define ODPG_MODE_OFFS 25
  251. #define ODPG_MODE_MASK 0x1
  252. #define ODPG_MODE_RX 0
  253. #define ODPG_MODE_TX 1
  254. #define ODPG_DATA_CS_OFFS 26
  255. #define ODPG_DATA_CS_MASK 0x3
  256. #define ODPG_DISABLE_OFFS 30
  257. #define ODPG_DISABLE_MASK 0x1
  258. #define ODPG_DISABLE_DIS 1
  259. #define ODPG_ENABLE_OFFS 31
  260. #define ODPG_ENABLE_MASK 0x1
  261. #define ODPG_ENABLE_ENA 1
  262. #define ODPG_DATA_BUFFER_OFFS_REG 0x1638
  263. #define ODPG_DATA_BUFFER_SIZE_REG 0x163c
  264. #define PHY_LOCK_STATUS_REG 0x1674
  265. #define PHY_REG_FILE_ACCESS_REG 0x16a0
  266. #define PRFA_DATA_OFFS 0
  267. #define PRFA_DATA_MASK 0xffff
  268. #define PRFA_REG_NUM_OFFS 16
  269. #define PRFA_REG_NUM_MASK 0x3f
  270. #define PRFA_PUP_NUM_OFFS 22
  271. #define PRFA_PUP_NUM_MASK 0xf
  272. #define PRFA_PUP_CTRL_DATA_OFFS 26
  273. #define PRFA_PUP_CTRL_DATA_MASK 0x1
  274. #define PRFA_PUP_BCAST_WR_ENA_OFFS 27
  275. #define PRFA_PUP_BCAST_WR_ENA_MASK 0x1
  276. #define PRFA_REG_NUM_HI_OFFS 28
  277. #define PRFA_REG_NUM_HI_MASK 0x3
  278. #define PRFA_TYPE_OFFS 30
  279. #define PRFA_TYPE_MASK 0x1
  280. #define PRFA_REQ_OFFS 31
  281. #define PRFA_REQ_MASK 0x1
  282. #define PRFA_REQ_DIS 0x0
  283. #define PRFA_REQ_ENA 0x1
  284. #define TRAINING_WL_REG 0x16ac
  285. #define ODPG_DATA_WR_ADDR_REG 0x16b0
  286. #define ODPG_DATA_WR_ACK_OFFS 0
  287. #define ODPG_DATA_WR_ACK_MASK 0x7f
  288. #define ODPG_DATA_WR_DATA_OFFS 8
  289. #define ODPG_DATA_WR_DATA_MASK 0xff
  290. #define ODPG_DATA_WR_DATA_HIGH_REG 0x16b4
  291. #define ODPG_DATA_WR_DATA_LOW_REG 0x16b8
  292. #define ODPG_DATA_RX_WORD_ERR_ADDR_REG 0x16bc
  293. #define ODPG_DATA_RX_WORD_ERR_CNTR_REG 0x16c0
  294. #define ODPG_DATA_RX_WORD_ERR_DATA_HIGH_REG 0x16c4
  295. #define ODPG_DATA_RX_WORD_ERR_DATA_LOW_REG 0x16c8
  296. #define ODPG_DATA_WR_DATA_ERR_REG 0x16cc
  297. #define DUAL_DUNIT_CFG_REG 0x16d8
  298. #define FC_SAMPLE_STAGES_OFFS 0
  299. #define FC_SAMPLE_STAGES_MASK 0x7
  300. #define SINGLE_CS_PIN_OFFS 3
  301. #define SINGLE_CS_PIN_MASK 0x1
  302. #define SINGLE_CS_ENA 1
  303. #define TUNING_ACTIVE_SEL_OFFS 6
  304. #define TUNING_ACTIVE_SEL_MASK 0x1
  305. #define TUNING_ACTIVE_SEL_MC 0
  306. #define TUNING_ACTIVE_SEL_TIP 1
  307. #define WL_DQS_PATTERN_REG 0x16dc
  308. #define ODPG_DONE_STATUS_REG 0x16fc
  309. #define ODPG_DONE_STATUS_BIT_OFFS 0
  310. #define ODPG_DONE_STATUS_BIT_MASK 0x1
  311. #define ODPG_DONE_STATUS_BIT_CLR 0
  312. #define ODPG_DONE_STATUS_BIT_SET 1
  313. #define RESULT_CTRL_BASE 0x1830
  314. #define BLOCK_STATUS_OFFS 25
  315. #define BLOCK_STATUS_MASK 0x1
  316. #define BLOCK_STATUS_LOCK 1
  317. #define BLOCK_STATUS_NOT_LOCKED 0
  318. #define MR0_REG 0x15d0
  319. #define MR1_REG 0x15d4
  320. #define MR2_REG 0x15d8
  321. #define MR3_REG 0x15dc
  322. #define MRS0_CMD 0x3
  323. #define MRS1_CMD 0x4
  324. #define MRS2_CMD 0x8
  325. #define MRS3_CMD 0x9
  326. #define DRAM_PINS_MUX_REG 0x19d4
  327. #define CTRL_PINS_MUX_OFFS 0
  328. #define CTRL_PINS_MUX_MASK 0x3
  329. enum {
  330. DUNIT_DDR3_ON_BOARD,
  331. DUNIT_DDR3_DIMM,
  332. DUNIT_DDR4_ON_BOARD,
  333. DUNIT_DDR4_DIMM
  334. };
  335. /* ddr phy registers */
  336. #define WL_PHY_BASE 0x0
  337. #define WL_PHY_REG(cs) (WL_PHY_BASE + (cs) * 0x4)
  338. #define WR_LVL_PH_SEL_OFFS 6
  339. #define WR_LVL_PH_SEL_MASK 0x7
  340. #define WR_LVL_PH_SEL_PHASE1 1
  341. #define WR_LVL_REF_DLY_OFFS 0
  342. #define WR_LVL_REF_DLY_MASK 0x1f
  343. #define CTRL_CENTER_DLY_OFFS 10
  344. #define CTRL_CENTER_DLY_MASK 0x1f
  345. #define CTRL_CENTER_DLY_INV_OFFS 15
  346. #define CTRL_CENTER_DLY_INV_MASK 0x1
  347. #define CTX_PHY_BASE 0x1
  348. #define CTX_PHY_REG(cs) (CTX_PHY_BASE + (cs) * 0x4)
  349. #define RL_PHY_BASE 0x2
  350. #define RL_PHY_REG(cs) (RL_PHY_BASE + (cs) * 0x4)
  351. #define RL_REF_DLY_OFFS 0
  352. #define RL_REF_DLY_MASK 0x1f
  353. #define RL_PH_SEL_OFFS 6
  354. #define RL_PH_SEL_MASK 0x7
  355. #define CRX_PHY_BASE 0x3
  356. #define CRX_PHY_REG(cs) (CRX_PHY_BASE + (cs) * 0x4)
  357. #define PHY_CTRL_PHY_REG 0x90
  358. #define ADLL_CFG0_PHY_REG 0x92
  359. #define ADLL_CFG1_PHY_REG 0x93
  360. #define ADLL_CFG2_PHY_REG 0x94
  361. #define CMOS_CONFIG_PHY_REG 0xa2
  362. #define PAD_ZRI_CAL_PHY_REG 0xa4
  363. #define PAD_ODT_CAL_PHY_REG 0xa6
  364. #define PAD_CFG_PHY_REG 0xa8
  365. #define PAD_PRE_DISABLE_PHY_REG 0xa9
  366. #define TEST_ADLL_PHY_REG 0xbf
  367. #define VREF_PHY_BASE 0xd0
  368. #define VREF_PHY_REG(cs, bit) (VREF_PHY_BASE + (cs) * 12 + bit)
  369. enum {
  370. DQSP_PAD = 4,
  371. DQSN_PAD
  372. };
  373. #define VREF_BCAST_PHY_BASE 0xdb
  374. #define VREF_BCAST_PHY_REG(cs) (VREF_BCAST_PHY_BASE + (cs) * 12)
  375. #define PBS_TX_PHY_BASE 0x10
  376. #define PBS_TX_PHY_REG(cs, bit) (PBS_TX_PHY_BASE + (cs) * 0x10 + (bit))
  377. #define PBS_TX_BCAST_PHY_BASE 0x1f
  378. #define PBS_TX_BCAST_PHY_REG(cs) (PBS_TX_BCAST_PHY_BASE + (cs) * 0x10)
  379. #define PBS_RX_PHY_BASE 0x50
  380. #define PBS_RX_PHY_REG(cs, bit) (PBS_RX_PHY_BASE + (cs) * 0x10 + (bit))
  381. #define PBS_RX_BCAST_PHY_BASE 0x5f
  382. #define PBS_RX_BCAST_PHY_REG(cs) (PBS_RX_BCAST_PHY_BASE + (cs) * 0x10)
  383. #define RESULT_PHY_REG 0xc0
  384. #define RESULT_PHY_RX_OFFS 5
  385. #define RESULT_PHY_TX_OFFS 0
  386. #endif /* _MV_DDR_REGS_H */