1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
|
/*
* Copyright (C) 2014 Freescale Semiconductor, Inc.
* Jason Liu <r64343@freescale.com>
*
* See file CREDITS for list of people who contributed to this
* project.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not write to the Free Software
* Foundation Inc. 51 Franklin Street Fifth Floor Boston,
* MA 02110-1301 USA
*
* 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
*/
/* image version */
#define __ASSEMBLY__
#include <config.h>
IMAGE_VERSION 2
/*
* Boot Device : one of spi, sd, eimnor, nand, sata:
* spinor: flash_offset: 0x0400
* nand: flash_offset: 0x0400
* sata: flash_offset: 0x0400
* sd/mmc: flash_offset: 0x0400
* eimnor: flash_offset: 0x1000
*/
#if defined(CONFIG_SYS_BOOT_EIMNOR)
BOOT_FROM nor
#else /* others has the same flash_offset as sd */
BOOT_FROM sd
#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, 0x020e0774, 0x000C0000
DATA 4, 0x020e0754, 0x00000000
DATA 4, 0x020e04ac, 0x00000030
DATA 4, 0x020e04b0, 0x00000030
DATA 4, 0x020e0464, 0x00000030
DATA 4, 0x020e0490, 0x00000030
DATA 4, 0x020e074c, 0x00000030
DATA 4, 0x020e0494, 0x00000030
DATA 4, 0x020e04a0, 0x00000000
DATA 4, 0x020e04b4, 0x00000030
DATA 4, 0x020e04b8, 0x00000030
DATA 4, 0x020e076c, 0x00000030
DATA 4, 0x020e0750, 0x00020000
DATA 4, 0x020e04bc, 0x00000028
DATA 4, 0x020e04c0, 0x00000028
DATA 4, 0x020e04c4, 0x00000028
DATA 4, 0x020e04c8, 0x00000028
DATA 4, 0x020e04cc, 0x00000028
DATA 4, 0x020e04d0, 0x00000028
DATA 4, 0x020e04d4, 0x00000028
DATA 4, 0x020e04d8, 0x00000028
DATA 4, 0x020e0760, 0x00020000
DATA 4, 0x020e0764, 0x00000028
DATA 4, 0x020e0770, 0x00000028
DATA 4, 0x020e0778, 0x00000028
DATA 4, 0x020e077c, 0x00000028
DATA 4, 0x020e0780, 0x00000028
DATA 4, 0x020e0784, 0x00000028
DATA 4, 0x020e078c, 0x00000028
DATA 4, 0x020e0748, 0x00000028
DATA 4, 0x020e0470, 0x00000028
DATA 4, 0x020e0474, 0x00000028
DATA 4, 0x020e0478, 0x00000028
DATA 4, 0x020e047c, 0x00000028
DATA 4, 0x020e0480, 0x00000028
DATA 4, 0x020e0484, 0x00000028
DATA 4, 0x020e0488, 0x00000028
DATA 4, 0x020e048c, 0x00000028
DATA 4, 0x021b0800, 0xa1390003
DATA 4, 0x021b080c, 0x001F001F
DATA 4, 0x021b0810, 0x001F001F
DATA 4, 0x021b480c, 0x001F001F
DATA 4, 0x021b4810, 0x001F001F
DATA 4, 0x021b083c, 0x42190217
DATA 4, 0x021b0840, 0x017B017B
DATA 4, 0x021b483c, 0x4176017B
DATA 4, 0x021b4840, 0x015F016C
DATA 4, 0x021b0848, 0x4C4C4D4C
DATA 4, 0x021b4848, 0x4A4D4C48
DATA 4, 0x021b0850, 0x3F3F3F40
DATA 4, 0x021b4850, 0x3538382E
DATA 4, 0x021b081c, 0x33333333
DATA 4, 0x021b0820, 0x33333333
DATA 4, 0x021b0824, 0x33333333
DATA 4, 0x021b0828, 0x33333333
DATA 4, 0x021b481c, 0x33333333
DATA 4, 0x021b4820, 0x33333333
DATA 4, 0x021b4824, 0x33333333
DATA 4, 0x021b4828, 0x33333333
DATA 4, 0x021b08b8, 0x00000800
DATA 4, 0x021b48b8, 0x00000800
DATA 4, 0x021b0004, 0x00020025
DATA 4, 0x021b0008, 0x00333030
DATA 4, 0x021b000c, 0x676B5313
DATA 4, 0x021b0010, 0xB66E8B63
DATA 4, 0x021b0014, 0x01FF00DB
DATA 4, 0x021b0018, 0x00001740
DATA 4, 0x021b001c, 0x00008000
DATA 4, 0x021b002c, 0x000026d2
DATA 4, 0x021b0030, 0x006B1023
DATA 4, 0x021b0040, 0x00000047
DATA 4, 0x021b0000, 0x841A0000
DATA 4, 0x021b001c, 0x04008032
DATA 4, 0x021b001c, 0x00008033
DATA 4, 0x021b001c, 0x00048031
DATA 4, 0x021b001c, 0x05208030
DATA 4, 0x021b001c, 0x04008040
DATA 4, 0x021b0020, 0x00005800
DATA 4, 0x021b0818, 0x00011117
DATA 4, 0x021b4818, 0x00011117
DATA 4, 0x021b0004, 0x00025565
DATA 4, 0x021b0404, 0x00011006
DATA 4, 0x021b001c, 0x00000000
/* set the default clock gate to save power */
DATA 4, 0x020c4068, 0x00C03F3F
DATA 4, 0x020c406c, 0x0030FC03
DATA 4, 0x020c4070, 0x0FFFC000
DATA 4, 0x020c4074, 0x3FF00000
DATA 4, 0x020c4078, 0xFFFFF300
DATA 4, 0x020c407c, 0x0F0000C3
DATA 4, 0x020c4080, 0x00000FFF
/* enable AXI cache for VDOA/VPU/IPU */
DATA 4, 0x020e0010, 0xF00000CF
/* set IPU AXI-id0 Qos=0xf(bypass) AXI-id1 Qos=0x7 */
DATA 4, 0x020e0018, 0x007F007F
DATA 4, 0x020e001c, 0x007F007F
|