ddr3_axp_training_static.h 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (C) Marvell International Ltd. and its affiliates
  4. */
  5. #ifndef __AXP_TRAINING_STATIC_H
  6. #define __AXP_TRAINING_STATIC_H
  7. /*
  8. * STATIC_TRAINING - Set only if static parameters for training are set and
  9. * required
  10. */
  11. MV_DRAM_TRAINING_INIT ddr3_db_rev2_667[MV_MAX_DDR3_STATIC_SIZE] = {
  12. /* Read Leveling */
  13. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  14. /*0 */
  15. {0x000016A0, 0xC002011A},
  16. /*1 */
  17. {0x000016A0, 0xC0420100},
  18. /*2 */
  19. {0x000016A0, 0xC082020A},
  20. /*3 */
  21. {0x000016A0, 0xC0C20017},
  22. /*4 */
  23. {0x000016A0, 0xC1020113},
  24. /*5 */
  25. {0x000016A0, 0xC1420107},
  26. /*6 */
  27. {0x000016A0, 0xC182011F},
  28. /*7 */
  29. {0x000016A0, 0xC1C2001C},
  30. /*8 */
  31. {0x000016A0, 0xC202010D},
  32. /* Write Leveling */
  33. /*0 */
  34. {0x000016A0, 0xC0004A06},
  35. /*1 */
  36. {0x000016A0, 0xC040690D},
  37. /*2 */
  38. {0x000016A0, 0xC0806A0D},
  39. /*3 */
  40. {0x000016A0, 0xC0C0A01B},
  41. /*4 */
  42. {0x000016A0, 0xC1003A01},
  43. /*5 */
  44. {0x000016A0, 0xC1408113},
  45. /*6 */
  46. {0x000016A0, 0xC1805609},
  47. /*7 */
  48. {0x000016A0, 0xC1C04504},
  49. /*8 */
  50. {0x000016A0, 0xC2009518},
  51. /*center DQS on read cycle */
  52. {0x000016A0, 0xC803000F},
  53. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  54. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  55. /*init DRAM */
  56. {0x00001480, 0x00000001},
  57. {0x0, 0x0}
  58. };
  59. MV_DRAM_TRAINING_INIT ddr3_db_rev2_800[MV_MAX_DDR3_STATIC_SIZE] = {
  60. /* Read Leveling */
  61. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  62. /*0 */
  63. {0x000016A0, 0xC0020301},
  64. /*1 */
  65. {0x000016A0, 0xC0420202},
  66. /*2 */
  67. {0x000016A0, 0xC0820314},
  68. /*3 */
  69. {0x000016A0, 0xC0C20117},
  70. /*4 */
  71. {0x000016A0, 0xC1020219},
  72. /*5 */
  73. {0x000016A0, 0xC142020B},
  74. /*6 */
  75. {0x000016A0, 0xC182030A},
  76. /*7 */
  77. {0x000016A0, 0xC1C2011D},
  78. /*8 */
  79. {0x000016A0, 0xC2020212},
  80. /* Write Leveling */
  81. /*0 */
  82. {0x000016A0, 0xC0007A12},
  83. /*1 */
  84. {0x000016A0, 0xC0408D16},
  85. /*2 */
  86. {0x000016A0, 0xC0809E1B},
  87. /*3 */
  88. {0x000016A0, 0xC0C0AC1F},
  89. /*4 */
  90. {0x000016A0, 0xC1005E0A},
  91. /*5 */
  92. {0x000016A0, 0xC140A91D},
  93. /*6 */
  94. {0x000016A0, 0xC1808E17},
  95. /*7 */
  96. {0x000016A0, 0xC1C05509},
  97. /*8 */
  98. {0x000016A0, 0xC2003A01},
  99. /* PBS Leveling */
  100. /*0 */
  101. {0x000016A0, 0xC0007A12},
  102. /*1 */
  103. {0x000016A0, 0xC0408D16},
  104. /*2 */
  105. {0x000016A0, 0xC0809E1B},
  106. /*3 */
  107. {0x000016A0, 0xC0C0AC1F},
  108. /*4 */
  109. {0x000016A0, 0xC1005E0A},
  110. /*5 */
  111. {0x000016A0, 0xC140A91D},
  112. /*6 */
  113. {0x000016A0, 0xC1808E17},
  114. /*7 */
  115. {0x000016A0, 0xC1C05509},
  116. /*8 */
  117. {0x000016A0, 0xC2003A01},
  118. /*center DQS on read cycle */
  119. {0x000016A0, 0xC803000B},
  120. {0x00001538, 0x0000000D}, /*Read Data Sample Delays Register */
  121. {0x0000153C, 0x00000011}, /*Read Data Ready Delay Register */
  122. /*init DRAM */
  123. {0x00001480, 0x00000001},
  124. {0x0, 0x0}
  125. };
  126. MV_DRAM_TRAINING_INIT ddr3_db_400[MV_MAX_DDR3_STATIC_SIZE] = {
  127. /* Read Leveling */
  128. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  129. /*0 2 4 15 */
  130. {0x000016A0, 0xC002010C},
  131. /*1 2 4 2 */
  132. {0x000016A0, 0xC042001C},
  133. /*2 2 4 27 */
  134. {0x000016A0, 0xC0820115},
  135. /*3 2 4 0 */
  136. {0x000016A0, 0xC0C20019},
  137. /*4 2 4 13 */
  138. {0x000016A0, 0xC1020108},
  139. /*5 2 4 5 */
  140. {0x000016A0, 0xC1420100},
  141. /*6 2 4 19 */
  142. {0x000016A0, 0xC1820111},
  143. /*7 2 4 0 */
  144. {0x000016A0, 0xC1C2001B},
  145. /*8 2 4 10 */
  146. /*{0x000016A0, 0xC2020117}, */
  147. {0x000016A0, 0xC202010C},
  148. /* Write Leveling */
  149. /*0 */
  150. {0x000016A0, 0xC0005508},
  151. /*1 */
  152. {0x000016A0, 0xC0409819},
  153. /*2 */
  154. {0x000016A0, 0xC080650C},
  155. /*3 */
  156. {0x000016A0, 0xC0C0700F},
  157. /*4 */
  158. {0x000016A0, 0xC1004103},
  159. /*5 */
  160. {0x000016A0, 0xC140A81D},
  161. /*6 */
  162. {0x000016A0, 0xC180650C},
  163. /*7 */
  164. {0x000016A0, 0xC1C08013},
  165. /*8 */
  166. {0x000016A0, 0xC2005508},
  167. /*center DQS on read cycle */
  168. {0x000016A0, 0xC803000F},
  169. {0x00001538, 0x00000008}, /*Read Data Sample Delays Register */
  170. {0x0000153C, 0x0000000A}, /*Read Data Ready Delay Register */
  171. /*init DRAM */
  172. {0x00001480, 0x00000001},
  173. {0x0, 0x0}
  174. };
  175. MV_DRAM_TRAINING_INIT ddr3_db_533[MV_MAX_DDR3_STATIC_SIZE] = {
  176. /* Read Leveling */
  177. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  178. /*0 2 4 15 */
  179. {0x000016A0, 0xC002040C},
  180. /*1 2 4 2 */
  181. {0x000016A0, 0xC0420117},
  182. /*2 2 4 27 */
  183. {0x000016A0, 0xC082041B},
  184. /*3 2 4 0 */
  185. {0x000016A0, 0xC0C20117},
  186. /*4 2 4 13 */
  187. {0x000016A0, 0xC102040A},
  188. /*5 2 4 5 */
  189. {0x000016A0, 0xC1420117},
  190. /*6 2 4 19 */
  191. {0x000016A0, 0xC1820419},
  192. /*7 2 4 0 */
  193. {0x000016A0, 0xC1C20117},
  194. /*8 2 4 10 */
  195. {0x000016A0, 0xC2020117},
  196. /* Write Leveling */
  197. /*0 */
  198. {0x000016A0, 0xC0008113},
  199. /*1 */
  200. {0x000016A0, 0xC0404504},
  201. /*2 */
  202. {0x000016A0, 0xC0808514},
  203. /*3 */
  204. {0x000016A0, 0xC0C09418},
  205. /*4 */
  206. {0x000016A0, 0xC1006D0E},
  207. /*5 */
  208. {0x000016A0, 0xC1405508},
  209. /*6 */
  210. {0x000016A0, 0xC1807D12},
  211. /*7 */
  212. {0x000016A0, 0xC1C0b01F},
  213. /*8 */
  214. {0x000016A0, 0xC2005D0A},
  215. /*center DQS on read cycle */
  216. {0x000016A0, 0xC803000F},
  217. {0x00001538, 0x00000008}, /*Read Data Sample Delays Register */
  218. {0x0000153C, 0x0000000A}, /*Read Data Ready Delay Register */
  219. /*init DRAM */
  220. {0x00001480, 0x00000001},
  221. {0x0, 0x0}
  222. };
  223. MV_DRAM_TRAINING_INIT ddr3_db_600[MV_MAX_DDR3_STATIC_SIZE] = {
  224. /* Read Leveling */
  225. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  226. /*0 2 3 1 */
  227. {0x000016A0, 0xC0020104},
  228. /*1 2 2 6 */
  229. {0x000016A0, 0xC0420010},
  230. /*2 2 3 16 */
  231. {0x000016A0, 0xC0820112},
  232. /*3 2 1 26 */
  233. {0x000016A0, 0xC0C20009},
  234. /*4 2 2 29 */
  235. {0x000016A0, 0xC102001F},
  236. /*5 2 2 13 */
  237. {0x000016A0, 0xC1420014},
  238. /*6 2 3 6 */
  239. {0x000016A0, 0xC1820109},
  240. /*7 2 1 31 */
  241. {0x000016A0, 0xC1C2000C},
  242. /*8 2 2 22 */
  243. {0x000016A0, 0xC2020112},
  244. /* Write Leveling */
  245. /*0 */
  246. {0x000016A0, 0xC0009919},
  247. /*1 */
  248. {0x000016A0, 0xC0405508},
  249. /*2 */
  250. {0x000016A0, 0xC0809919},
  251. /*3 */
  252. {0x000016A0, 0xC0C09C1A},
  253. /*4 */
  254. {0x000016A0, 0xC1008113},
  255. /*5 */
  256. {0x000016A0, 0xC140650C},
  257. /*6 */
  258. {0x000016A0, 0xC1809518},
  259. /*7 */
  260. {0x000016A0, 0xC1C04103},
  261. /*8 */
  262. {0x000016A0, 0xC2006D0E},
  263. /*center DQS on read cycle */
  264. {0x000016A0, 0xC803000F},
  265. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  266. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  267. /*init DRAM */
  268. {0x00001480, 0x00000001},
  269. {0x0, 0x0}
  270. };
  271. MV_DRAM_TRAINING_INIT ddr3_db_667[MV_MAX_DDR3_STATIC_SIZE] = {
  272. /* Read Leveling */
  273. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  274. /*0 2 3 1 */
  275. {0x000016A0, 0xC0020103},
  276. /*1 2 2 6 */
  277. {0x000016A0, 0xC0420012},
  278. /*2 2 3 16 */
  279. {0x000016A0, 0xC0820113},
  280. /*3 2 1 26 */
  281. {0x000016A0, 0xC0C20012},
  282. /*4 2 2 29 */
  283. {0x000016A0, 0xC1020100},
  284. /*5 2 2 13 */
  285. {0x000016A0, 0xC1420016},
  286. /*6 2 3 6 */
  287. {0x000016A0, 0xC1820109},
  288. /*7 2 1 31 */
  289. {0x000016A0, 0xC1C20010},
  290. /*8 2 2 22 */
  291. {0x000016A0, 0xC2020112},
  292. /* Write Leveling */
  293. /*0 */
  294. {0x000016A0, 0xC000b11F},
  295. /*1 */
  296. {0x000016A0, 0xC040690D},
  297. /*2 */
  298. {0x000016A0, 0xC0803600},
  299. /*3 */
  300. {0x000016A0, 0xC0C0a81D},
  301. /*4 */
  302. {0x000016A0, 0xC1009919},
  303. /*5 */
  304. {0x000016A0, 0xC1407911},
  305. /*6 */
  306. {0x000016A0, 0xC180ad1e},
  307. /*7 */
  308. {0x000016A0, 0xC1C04d06},
  309. /*8 */
  310. {0x000016A0, 0xC2008514},
  311. /*center DQS on read cycle */
  312. {0x000016A0, 0xC803000F},
  313. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  314. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  315. /*init DRAM */
  316. {0x00001480, 0x00000001},
  317. {0x0, 0x0}
  318. };
  319. MV_DRAM_TRAINING_INIT ddr3_db_800[MV_MAX_DDR3_STATIC_SIZE] = {
  320. /* Read Leveling */
  321. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  322. /*0 2 3 1 */
  323. {0x000016A0, 0xC0020213},
  324. /*1 2 2 6 */
  325. {0x000016A0, 0xC0420108},
  326. /*2 2 3 16 */
  327. {0x000016A0, 0xC0820210},
  328. /*3 2 1 26 */
  329. {0x000016A0, 0xC0C20108},
  330. /*4 2 2 29 */
  331. {0x000016A0, 0xC102011A},
  332. /*5 2 2 13 */
  333. {0x000016A0, 0xC1420300},
  334. /*6 2 3 6 */
  335. {0x000016A0, 0xC1820204},
  336. /*7 2 1 31 */
  337. {0x000016A0, 0xC1C20106},
  338. /*8 2 2 22 */
  339. {0x000016A0, 0xC2020112},
  340. /* Write Leveling */
  341. /*0 */
  342. {0x000016A0, 0xC000620B},
  343. /*1 */
  344. {0x000016A0, 0xC0408D16},
  345. /*2 */
  346. {0x000016A0, 0xC0806A0D},
  347. /*3 */
  348. {0x000016A0, 0xC0C03D02},
  349. /*4 */
  350. {0x000016A0, 0xC1004a05},
  351. /*5 */
  352. {0x000016A0, 0xC140A11B},
  353. /*6 */
  354. {0x000016A0, 0xC1805E0A},
  355. /*7 */
  356. {0x000016A0, 0xC1C06D0E},
  357. /*8 */
  358. {0x000016A0, 0xC200AD1E},
  359. /*center DQS on read cycle */
  360. {0x000016A0, 0xC803000F},
  361. {0x00001538, 0x0000000C}, /*Read Data Sample Delays Register */
  362. {0x0000153C, 0x0000000E}, /*Read Data Ready Delay Register */
  363. /*init DRAM */
  364. {0x00001480, 0x00000001},
  365. {0x0, 0x0}
  366. };
  367. MV_DRAM_TRAINING_INIT ddr3_rd_667_0[MV_MAX_DDR3_STATIC_SIZE] = {
  368. /* Read Leveling */
  369. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  370. /*0 */
  371. {0x000016A0, 0xC002010E},
  372. /*1 */
  373. {0x000016A0, 0xC042001E},
  374. /*2 */
  375. {0x000016A0, 0xC0820118},
  376. /*3 */
  377. {0x000016A0, 0xC0C2001E},
  378. /*4 */
  379. {0x000016A0, 0xC102010C},
  380. /*5 */
  381. {0x000016A0, 0xC1420102},
  382. /*6 */
  383. {0x000016A0, 0xC1820111},
  384. /*7 */
  385. {0x000016A0, 0xC1C2001C},
  386. /*8 */
  387. {0x000016A0, 0xC2020109},
  388. /* Write Leveling */
  389. /*0 */
  390. {0x000016A0, 0xC0003600},
  391. /*1 */
  392. {0x000016A0, 0xC040690D},
  393. /*2 */
  394. {0x000016A0, 0xC0805207},
  395. /*3 */
  396. {0x000016A0, 0xC0C0A81D},
  397. /*4 */
  398. {0x000016A0, 0xC1009919},
  399. /*5 */
  400. {0x000016A0, 0xC1407911},
  401. /*6 */
  402. {0x000016A0, 0xC1803E02},
  403. /*7 */
  404. {0x000016A0, 0xC1C05107},
  405. /*8 */
  406. {0x000016A0, 0xC2008113},
  407. /*center DQS on read cycle */
  408. {0x000016A0, 0xC803000F},
  409. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  410. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  411. /*init DRAM */
  412. {0x00001480, 0x00000001},
  413. {0x0, 0x0}
  414. };
  415. MV_DRAM_TRAINING_INIT ddr3_rd_667_1[MV_MAX_DDR3_STATIC_SIZE] = {
  416. /* Read Leveling */
  417. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  418. /*0 */
  419. {0x000016A0, 0xC0020106},
  420. /*1 */
  421. {0x000016A0, 0xC0420016},
  422. /*2 */
  423. {0x000016A0, 0xC0820117},
  424. /*3 */
  425. {0x000016A0, 0xC0C2000F},
  426. /*4 */
  427. {0x000016A0, 0xC1020105},
  428. /*5 */
  429. {0x000016A0, 0xC142001B},
  430. /*6 */
  431. {0x000016A0, 0xC182010C},
  432. /*7 */
  433. {0x000016A0, 0xC1C20011},
  434. /*8 */
  435. {0x000016A0, 0xC2020101},
  436. /* Write Leveling */
  437. /*0 */
  438. {0x000016A0, 0xC0003600},
  439. /*1 */
  440. {0x000016A0, 0xC0406D0E},
  441. /*2 */
  442. {0x000016A0, 0xC0803600},
  443. /*3 */
  444. {0x000016A0, 0xC0C04504},
  445. /*4 */
  446. {0x000016A0, 0xC1009919},
  447. /*5 */
  448. {0x000016A0, 0xC1407911},
  449. /*6 */
  450. {0x000016A0, 0xC1803600},
  451. /*7 */
  452. {0x000016A0, 0xC1C0610B},
  453. /*8 */
  454. {0x000016A0, 0xC2008113},
  455. /*center DQS on read cycle */
  456. {0x000016A0, 0xC803000F},
  457. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  458. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  459. /*init DRAM */
  460. {0x00001480, 0x00000001},
  461. {0x0, 0x0}
  462. };
  463. MV_DRAM_TRAINING_INIT ddr3_rd_667_2[MV_MAX_DDR3_STATIC_SIZE] = {
  464. /* Read Leveling */
  465. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  466. /*0 */
  467. {0x000016A0, 0xC002010C},
  468. /*1 */
  469. {0x000016A0, 0xC042001B},
  470. /*2 */
  471. {0x000016A0, 0xC082011D},
  472. /*3 */
  473. {0x000016A0, 0xC0C20015},
  474. /*4 */
  475. {0x000016A0, 0xC102010B},
  476. /*5 */
  477. {0x000016A0, 0xC1420101},
  478. /*6 */
  479. {0x000016A0, 0xC1820113},
  480. /*7 */
  481. {0x000016A0, 0xC1C20017},
  482. /*8 */
  483. {0x000016A0, 0xC2020107},
  484. /* Write Leveling */
  485. /*0 */
  486. {0x000016A0, 0xC0003600},
  487. /*1 */
  488. {0x000016A0, 0xC0406D0E},
  489. /*2 */
  490. {0x000016A0, 0xC0803600},
  491. /*3 */
  492. {0x000016A0, 0xC0C04504},
  493. /*4 */
  494. {0x000016A0, 0xC1009919},
  495. /*5 */
  496. {0x000016A0, 0xC1407911},
  497. /*6 */
  498. {0x000016A0, 0xC180B11F},
  499. /*7 */
  500. {0x000016A0, 0xC1C0610B},
  501. /*8 */
  502. {0x000016A0, 0xC2008113},
  503. /*center DQS on read cycle */
  504. {0x000016A0, 0xC803000F},
  505. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  506. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  507. /*init DRAM */
  508. {0x00001480, 0x00000001},
  509. {0x0, 0x0}
  510. };
  511. MV_DRAM_TRAINING_INIT ddr3_db_667_M[MV_MAX_DDR3_STATIC_SIZE] = {
  512. /* Read Leveling */
  513. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  514. /* CS 0 */
  515. /*0 2 3 1 */
  516. {0x000016A0, 0xC0020103},
  517. /*1 2 2 6 */
  518. {0x000016A0, 0xC0420012},
  519. /*2 2 3 16 */
  520. {0x000016A0, 0xC0820113},
  521. /*3 2 1 26 */
  522. {0x000016A0, 0xC0C20012},
  523. /*4 2 2 29 */
  524. {0x000016A0, 0xC1020100},
  525. /*5 2 2 13 */
  526. {0x000016A0, 0xC1420016},
  527. /*6 2 3 6 */
  528. {0x000016A0, 0xC1820109},
  529. /*7 2 1 31 */
  530. {0x000016A0, 0xC1C20010},
  531. /*8 2 2 22 */
  532. {0x000016A0, 0xC2020112},
  533. /* Write Leveling */
  534. /*0 */
  535. {0x000016A0, 0xC000b11F},
  536. /*1 */
  537. {0x000016A0, 0xC040690D},
  538. /*2 */
  539. {0x000016A0, 0xC0803600},
  540. /*3 */
  541. {0x000016A0, 0xC0C0a81D},
  542. /*4 */
  543. {0x000016A0, 0xC1009919},
  544. /*5 */
  545. {0x000016A0, 0xC1407911},
  546. /*6 */
  547. {0x000016A0, 0xC180ad1e},
  548. /*7 */
  549. {0x000016A0, 0xC1C04d06},
  550. /*8 */
  551. {0x000016A0, 0xC2008514},
  552. /*center DQS on read cycle */
  553. {0x000016A0, 0xC803000F},
  554. /* CS 1 */
  555. {0x000016A0, 0xC0060103},
  556. /*1 2 2 6 */
  557. {0x000016A0, 0xC0460012},
  558. /*2 2 3 16 */
  559. {0x000016A0, 0xC0860113},
  560. /*3 2 1 26 */
  561. {0x000016A0, 0xC0C60012},
  562. /*4 2 2 29 */
  563. {0x000016A0, 0xC1060100},
  564. /*5 2 2 13 */
  565. {0x000016A0, 0xC1460016},
  566. /*6 2 3 6 */
  567. {0x000016A0, 0xC1860109},
  568. /*7 2 1 31 */
  569. {0x000016A0, 0xC1C60010},
  570. /*8 2 2 22 */
  571. {0x000016A0, 0xC2060112},
  572. /* Write Leveling */
  573. /*0 */
  574. {0x000016A0, 0xC004b11F},
  575. /*1 */
  576. {0x000016A0, 0xC044690D},
  577. /*2 */
  578. {0x000016A0, 0xC0843600},
  579. /*3 */
  580. {0x000016A0, 0xC0C4a81D},
  581. /*4 */
  582. {0x000016A0, 0xC1049919},
  583. /*5 */
  584. {0x000016A0, 0xC1447911},
  585. /*6 */
  586. {0x000016A0, 0xC184ad1e},
  587. /*7 */
  588. {0x000016A0, 0xC1C44d06},
  589. /*8 */
  590. {0x000016A0, 0xC2048514},
  591. /*center DQS on read cycle */
  592. {0x000016A0, 0xC807000F},
  593. /* Both CS */
  594. {0x00001538, 0x00000B0B}, /*Read Data Sample Delays Register */
  595. {0x0000153C, 0x00000F0F}, /*Read Data Ready Delay Register */
  596. /*init DRAM */
  597. {0x00001480, 0x00000001},
  598. {0x0, 0x0}
  599. };
  600. MV_DRAM_TRAINING_INIT ddr3_rd_667_3[MV_MAX_DDR3_STATIC_SIZE] = {
  601. /* Read Leveling */
  602. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  603. /*0 */
  604. {0x000016A0, 0xC0020118},
  605. /*1 */
  606. {0x000016A0, 0xC0420108},
  607. /*2 */
  608. {0x000016A0, 0xC0820202},
  609. /*3 */
  610. {0x000016A0, 0xC0C20108},
  611. /*4 */
  612. {0x000016A0, 0xC1020117},
  613. /*5 */
  614. {0x000016A0, 0xC142010C},
  615. /*6 */
  616. {0x000016A0, 0xC182011B},
  617. /*7 */
  618. {0x000016A0, 0xC1C20107},
  619. /*8 */
  620. {0x000016A0, 0xC2020113},
  621. /* Write Leveling */
  622. /*0 */
  623. {0x000016A0, 0xC0003600},
  624. /*1 */
  625. {0x000016A0, 0xC0406D0E},
  626. /*2 */
  627. {0x000016A0, 0xC0805207},
  628. /*3 */
  629. {0x000016A0, 0xC0C0A81D},
  630. /*4 */
  631. {0x000016A0, 0xC1009919},
  632. /*5 */
  633. {0x000016A0, 0xC1407911},
  634. /*6 */
  635. {0x000016A0, 0xC1803E02},
  636. /*7 */
  637. {0x000016A0, 0xC1C04D06},
  638. /*8 */
  639. {0x000016A0, 0xC2008113},
  640. /*center DQS on read cycle */
  641. {0x000016A0, 0xC803000F},
  642. {0x00001538, 0x0000000B}, /*Read Data Sample Delays Register */
  643. {0x0000153C, 0x0000000F}, /*Read Data Ready Delay Register */
  644. /*init DRAM */
  645. {0x00001480, 0x00000001},
  646. {0x0, 0x0}
  647. };
  648. MV_DRAM_TRAINING_INIT ddr3_pcac_600[MV_MAX_DDR3_STATIC_SIZE] = {
  649. /* Read Leveling */
  650. /*PUP RdSampleDly (+CL) Phase RL ADLL value */
  651. /*0 */
  652. {0x000016A0, 0xC0020404},
  653. /* 1 2 2 6 */
  654. {0x000016A0, 0xC042031E},
  655. /* 2 2 3 16 */
  656. {0x000016A0, 0xC0820411},
  657. /* 3 2 1 26 */
  658. {0x000016A0, 0xC0C20400},
  659. /* 4 2 2 29 */
  660. {0x000016A0, 0xC1020404},
  661. /* 5 2 2 13 */
  662. {0x000016A0, 0xC142031D},
  663. /* 6 2 3 6 */
  664. {0x000016A0, 0xC182040C},
  665. /* 7 2 1 31 */
  666. {0x000016A0, 0xC1C2031B},
  667. /* 8 2 2 22 */
  668. {0x000016A0, 0xC2020112},
  669. /* Write Leveling */
  670. /* 0 */
  671. {0x000016A0, 0xC0004905},
  672. /* 1 */
  673. {0x000016A0, 0xC040A81D},
  674. /* 2 */
  675. {0x000016A0, 0xC0804504},
  676. /* 3 */
  677. {0x000016A0, 0xC0C08013},
  678. /* 4 */
  679. {0x000016A0, 0xC1004504},
  680. /* 5 */
  681. {0x000016A0, 0xC140A81D},
  682. /* 6 */
  683. {0x000016A0, 0xC1805909},
  684. /* 7 */
  685. {0x000016A0, 0xC1C09418},
  686. /* 8 */
  687. {0x000016A0, 0xC2006D0E},
  688. /*center DQS on read cycle */
  689. {0x000016A0, 0xC803000F},
  690. {0x00001538, 0x00000009}, /*Read Data Sample Delays Register */
  691. {0x0000153C, 0x0000000D}, /*Read Data Ready Delay Register */
  692. /* init DRAM */
  693. {0x00001480, 0x00000001},
  694. {0x0, 0x0}
  695. };
  696. #endif /* __AXP_TRAINING_STATIC_H */