/*
 * Copyright (C) Marvell International Ltd. and its affiliates
 *
 * SPDX-License-Identifier:	GPL-2.0
 */

#ifndef __AXP_TRAINING_STATIC_H
#define __AXP_TRAINING_STATIC_H

/*
 * STATIC_TRAINING - Set only if static parameters for training are set and
 * required
 */

MV_DRAM_TRAINING_INIT ddr3_db_rev2_667[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0     */
	{0x000016A0, 0xC002011A},
	/*1 */
	{0x000016A0, 0xC0420100},
	/*2 */
	{0x000016A0, 0xC082020A},
	/*3 */
	{0x000016A0, 0xC0C20017},
	/*4 */
	{0x000016A0, 0xC1020113},
	/*5 */
	{0x000016A0, 0xC1420107},
	/*6 */
	{0x000016A0, 0xC182011F},
	/*7 */
	{0x000016A0, 0xC1C2001C},
	/*8 */
	{0x000016A0, 0xC202010D},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0004A06},
	/*1 */
	{0x000016A0, 0xC040690D},
	/*2 */
	{0x000016A0, 0xC0806A0D},
	/*3 */
	{0x000016A0, 0xC0C0A01B},
	/*4 */
	{0x000016A0, 0xC1003A01},
	/*5 */
	{0x000016A0, 0xC1408113},
	/*6 */
	{0x000016A0, 0xC1805609},
	/*7 */
	{0x000016A0, 0xC1C04504},
	/*8 */
	{0x000016A0, 0xC2009518},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_rev2_800[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0     */
	{0x000016A0, 0xC0020301},
	/*1 */
	{0x000016A0, 0xC0420202},
	/*2 */
	{0x000016A0, 0xC0820314},
	/*3 */
	{0x000016A0, 0xC0C20117},
	/*4 */
	{0x000016A0, 0xC1020219},
	/*5 */
	{0x000016A0, 0xC142020B},
	/*6 */
	{0x000016A0, 0xC182030A},
	/*7 */
	{0x000016A0, 0xC1C2011D},
	/*8 */
	{0x000016A0, 0xC2020212},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0007A12},
	/*1 */
	{0x000016A0, 0xC0408D16},
	/*2 */
	{0x000016A0, 0xC0809E1B},
	/*3 */
	{0x000016A0, 0xC0C0AC1F},
	/*4 */
	{0x000016A0, 0xC1005E0A},
	/*5 */
	{0x000016A0, 0xC140A91D},
	/*6 */
	{0x000016A0, 0xC1808E17},
	/*7 */
	{0x000016A0, 0xC1C05509},
	/*8 */
	{0x000016A0, 0xC2003A01},

	/* PBS Leveling */
	/*0 */
	{0x000016A0, 0xC0007A12},
	/*1 */
	{0x000016A0, 0xC0408D16},
	/*2 */
	{0x000016A0, 0xC0809E1B},
	/*3 */
	{0x000016A0, 0xC0C0AC1F},
	/*4 */
	{0x000016A0, 0xC1005E0A},
	/*5 */
	{0x000016A0, 0xC140A91D},
	/*6 */
	{0x000016A0, 0xC1808E17},
	/*7 */
	{0x000016A0, 0xC1C05509},
	/*8 */
	{0x000016A0, 0xC2003A01},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000B},

	{0x00001538, 0x0000000D},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x00000011},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_400[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0             2               4               15 */
	{0x000016A0, 0xC002010C},
	/*1             2               4               2 */
	{0x000016A0, 0xC042001C},
	/*2             2               4               27 */
	{0x000016A0, 0xC0820115},
	/*3             2               4               0 */
	{0x000016A0, 0xC0C20019},
	/*4             2               4               13 */
	{0x000016A0, 0xC1020108},
	/*5             2               4               5 */
	{0x000016A0, 0xC1420100},
	/*6             2               4               19 */
	{0x000016A0, 0xC1820111},
	/*7             2               4               0 */
	{0x000016A0, 0xC1C2001B},
	/*8             2               4               10 */
	/*{0x000016A0, 0xC2020117}, */
	{0x000016A0, 0xC202010C},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0005508},
	/*1 */
	{0x000016A0, 0xC0409819},
	/*2 */
	{0x000016A0, 0xC080650C},
	/*3 */
	{0x000016A0, 0xC0C0700F},
	/*4 */
	{0x000016A0, 0xC1004103},
	/*5 */
	{0x000016A0, 0xC140A81D},
	/*6 */
	{0x000016A0, 0xC180650C},
	/*7 */
	{0x000016A0, 0xC1C08013},
	/*8 */
	{0x000016A0, 0xC2005508},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x00000008},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000A},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_533[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0             2               4               15 */
	{0x000016A0, 0xC002040C},
	/*1             2               4               2 */
	{0x000016A0, 0xC0420117},
	/*2             2               4               27 */
	{0x000016A0, 0xC082041B},
	/*3             2               4               0 */
	{0x000016A0, 0xC0C20117},
	/*4             2               4               13 */
	{0x000016A0, 0xC102040A},
	/*5             2               4               5 */
	{0x000016A0, 0xC1420117},
	/*6             2               4               19 */
	{0x000016A0, 0xC1820419},
	/*7             2               4               0 */
	{0x000016A0, 0xC1C20117},
	/*8             2               4               10 */
	{0x000016A0, 0xC2020117},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0008113},
	/*1 */
	{0x000016A0, 0xC0404504},
	/*2 */
	{0x000016A0, 0xC0808514},
	/*3 */
	{0x000016A0, 0xC0C09418},
	/*4 */
	{0x000016A0, 0xC1006D0E},
	/*5 */
	{0x000016A0, 0xC1405508},
	/*6 */
	{0x000016A0, 0xC1807D12},
	/*7 */
	{0x000016A0, 0xC1C0b01F},
	/*8 */
	{0x000016A0, 0xC2005D0A},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x00000008},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000A},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_600[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0             2               3               1 */
	{0x000016A0, 0xC0020104},
	/*1             2               2               6 */
	{0x000016A0, 0xC0420010},
	/*2             2               3               16 */
	{0x000016A0, 0xC0820112},
	/*3             2               1               26 */
	{0x000016A0, 0xC0C20009},
	/*4             2               2               29 */
	{0x000016A0, 0xC102001F},
	/*5             2               2               13 */
	{0x000016A0, 0xC1420014},
	/*6             2               3               6 */
	{0x000016A0, 0xC1820109},
	/*7             2               1               31 */
	{0x000016A0, 0xC1C2000C},
	/*8             2               2               22 */
	{0x000016A0, 0xC2020112},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0009919},
	/*1 */
	{0x000016A0, 0xC0405508},
	/*2 */
	{0x000016A0, 0xC0809919},
	/*3 */
	{0x000016A0, 0xC0C09C1A},
	/*4 */
	{0x000016A0, 0xC1008113},
	/*5 */
	{0x000016A0, 0xC140650C},
	/*6 */
	{0x000016A0, 0xC1809518},
	/*7 */
	{0x000016A0, 0xC1C04103},
	/*8 */
	{0x000016A0, 0xC2006D0E},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */
	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_667[MV_MAX_DDR3_STATIC_SIZE] = {

	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0             2               3               1 */
	{0x000016A0, 0xC0020103},
	/*1            2               2               6 */
	{0x000016A0, 0xC0420012},
	/*2            2               3               16 */
	{0x000016A0, 0xC0820113},
	/*3            2               1               26 */
	{0x000016A0, 0xC0C20012},
	/*4            2               2               29 */
	{0x000016A0, 0xC1020100},
	/*5            2               2               13 */
	{0x000016A0, 0xC1420016},
	/*6            2               3               6 */
	{0x000016A0, 0xC1820109},
	/*7            2               1               31 */
	{0x000016A0, 0xC1C20010},
	/*8            2               2               22 */
	{0x000016A0, 0xC2020112},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC000b11F},
	/*1 */
	{0x000016A0, 0xC040690D},
	/*2 */
	{0x000016A0, 0xC0803600},
	/*3 */
	{0x000016A0, 0xC0C0a81D},
	/*4 */
	{0x000016A0, 0xC1009919},
	/*5 */
	{0x000016A0, 0xC1407911},
	/*6 */
	{0x000016A0, 0xC180ad1e},
	/*7 */
	{0x000016A0, 0xC1C04d06},
	/*8 */
	{0x000016A0, 0xC2008514},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_800[MV_MAX_DDR3_STATIC_SIZE] = {

	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0             2               3               1 */
	{0x000016A0, 0xC0020213},
	/*1            2               2               6 */
	{0x000016A0, 0xC0420108},
	/*2            2               3               16 */
	{0x000016A0, 0xC0820210},
	/*3            2               1               26 */
	{0x000016A0, 0xC0C20108},
	/*4            2               2               29 */
	{0x000016A0, 0xC102011A},
	/*5            2               2               13 */
	{0x000016A0, 0xC1420300},
	/*6            2               3               6 */
	{0x000016A0, 0xC1820204},
	/*7            2               1               31 */
	{0x000016A0, 0xC1C20106},
	/*8            2               2               22 */
	{0x000016A0, 0xC2020112},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC000620B},
	/*1 */
	{0x000016A0, 0xC0408D16},
	/*2 */
	{0x000016A0, 0xC0806A0D},
	/*3 */
	{0x000016A0, 0xC0C03D02},
	/*4 */
	{0x000016A0, 0xC1004a05},
	/*5 */
	{0x000016A0, 0xC140A11B},
	/*6 */
	{0x000016A0, 0xC1805E0A},
	/*7 */
	{0x000016A0, 0xC1C06D0E},
	/*8 */
	{0x000016A0, 0xC200AD1E},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000C},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000E},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_rd_667_0[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0 */
	{0x000016A0, 0xC002010E},
	/*1 */
	{0x000016A0, 0xC042001E},
	/*2 */
	{0x000016A0, 0xC0820118},
	/*3 */
	{0x000016A0, 0xC0C2001E},
	/*4 */
	{0x000016A0, 0xC102010C},
	/*5 */
	{0x000016A0, 0xC1420102},
	/*6 */
	{0x000016A0, 0xC1820111},
	/*7 */
	{0x000016A0, 0xC1C2001C},
	/*8 */
	{0x000016A0, 0xC2020109},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0003600},
	/*1 */
	{0x000016A0, 0xC040690D},
	/*2 */
	{0x000016A0, 0xC0805207},
	/*3 */
	{0x000016A0, 0xC0C0A81D},
	/*4 */
	{0x000016A0, 0xC1009919},
	/*5 */
	{0x000016A0, 0xC1407911},
	/*6 */
	{0x000016A0, 0xC1803E02},
	/*7 */
	{0x000016A0, 0xC1C05107},
	/*8 */
	{0x000016A0, 0xC2008113},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_rd_667_1[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0 */
	{0x000016A0, 0xC0020106},
	/*1 */
	{0x000016A0, 0xC0420016},
	/*2 */
	{0x000016A0, 0xC0820117},
	/*3 */
	{0x000016A0, 0xC0C2000F},
	/*4 */
	{0x000016A0, 0xC1020105},
	/*5 */
	{0x000016A0, 0xC142001B},
	/*6 */
	{0x000016A0, 0xC182010C},
	/*7 */
	{0x000016A0, 0xC1C20011},
	/*8 */
	{0x000016A0, 0xC2020101},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0003600},
	/*1 */
	{0x000016A0, 0xC0406D0E},
	/*2 */
	{0x000016A0, 0xC0803600},
	/*3 */
	{0x000016A0, 0xC0C04504},
	/*4 */
	{0x000016A0, 0xC1009919},
	/*5 */
	{0x000016A0, 0xC1407911},
	/*6 */
	{0x000016A0, 0xC1803600},
	/*7 */
	{0x000016A0, 0xC1C0610B},
	/*8 */
	{0x000016A0, 0xC2008113},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_rd_667_2[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0 */
	{0x000016A0, 0xC002010C},
	/*1 */
	{0x000016A0, 0xC042001B},
	/*2 */
	{0x000016A0, 0xC082011D},
	/*3 */
	{0x000016A0, 0xC0C20015},
	/*4 */
	{0x000016A0, 0xC102010B},
	/*5 */
	{0x000016A0, 0xC1420101},
	/*6 */
	{0x000016A0, 0xC1820113},
	/*7 */
	{0x000016A0, 0xC1C20017},
	/*8 */
	{0x000016A0, 0xC2020107},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0003600},
	/*1 */
	{0x000016A0, 0xC0406D0E},
	/*2 */
	{0x000016A0, 0xC0803600},
	/*3 */
	{0x000016A0, 0xC0C04504},
	/*4 */
	{0x000016A0, 0xC1009919},
	/*5 */
	{0x000016A0, 0xC1407911},
	/*6 */
	{0x000016A0, 0xC180B11F},
	/*7 */
	{0x000016A0, 0xC1C0610B},
	/*8 */
	{0x000016A0, 0xC2008113},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_db_667_M[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/* CS 0 */
	/*0             2               3               1 */
	{0x000016A0, 0xC0020103},
	/*1            2               2               6 */
	{0x000016A0, 0xC0420012},
	/*2            2               3               16 */
	{0x000016A0, 0xC0820113},
	/*3            2               1               26 */
	{0x000016A0, 0xC0C20012},
	/*4            2               2               29 */
	{0x000016A0, 0xC1020100},
	/*5            2               2               13 */
	{0x000016A0, 0xC1420016},
	/*6            2               3               6 */
	{0x000016A0, 0xC1820109},
	/*7            2               1               31 */
	{0x000016A0, 0xC1C20010},
	/*8            2               2               22 */
	{0x000016A0, 0xC2020112},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC000b11F},
	/*1 */
	{0x000016A0, 0xC040690D},
	/*2 */
	{0x000016A0, 0xC0803600},
	/*3 */
	{0x000016A0, 0xC0C0a81D},
	/*4 */
	{0x000016A0, 0xC1009919},
	/*5 */
	{0x000016A0, 0xC1407911},
	/*6 */
	{0x000016A0, 0xC180ad1e},
	/*7 */
	{0x000016A0, 0xC1C04d06},
	/*8 */
	{0x000016A0, 0xC2008514},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	/* CS 1 */

	{0x000016A0, 0xC0060103},
	/*1            2               2               6 */
	{0x000016A0, 0xC0460012},
	/*2            2               3               16 */
	{0x000016A0, 0xC0860113},
	/*3            2               1               26 */
	{0x000016A0, 0xC0C60012},
	/*4            2               2               29 */
	{0x000016A0, 0xC1060100},
	/*5            2               2               13 */
	{0x000016A0, 0xC1460016},
	/*6            2               3               6 */
	{0x000016A0, 0xC1860109},
	/*7            2               1               31 */
	{0x000016A0, 0xC1C60010},
	/*8            2               2               22 */
	{0x000016A0, 0xC2060112},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC004b11F},
	/*1 */
	{0x000016A0, 0xC044690D},
	/*2 */
	{0x000016A0, 0xC0843600},
	/*3 */
	{0x000016A0, 0xC0C4a81D},
	/*4 */
	{0x000016A0, 0xC1049919},
	/*5 */
	{0x000016A0, 0xC1447911},
	/*6 */
	{0x000016A0, 0xC184ad1e},
	/*7 */
	{0x000016A0, 0xC1C44d06},
	/*8 */
	{0x000016A0, 0xC2048514},

	/*center DQS on read cycle */
	{0x000016A0, 0xC807000F},

	/* Both CS */

	{0x00001538, 0x00000B0B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x00000F0F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_rd_667_3[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0 */
	{0x000016A0, 0xC0020118},
	/*1 */
	{0x000016A0, 0xC0420108},
	/*2 */
	{0x000016A0, 0xC0820202},
	/*3 */
	{0x000016A0, 0xC0C20108},
	/*4 */
	{0x000016A0, 0xC1020117},
	/*5 */
	{0x000016A0, 0xC142010C},
	/*6 */
	{0x000016A0, 0xC182011B},
	/*7 */
	{0x000016A0, 0xC1C20107},
	/*8 */
	{0x000016A0, 0xC2020113},

	/* Write Leveling */
	/*0 */
	{0x000016A0, 0xC0003600},
	/*1 */
	{0x000016A0, 0xC0406D0E},
	/*2 */
	{0x000016A0, 0xC0805207},
	/*3 */
	{0x000016A0, 0xC0C0A81D},
	/*4 */
	{0x000016A0, 0xC1009919},
	/*5 */
	{0x000016A0, 0xC1407911},
	/*6 */
	{0x000016A0, 0xC1803E02},
	/*7 */
	{0x000016A0, 0xC1C04D06},
	/*8 */
	{0x000016A0, 0xC2008113},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},

	{0x00001538, 0x0000000B},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000F},	/*Read Data Ready Delay Register */

	/*init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

MV_DRAM_TRAINING_INIT ddr3_pcac_600[MV_MAX_DDR3_STATIC_SIZE] = {
	/* Read Leveling */
	/*PUP   RdSampleDly (+CL)       Phase   RL ADLL value */
	/*0 */
	{0x000016A0, 0xC0020404},
	/* 1           2               2               6 */
	{0x000016A0, 0xC042031E},
	/* 2           2               3               16 */
	{0x000016A0, 0xC0820411},
	/* 3           2               1               26 */
	{0x000016A0, 0xC0C20400},
	/* 4           2               2               29 */
	{0x000016A0, 0xC1020404},
	/* 5           2               2               13 */
	{0x000016A0, 0xC142031D},
	/* 6           2               3               6 */
	{0x000016A0, 0xC182040C},
	/* 7           2               1               31 */
	{0x000016A0, 0xC1C2031B},
	/* 8           2               2               22 */
	{0x000016A0, 0xC2020112},

	/*  Write Leveling */
	/* 0 */
	{0x000016A0, 0xC0004905},
	/* 1 */
	{0x000016A0, 0xC040A81D},
	/* 2 */
	{0x000016A0, 0xC0804504},
	/* 3 */
	{0x000016A0, 0xC0C08013},
	/* 4 */
	{0x000016A0, 0xC1004504},
	/* 5 */
	{0x000016A0, 0xC140A81D},
	/* 6 */
	{0x000016A0, 0xC1805909},
	/* 7 */
	{0x000016A0, 0xC1C09418},
	/* 8 */
	{0x000016A0, 0xC2006D0E},

	/*center DQS on read cycle */
	{0x000016A0, 0xC803000F},
	{0x00001538, 0x00000009},	/*Read Data Sample Delays Register */
	{0x0000153C, 0x0000000D},	/*Read Data Ready Delay Register */
	/* init DRAM */
	{0x00001480, 0x00000001},
	{0x0, 0x0}
};

#endif /* __AXP_TRAINING_STATIC_H */
