/*
 * Copyright (C) 2015 Freescale Semiconductor, Inc.
 * Copyright 2017 NXP
 *
 * SPDX-License-Identifier:	GPL-2.0+
 *
 * Refer docs/README.imxmage for more details about how-to configure
 * and create imximage boot image
 *
 * The syntax is taken as close as possible with the kwbimage
 */

#define __ASSEMBLY__
#include <config.h>

/* image version */

IMAGE_VERSION 2

/*
 * Boot Device : one of
 * spi/sd/nand/onenand, qspi/nor
 */

#ifdef CONFIG_QSPI_BOOT
BOOT_FROM       qspi
#elif defined(CONFIG_NOR_BOOT)
BOOT_FROM       nor
#else
BOOT_FROM       sd
#endif

#ifdef CONFIG_USE_IMXIMG_PLUGIN
/*PLUGIN    plugin-binary-file    IRAM_FREE_START_ADDR*/
PLUGIN	board/freescale/mx6ul_14x14_evk/plugin.bin 0x00907000
#else

#ifdef CONFIG_SECURE_BOOT
CSF CONFIG_CSF_SIZE
#endif

/*
 * Device Configuration Data (DCD)
 *
 * Each entry must have the format:
 * Addr-type           Address        Value
 *
 * where:
 *	Addr-type register length (1,2 or 4 bytes)
 *	Address	  absolute address of the register
 *	value	  value to be stored in the register
 */

DATA 4 0x020c4068 0xffffffff
DATA 4 0x020c406c 0xffffffff
DATA 4 0x020c4070 0xffffffff
DATA 4 0x020c4074 0xffffffff
DATA 4 0x020c4078 0xffffffff
DATA 4 0x020c407c 0xffffffff
DATA 4 0x020c4080 0xffffffff
DATA 4 0x020c4084 0xffffffff

#ifdef CONFIG_IMX_OPTEE
DATA 4 0x20e4024 0x00000001
CHECK_BITS_SET 4 0x20e4024 0x1
#endif

DATA 4 0x020E04B4 0x00080000
DATA 4 0x020E04AC 0x00000000
DATA 4 0x020E027C 0x00000030
DATA 4 0x020E0250 0x00000030
DATA 4 0x020E024C 0x00000030
DATA 4 0x020E0490 0x00000030
DATA 4 0x020E0288 0x00000030
DATA 4 0x020E0270 0x00000000
DATA 4 0x020E0260 0x00000000
DATA 4 0x020E0264 0x00000000
DATA 4 0x020E04A0 0x00000030
DATA 4 0x020E0494 0x00020000
DATA 4 0x020E0280 0x00003030
DATA 4 0x020E0284 0x00003030
DATA 4 0x020E04B0 0x00020000
DATA 4 0x020E0498 0x00000030
DATA 4 0x020E04A4 0x00000030
DATA 4 0x020E0244 0x00000030
DATA 4 0x020E0248 0x00000030

DATA 4 0x021B001C 0x00008000
DATA 4 0x021B085C 0x1b4700c7
DATA 4 0x021B0800 0xA1390003
DATA 4 0x021B0890 0x00470000
DATA 4 0x021B08b8 0x00000800

DATA 4 0x021B081C 0x33333333
DATA 4 0x021B0820 0x33333333
DATA 4 0x021B082C 0xf3333333
DATA 4 0x021B0830 0xf3333333
DATA 4 0x021B083C 0x20000000
DATA 4 0x021B0848 0x4040484F
DATA 4 0x021B0850 0x40405247
DATA 4 0x021B08C0 0x00922012
DATA 4 0x021B08b8 0x00000800

DATA 4 0x021B0004 0x00020012
DATA 4 0x021B0008 0x00000000
DATA 4 0x021B000C 0x33374133
DATA 4 0x021B0010 0x00100A82
DATA 4 0x021B0038 0x00170557
DATA 4 0x021B0014 0x00000093
DATA 4 0x021B0018 0x00001748
DATA 4 0x021B001C 0x00008000
DATA 4 0x021B002C 0x0F9F0682
DATA 4 0x021B0030 0x009F0010
DATA 4 0x021B0040 0x00000047
DATA 4 0x021B0000 0x83100000
DATA 4 0x021B001C 0x00008010
DATA 4 0x021B001C 0x003F8030
DATA 4 0x021B001C 0xFF0A8030
DATA 4 0x021B001C 0x82018030
DATA 4 0x021B001C 0x04028030
DATA 4 0x021B001C 0x01038030
DATA 4 0x021B0020 0x00001800
DATA 4 0x021B0818 0x00000000
DATA 4 0x021B0800 0xA1310003
DATA 4 0x021B0004 0x00025576
DATA 4 0x021B0404 0x00011006
DATA 4 0x021B001C 0x00000000
#endif
