/*
 * Copyright (C) 2016 Freescale Semiconductor, Inc.
 * Copyright 2017 NXP
 *
 * SPDX-License-Identifier:     GPL-2.0+
 */

#include <config.h>

.macro imx6dq_scm_lpddr2_512mb_setting
	ldr r0, =CCM_BASE_ADDR
	ldr r1, =0xffffffff
	str r1, [r0, #0x068]
	ldr r1, =0xffffffff
	str r1, [r0, #0x06c]
	ldr r1, =0xffffffff
	str r1, [r0, #0x070]
	ldr r1, =0xffffffff
	str r1, [r0, #0x074]
	ldr r1, =0xffffffff
	str r1, [r0, #0x078]
	ldr r1, =0xffffffff
	str r1, [r0, #0x07c]
	ldr r1, =0xffffffff
	str r1, [r0, #0x080]
	ldr r1, =0xffffffff
	str r1, [r0, #0x084]

	/* DDR clock to 400MHz */
	ldr r1, =0x00060324
	str r1, [r0, #0x018]
	/* AHB_ROOT_CLK change divide ratio from 4 to 3 for ENET */
	ldr r1, =0x00018900
	str r1, [r0, #0x014]

	ldr r0, =IOMUXC_BASE_ADDR
	ldr r1, =0x00080000
	str r1, [r0, #0x798]
	ldr r1, =0x00000000
	str r1, [r0, #0x758]
	ldr r1, =0x00000030

	str r1, [r0, #0x588]
	str r1, [r0, #0x594]

	str r1, [r0, #0x56c]
	str r1, [r0, #0x578]
	str r1, [r0, #0x74c]

	str r1, [r0, #0x57c]
	ldr r1, =0x00000000
	str r1, [r0, #0x58c]
	ldr r1, =0x00000030
	str r1, [r0, #0x59c]
	str r1, [r0, #0x5a0]
	str r1, [r0, #0x78c]

	ldr r1, =0x00020000
	str r1, [r0, #0x750]
	ldr r1, =0x00003030
	str r1, [r0, #0x5a8]
	str r1, [r0, #0x5b0]
	str r1, [r0, #0x524]
	str r1, [r0, #0x51c]
	str r1, [r0, #0x518]
	str r1, [r0, #0x50c]
	str r1, [r0, #0x5b8]
	str r1, [r0, #0x5c0]

	ldr r1, =0x00020000
	str r1, [r0, #0x774]

	ldr r1, =0x00000030
	str r1, [r0, #0x784]
	str r1, [r0, #0x788]
	str r1, [r0, #0x794]
	str r1, [r0, #0x79c]
	str r1, [r0, #0x7a0]
	str r1, [r0, #0x7a4]
	str r1, [r0, #0x7a8]
	str r1, [r0, #0x748]

	str r1, [r0, #0x5ac]
	str r1, [r0, #0x5b4]
	str r1, [r0, #0x528]
	str r1, [r0, #0x520]
	str r1, [r0, #0x514]
	str r1, [r0, #0x510]
	str r1, [r0, #0x5bc]
	str r1, [r0, #0x5c4]

	ldr r1, =0x00000020
	str r1, [r0, #0x590]
	str r1, [r0, #0x598]


	ldr r0, =MMDC_P0_BASE_ADDR

	/* DDR setup */
	ldr r2, =0x00008000
	str r2, [r0, #0x1c]

	/*SCM CONF*/
	ldr r2, =0x1B4700C7
	str r2, [r0, #0x85c]

	ldr r2, =0xA1390003
	str r2, [r0, #0x800]

	/* calibration required */
	ldr r2, =0x00400000
	str r2, [r0, #0x890]

	ldr r2, =0x44404044
	str r2, [r0, #0x848]

	ldr r2, =0x34343A38
	str r2, [r0, #0x850]

	ldr r2, =0x20000000
	str r2, [r0, #0x83c]
	ldr r2, =0x00000000
	str r2, [r0, #0x840]

	ldr r2, =0x33333333
	str r2, [r0, #0x81c]
	str r2, [r0, #0x820]
	str r2, [r0, #0x824]
	str r2, [r0, #0x828]
	ldr r2, =0xf3333333
	str r2, [r0, #0x82c]
	str r2, [r0, #0x830]
	str r2, [r0, #0x834]
	str r2, [r0, #0x838]

	ldr r2, =0x00000800
	str r2, [r0, #0x8b8]

	ldr r2, =0x00020036
	str r2, [r0, #0x4]
	ldr r2, =0x00000000
	str r2, [r0, #0x8]
	ldr r2, =0x33374133
	str r2, [r0, #0xc]

	ldr r2, =0x00100a82
	str r2, [r0, #0x10]

	ldr r2, =0x00000093
	str r2, [r0, #0x14]

	ldr r2, =0x0000174C
	str r2, [r0, #0x18]
	ldr r2, =0x00008000
	str r2, [r0, #0x1c]
	ldr r2, =0x0f9f26d2
	str r2, [r0, #0x2c]
	ldr r2, =0x00000010
	str r2, [r0, #0x30]
	ldr r2, =0x00190778
	str r2, [r0, #0x38]

	ldr r2, =0x0000004F
	str r2, [r0, #0x40]

	ldr r2, =0x83110000
	str r2, [r0, #0x0]

	/* Channel 0 */
	ldr r2, =0x003F8030
	str r2, [r0, #0x1c]
	ldr r2, =0xFF0A8030
	str r2, [r0, #0x1c]
	ldr r2, =0x82018030
	str r2, [r0, #0x1c]
	ldr r2, =0x04028030
	str r2, [r0, #0x1c]
	ldr r2, =0x04038030
	str r2, [r0, #0x1c]

	ldr r2, =0xA1390003
	str r2, [r0, #0x800]

	ldr r2, =0x00001800
	str r2, [r0, #0x20]

	ldr r2, =0x00000000
	str r2, [r0, #0x818]

	ldr r2, =0x00025576
	str r2, [r0, #0x4]

	ldr r2, =0x00011006
	str r2, [r0, #0x404]

	ldr r2, =0x00000000
	str r2, [r0, #0x1c]

	ldr r0, =IOMUXC_BASE_ADDR
	ldr r1, =0xF00000CF
	str r1, [r0, #0x10]
	ldr r1, =0x007F007F
	str r1, [r0, #0x18]
	ldr r1, =0x007F007F
	str r1, [r0, #0x1c]
.endm


.macro imx6dq_scm_lpddr2_1gb_setting
	ldr r0, =CCM_BASE_ADDR
	ldr r1, =0xffffffff
	str r1, [r0, #0x068]
	ldr r1, =0xffffffff
	str r1, [r0, #0x06c]
	ldr r1, =0xffffffff
	str r1, [r0, #0x070]
	ldr r1, =0xffffffff
	str r1, [r0, #0x074]
	ldr r1, =0xffffffff
	str r1, [r0, #0x078]
	ldr r1, =0xffffffff
	str r1, [r0, #0x07c]
	ldr r1, =0xffffffff
	str r1, [r0, #0x080]
	ldr r1, =0xffffffff
	str r1, [r0, #0x084]

	/* DDR clock to 400MHz */
	ldr r1, =0x00060324
	str r1, [r0, #0x018]
	/* AHB_ROOT_CLK change divide ratio from 4 to 3 for ENET */
	ldr r1, =0x00018900
	str r1, [r0, #0x014]

	ldr r0, =IOMUXC_BASE_ADDR
	ldr r1, =0x00080000
	str r1, [r0, #0x798]
	ldr r1, =0x00000000
	str r1, [r0, #0x758]
	ldr r1, =0x00000030

	str r1, [r0, #0x588]
	str r1, [r0, #0x594]

	str r1, [r0, #0x56c]
	str r1, [r0, #0x578]
	str r1, [r0, #0x74c]

	str r1, [r0, #0x57c]
	ldr r1, =0x00000000
	str r1, [r0, #0x58c]
	ldr r1, =0x00000030
	str r1, [r0, #0x59c]
	str r1, [r0, #0x5a0]
	str r1, [r0, #0x78c]

	ldr r1, =0x00020000
	str r1, [r0, #0x750]
	ldr r1, =0x00003030
	str r1, [r0, #0x5a8]
	str r1, [r0, #0x5b0]
	str r1, [r0, #0x524]
	str r1, [r0, #0x51c]
	str r1, [r0, #0x518]
	str r1, [r0, #0x50c]
	str r1, [r0, #0x5b8]
	str r1, [r0, #0x5c0]

	ldr r1, =0x00020000
	str r1, [r0, #0x774]

	ldr r1, =0x00000030
	str r1, [r0, #0x784]
	str r1, [r0, #0x788]
	str r1, [r0, #0x794]
	str r1, [r0, #0x79c]
	str r1, [r0, #0x7a0]
	str r1, [r0, #0x7a4]
	str r1, [r0, #0x7a8]
	str r1, [r0, #0x748]

	str r1, [r0, #0x5ac]
	str r1, [r0, #0x5b4]
	str r1, [r0, #0x528]
	str r1, [r0, #0x520]
	str r1, [r0, #0x514]
	str r1, [r0, #0x510]
	str r1, [r0, #0x5bc]
	str r1, [r0, #0x5c4]

	ldr r1, =0x00000020
	str r1, [r0, #0x590]
	str r1, [r0, #0x598]


	ldr r0, =MMDC_P0_BASE_ADDR
	ldr r1, =MMDC_P1_BASE_ADDR

	/* DDR setup */
	ldr r2, =0x00008000
	str r2, [r0, #0x1c]
	str r2, [r1, #0x1c]

	/*SCM CONF*/
	ldr r2, =0x1B4700C7
	str r2, [r0, #0x85c]
	str r2, [r1, #0x85c]

	ldr r2, =0xA1390003
	str r2, [r0, #0x800]

	/* calibration required */
	ldr r2, =0x00400000
	str r2, [r0, #0x890]
	str r2, [r1, #0x890]

	ldr r2, =0x44404044
	str r2, [r0, #0x848]
	ldr r2, =0x44443A46
	str r2, [r1, #0x848]

	ldr r2, =0x34343A38
	str r2, [r0, #0x850]
	ldr r2, =0x3E2E483C
	str r2, [r1, #0x850]

	ldr r2, =0x20000000
	str r2, [r0, #0x83c]
	ldr r2, =0x00000000
	str r2, [r0, #0x840]
	ldr r2, =0x20000000
	str r2, [r1, #0x83c]
	ldr r2, =0x00000000
	str r2, [r1, #0x840]

	ldr r2, =0x33333333
	str r2, [r0, #0x81c]
	str r2, [r0, #0x820]
	str r2, [r0, #0x824]
	str r2, [r0, #0x828]
	str r2, [r1, #0x81c]
	str r2, [r1, #0x820]
	str r2, [r1, #0x824]
	str r2, [r1, #0x828]
	ldr r2, =0xf3333333
	str r2, [r0, #0x82c]
	str r2, [r0, #0x830]
	str r2, [r0, #0x834]
	str r2, [r0, #0x838]
	str r2, [r1, #0x82c]
	str r2, [r1, #0x830]
	str r2, [r1, #0x834]
	str r2, [r1, #0x838]

	ldr r2, =0x00000800
	str r2, [r0, #0x8b8]
	str r2, [r1, #0x8b8]

	ldr r2, =0x00020036
	str r2, [r0, #0x4]
	ldr r2, =0x00000000
	str r2, [r0, #0x8]
	ldr r2, =0x33374133
	str r2, [r0, #0xc]

	ldr r2, =0x00100a82
	str r2, [r0, #0x10]

	ldr r2, =0x00000093
	str r2, [r0, #0x14]

	ldr r2, =0x0000174C
	str r2, [r0, #0x18]
	ldr r2, =0x00008000
	str r2, [r0, #0x1c]
	ldr r2, =0x0f9f26d2
	str r2, [r0, #0x2c]
	ldr r2, =0x00000010
	str r2, [r0, #0x30]
	ldr r2, =0x00190778
	str r2, [r0, #0x38]
#ifdef CONFIG_INTERLEAVING_MODE
	ldr r2, =0x00000053
#else
	ldr r2, =0x0000004F
#endif
	str r2, [r0, #0x40]

	ldr r2, =0x83110000
	str r2, [r0, #0x0]

	ldr r2, =0x00020036
	str r2, [r1, #0x4]
	ldr r2, =0x00000000
	str r2, [r1, #0x8]
	ldr r2, =0x33374133
	str r2, [r1, #0xc]
	ldr r2, =0x00100a82
	str r2, [r1, #0x10]
	ldr r2, =0x00000093
	str r2, [r1, #0x14]

	ldr r2, =0x0000174C
	str r2, [r1, #0x18]
	ldr r2, =0x00008000
	str r2, [r1, #0x1c]

	ldr r2, =0x0f9f26d2
	str r2, [r1, #0x2c]

	ldr r2, =0x00000010
	str r2, [r1, #0x30]

	ldr r2, =0x00190778
	str r2, [r1, #0x38]

#ifdef CONFIG_INTERLEAVING_MODE
	ldr r2, =0x00000013
#else
	ldr r2, =0x00000017
#endif
	str r2, [r1, #0x40]

	ldr r2, =0x83110000
	str r2, [r1, #0x0]

	/* Channel 0 */
	ldr r2, =0x003F8030
	str r2, [r0, #0x1c]
	ldr r2, =0xFF0A8030
	str r2, [r0, #0x1c]
	ldr r2, =0x82018030
	str r2, [r0, #0x1c]
	ldr r2, =0x04028030
	str r2, [r0, #0x1c]
	ldr r2, =0x04038030
	str r2, [r0, #0x1c]

	/* Channel 1 */
	ldr r2, =0x003F8030
	str r2, [r1, #0x1c]
	ldr r2, =0xFF0A8030
	str r2, [r1, #0x1c]
	ldr r2, =0x82018030
	str r2, [r1, #0x1c]
	ldr r2, =0x04028030
	str r2, [r1, #0x1c]
	ldr r2, =0x04038030
	str r2, [r1, #0x1c]

	ldr r2, =0xA1390003
	str r2, [r0, #0x800]

	ldr r2, =0x00001800
	str r2, [r0, #0x20]
	str r2, [r1, #0x20]

	ldr r2, =0x00000000
	str r2, [r0, #0x818]
	str r2, [r1, #0x818]

	ldr r2, =0x00025576
	str r2, [r0, #0x4]
	str r2, [r1, #0x4]

	ldr r2, =0x00011006
	str r2, [r0, #0x404]
	str r2, [r1, #0x404]

	ldr r2, =0x00000000
	str r2, [r0, #0x1c]
	str r2, [r1, #0x1c]

	ldr r0, =IOMUXC_BASE_ADDR
	ldr r1, =0xF00000CF
	str r1, [r0, #0x10]
	ldr r1, =0x007F007F
	str r1, [r0, #0x18]
	ldr r1, =0x007F007F
	str r1, [r0, #0x1c]
.endm


.macro imx6dq_scm_lpddr2_2gb_setting
	ldr r0, =CCM_BASE_ADDR
	ldr r1, =0xffffffff
	str r1, [r0, #0x068]
	ldr r1, =0xffffffff
	str r1, [r0, #0x06c]
	ldr r1, =0xffffffff
	str r1, [r0, #0x070]
	ldr r1, =0xffffffff
	str r1, [r0, #0x074]
	ldr r1, =0xffffffff
	str r1, [r0, #0x078]
	ldr r1, =0xffffffff
	str r1, [r0, #0x07c]
	ldr r1, =0xffffffff
	str r1, [r0, #0x080]
	ldr r1, =0xffffffff
	str r1, [r0, #0x084]

	/* DDR clock to 400MHz */
	ldr r1, =0x00060324
	str r1, [r0, #0x018]
	/* AHB_ROOT_CLK change divide ratio from 4 to 3 for ENET */
	ldr r1, =0x00018900
	str r1, [r0, #0x014]

	ldr r0, =IOMUXC_BASE_ADDR
	ldr r1, =0x00080000
	str r1, [r0, #0x798]
	ldr r1, =0x00000000
	str r1, [r0, #0x758]
	ldr r1, =0x00000030

	str r1, [r0, #0x588]
	str r1, [r0, #0x594]

	str r1, [r0, #0x56c]
	str r1, [r0, #0x578]
	str r1, [r0, #0x74c]

	str r1, [r0, #0x57c]
	ldr r1, =0x00000000
	str r1, [r0, #0x58c]
	ldr r1, =0x00000030
	str r1, [r0, #0x59c]
	str r1, [r0, #0x5a0]
	str r1, [r0, #0x78c]

	ldr r1, =0x00020000
	str r1, [r0, #0x750]
	ldr r1, =0x00003030
	str r1, [r0, #0x5a8]
	str r1, [r0, #0x5b0]
	str r1, [r0, #0x524]
	str r1, [r0, #0x51c]
	str r1, [r0, #0x518]
	str r1, [r0, #0x50c]
	str r1, [r0, #0x5b8]
	str r1, [r0, #0x5c0]

	ldr r1, =0x00020000
	str r1, [r0, #0x774]

	ldr r1, =0x00000030
	str r1, [r0, #0x784]
	str r1, [r0, #0x788]
	str r1, [r0, #0x794]
	str r1, [r0, #0x79c]
	str r1, [r0, #0x7a0]
	str r1, [r0, #0x7a4]
	str r1, [r0, #0x7a8]
	str r1, [r0, #0x748]

	str r1, [r0, #0x5ac]
	str r1, [r0, #0x5b4]
	str r1, [r0, #0x528]
	str r1, [r0, #0x520]
	str r1, [r0, #0x514]
	str r1, [r0, #0x510]
	str r1, [r0, #0x5bc]
	str r1, [r0, #0x5c4]

	ldr r1, =0x00000020
	str r1, [r0, #0x590]
	str r1, [r0, #0x598]


	ldr r0, =MMDC_P0_BASE_ADDR
	ldr r1, =MMDC_P1_BASE_ADDR

	/* DDR setup */
	ldr r2, =0x00008000
	str r2, [r0, #0x1c]
	str r2, [r1, #0x1c]

	/*SCM CONF*/
	ldr r2, =0x1B4700C7
	str r2, [r0, #0x85c]
	str r2, [r1, #0x85c]

	ldr r2, =0xA1390003
	str r2, [r0, #0x800]

	/* calibration required */
	ldr r2, =0x00400000
	str r2, [r0, #0x890]
	str r2, [r1, #0x890]

	ldr r2, =0x44404044
	str r2, [r0, #0x848]
	ldr r2, =0x44443A46
	str r2, [r1, #0x848]

	ldr r2, =0x34343A38
	str r2, [r0, #0x850]
	ldr r2, =0x3E2E483C
	str r2, [r1, #0x850]

	ldr r2, =0x20000000
	str r2, [r0, #0x83c]
	ldr r2, =0x00000000
	str r2, [r0, #0x840]
	ldr r2, =0x20000000
	str r2, [r1, #0x83c]
	ldr r2, =0x00000000
	str r2, [r1, #0x840]

	ldr r2, =0x33333333
	str r2, [r0, #0x81c]
	str r2, [r0, #0x820]
	str r2, [r0, #0x824]
	str r2, [r0, #0x828]
	str r2, [r1, #0x81c]
	str r2, [r1, #0x820]
	ldr r2, =0x00000000
	str r2, [r1, #0x824]
	ldr r2, =0x33333333
	str r2, [r1, #0x828]
	ldr r2, =0xf3333333
	str r2, [r0, #0x82c]
	str r2, [r0, #0x830]
	str r2, [r0, #0x834]
	str r2, [r0, #0x838]
	str r2, [r1, #0x82c]
	str r2, [r1, #0x830]
	ldr r2, =0x00000000
	str r2, [r1, #0x834]
	ldr r2, =0xf3333333
	str r2, [r1, #0x838]

	ldr r2, =0x00000800
	str r2, [r0, #0x8b8]
	str r2, [r1, #0x8b8]

	ldr r2, =0x00020036
	str r2, [r0, #0x4]
	ldr r2, =0x00000000
	str r2, [r0, #0x8]
	ldr r2, =0x33374133
	str r2, [r0, #0xc]

	ldr r2, =0x00100a82
	str r2, [r0, #0x10]

	ldr r2, =0x00000093
	str r2, [r0, #0x14]

	ldr r2, =0x0000174C
	str r2, [r0, #0x18]
	ldr r2, =0x00008000
	str r2, [r0, #0x1c]
	ldr r2, =0x0f9f26d2
	str r2, [r0, #0x2c]
	ldr r2, =0x009F0E10
	str r2, [r0, #0x30]
	ldr r2, =0x00190778
	str r2, [r0, #0x38]
#ifdef CONFIG_INTERLEAVING_MODE
	ldr r2, =0x00000063
#else
	ldr r2, =0x0000005F
#endif
	str r2, [r0, #0x40]

	ldr r2, =0xC3110000
	str r2, [r0, #0x0]

	ldr r2, =0x00020036
	str r2, [r1, #0x4]
	ldr r2, =0x00000000
	str r2, [r1, #0x8]
	ldr r2, =0x33374133
	str r2, [r1, #0xc]
	ldr r2, =0x00100a82
	str r2, [r1, #0x10]
	ldr r2, =0x00000093
	str r2, [r1, #0x14]

	ldr r2, =0x0000174C
	str r2, [r1, #0x18]
	ldr r2, =0x00008000
	str r2, [r1, #0x1c]

	ldr r2, =0x0f9f26d2
	str r2, [r1, #0x2c]

	ldr r2, =0x00000010
	str r2, [r1, #0x30]

	ldr r2, =0x00190778
	str r2, [r1, #0x38]

#ifdef CONFIG_INTERLEAVING_MODE
	ldr r2, =0x00000023
#else
	ldr r2, =0x00000027
#endif
	str r2, [r1, #0x40]

	ldr r2, =0xC3110000
	str r2, [r1, #0x0]

	/* Channel 0 */
	/* CS0 */
	ldr r2, =0x003F8030
	str r2, [r0, #0x1c]
	ldr r2, =0xFF0A8030
	str r2, [r0, #0x1c]
	ldr r2, =0x82018030
	str r2, [r0, #0x1c]
	ldr r2, =0x04028030
	str r2, [r0, #0x1c]
	ldr r2, =0x04038030
	str r2, [r0, #0x1c]
	/* CS1 */
	ldr r2, =0x003F8038
	str r2, [r0, #0x1c]
	ldr r2, =0xFF0A8038
	str r2, [r0, #0x1c]
	ldr r2, =0x82018038
	str r2, [r0, #0x1c]
	ldr r2, =0x04028038
	str r2, [r0, #0x1c]
	ldr r2, =0x04038038
	str r2, [r0, #0x1c]

	/* Channel 1 */
	/* CS0 */
	ldr r2, =0x003F8030
	str r2, [r1, #0x1c]
	ldr r2, =0xFF0A8030
	str r2, [r1, #0x1c]
	ldr r2, =0x82018030
	str r2, [r1, #0x1c]
	ldr r2, =0x04028030
	str r2, [r1, #0x1c]
	ldr r2, =0x04038030
	str r2, [r1, #0x1c]
	/* CS1 */
	ldr r2, =0x003F8038
	str r2, [r1, #0x1c]
	ldr r2, =0xFF0A8038
	str r2, [r1, #0x1c]
	ldr r2, =0x82018038
	str r2, [r1, #0x1c]
	ldr r2, =0x04028038
	str r2, [r1, #0x1c]
	ldr r2, =0x04038038
	str r2, [r1, #0x1c]

	ldr r2, =0xA1390003
	str r2, [r0, #0x800]

	ldr r2, =0x00001800
	str r2, [r0, #0x20]
	str r2, [r1, #0x20]

	ldr r2, =0x00000000
	str r2, [r0, #0x818]
	str r2, [r1, #0x818]

	ldr r2, =0x00025576
	str r2, [r0, #0x4]
	str r2, [r1, #0x4]

	ldr r2, =0x00011006
	str r2, [r0, #0x404]
	str r2, [r1, #0x404]

	ldr r2, =0x00000000
	str r2, [r0, #0x1c]
	str r2, [r1, #0x1c]

	ldr r0, =IOMUXC_BASE_ADDR
	ldr r1, =0xF00000CF
	str r1, [r0, #0x10]
	ldr r1, =0x007F007F
	str r1, [r0, #0x18]
	ldr r1, =0x007F007F
	str r1, [r0, #0x1c]
.endm


.macro imx6_ddr_setting
#if defined (CONFIG_SCM_LPDDR2_512MB)
	imx6dq_scm_lpddr2_512mb_setting
#elif defined (CONFIG_SCM_LPDDR2_2GB)
	imx6dq_scm_lpddr2_2gb_setting
#else
	imx6dq_scm_lpddr2_1gb_setting
#endif
.endm

.macro imx6_clock_gating
.endm

.macro imx6_qos_setting
.endm

/* include the common plugin code here */
#include <asm/arch/mx6_plugin.S>
