summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2010-06-30 05:02:58 +0000
committerMichael Sevakis <jethead71@rockbox.org>2010-06-30 05:02:58 +0000
commit6920d2b9cdba1177261e04d8712956bff430025e (patch)
tree4cec6aebd1ccc6985a9280f565276260289ae9be
parente286b0bbc04a34c181978efce19c6d0814e228c0 (diff)
downloadrockbox-6920d2b9cdba1177261e04d8712956bff430025e.tar.gz
rockbox-6920d2b9cdba1177261e04d8712956bff430025e.zip
i.MX31: Only include the SDMA code that will be used on the target. Simplify the script selection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27189 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/arm/imx31/sdma-imx31.c143
-rw-r--r--firmware/target/arm/imx31/sdma_script_code.h638
2 files changed, 73 insertions, 708 deletions
diff --git a/firmware/target/arm/imx31/sdma-imx31.c b/firmware/target/arm/imx31/sdma-imx31.c
index 381e589c08..39f4e29554 100644
--- a/firmware/target/arm/imx31/sdma-imx31.c
+++ b/firmware/target/arm/imx31/sdma-imx31.c
@@ -35,8 +35,6 @@
35 35
36/* Cut down to bare bones essentials */ 36/* Cut down to bare bones essentials */
37 37
38/* Script information that depends on system revision */
39static struct sdma_script_start_addrs script_info;
40/* Mask of channels with callback enabled */ 38/* Mask of channels with callback enabled */
41static unsigned long sdma_enabled_ints = 0; 39static unsigned long sdma_enabled_ints = 0;
42/* One channel control block per channel in physically mapped device RAM */ 40/* One channel control block per channel in physically mapped device RAM */
@@ -71,79 +69,6 @@ static void __attribute__((interrupt("IRQ"))) SDMA_HANDLER(void)
71 } 69 }
72} 70}
73 71
74/* Initialize script information based upon the system revision */
75static void init_script_info(void)
76{
77 if (iim_system_rev() == IIM_SREV_1_0)
78 {
79 /* Channel script info */
80 script_info.app_2_mcu_addr = app_2_mcu_ADDR_1;
81 script_info.ap_2_ap_addr = ap_2_ap_ADDR_1;
82 script_info.ap_2_bp_addr = -1;
83 script_info.bp_2_ap_addr = -1;
84 script_info.loopback_on_dsp_side_addr = -1;
85 script_info.mcu_2_app_addr = mcu_2_app_ADDR_1;
86 script_info.mcu_2_shp_addr = mcu_2_shp_ADDR_1;
87 script_info.mcu_interrupt_only_addr = -1;
88 script_info.shp_2_mcu_addr = shp_2_mcu_ADDR_1;
89 script_info.uartsh_2_mcu_addr = uartsh_2_mcu_ADDR_1;
90 script_info.uart_2_mcu_addr = uart_2_mcu_ADDR_1;
91 script_info.dptc_dvfs_addr = dptc_dvfs_ADDR_1;
92 script_info.firi_2_mcu_addr = firi_2_mcu_ADDR_1;
93 script_info.firi_2_per_addr = -1;
94 script_info.mshc_2_mcu_addr = mshc_2_mcu_ADDR_1;
95 script_info.per_2_app_addr = -1;
96 script_info.per_2_firi_addr = -1;
97 script_info.per_2_shp_addr = -1;
98 script_info.mcu_2_ata_addr = mcu_2_ata_ADDR_1;
99 script_info.mcu_2_firi_addr = mcu_2_firi_ADDR_1;
100 script_info.mcu_2_mshc_addr = mcu_2_mshc_ADDR_1;
101 script_info.ata_2_mcu_addr = ata_2_mcu_ADDR_1;
102 script_info.uartsh_2_per_addr = -1;
103 script_info.shp_2_per_addr = -1;
104 script_info.uart_2_per_addr = -1;
105 script_info.app_2_per_addr = -1;
106 /* Main code block info */
107 script_info.ram_code_size = RAM_CODE_SIZE_1;
108 script_info.ram_code_start_addr = RAM_CODE_START_ADDR_1;
109 script_info.mcu_start_addr = (unsigned long)sdma_code_1;
110 }
111 else
112 {
113 /* Channel script info */
114 script_info.app_2_mcu_addr = app_2_mcu_patched_ADDR_2;
115 script_info.ap_2_ap_addr = ap_2_ap_ADDR_2;
116 script_info.ap_2_bp_addr = ap_2_bp_ADDR_2;
117 script_info.bp_2_ap_addr = bp_2_ap_ADDR_2;
118 script_info.loopback_on_dsp_side_addr = -1;
119 script_info.mcu_2_app_addr = mcu_2_app_patched_ADDR_2;
120 script_info.mcu_2_shp_addr = mcu_2_shp_patched_ADDR_2;
121 script_info.mcu_interrupt_only_addr = -1;
122 script_info.shp_2_mcu_addr = shp_2_mcu_patched_ADDR_2;
123 script_info.uartsh_2_mcu_addr = uartsh_2_mcu_patched_ADDR_2;
124 script_info.uart_2_mcu_addr = uart_2_mcu_patched_ADDR_2;
125 script_info.dptc_dvfs_addr = -1;
126 script_info.firi_2_mcu_addr = firi_2_mcu_ADDR_2;
127 script_info.firi_2_per_addr = -1;
128 script_info.mshc_2_mcu_addr = -1;
129 script_info.per_2_app_addr = -1;
130 script_info.per_2_firi_addr = -1;
131 script_info.per_2_shp_addr = per_2_shp_ADDR_2;
132 script_info.mcu_2_ata_addr = mcu_2_ata_ADDR_2;
133 script_info.mcu_2_firi_addr = mcu_2_firi_ADDR_2;
134 script_info.mcu_2_mshc_addr = -1;
135 script_info.ata_2_mcu_addr = ata_2_mcu_ADDR_2;
136 script_info.uartsh_2_per_addr = -1;
137 script_info.shp_2_per_addr = shp_2_per_ADDR_2;
138 script_info.uart_2_per_addr = -1;
139 script_info.app_2_per_addr = -1;
140 /* Main code block info */
141 script_info.ram_code_size = RAM_CODE_SIZE_2;
142 script_info.ram_code_start_addr = RAM_CODE_START_ADDR_2;
143 script_info.mcu_start_addr = (unsigned long)sdma_code_2;
144 }
145}
146
147/* Return pc of SDMA script in SDMA halfword space according to peripheral 72/* Return pc of SDMA script in SDMA halfword space according to peripheral
148 * and transfer type */ 73 * and transfer type */
149static unsigned long get_script_pc(unsigned int peripheral_type, 74static unsigned long get_script_pc(unsigned int peripheral_type,
@@ -159,7 +84,7 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
159 case SDMA_TRAN_EMI_2_INT: 84 case SDMA_TRAN_EMI_2_INT:
160 case SDMA_TRAN_EMI_2_EMI: 85 case SDMA_TRAN_EMI_2_EMI:
161 case SDMA_TRAN_INT_2_EMI: 86 case SDMA_TRAN_INT_2_EMI:
162 res = script_info.ap_2_ap_addr; 87 res = AP_2_AP_ADDR;
163 break; 88 break;
164 } 89 }
165 break; 90 break;
@@ -169,16 +94,16 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
169 switch (transfer_type) 94 switch (transfer_type)
170 { 95 {
171 case SDMA_TRAN_EMI_2_DSP: 96 case SDMA_TRAN_EMI_2_DSP:
172 res = script_info.ap_2_bp_addr; 97 res = AP_2_BP_ADDR;
173 break; 98 break;
174 case SDMA_TRAN_DSP_2_EMI: 99 case SDMA_TRAN_DSP_2_EMI:
175 res = script_info.bp_2_ap_addr; 100 res = BP_2_AP_ADDR;
176 break; 101 break;
177 case SDMA_TRAN_DSP_2_EMI_LOOP: 102 case SDMA_TRAN_DSP_2_EMI_LOOP:
178 res = script_info.loopback_on_dsp_side_addr; 103 res = LOOPBACK_ON_DSP_SIDE_ADDR;
179 break; 104 break;
180 case SDMA_TRAN_EMI_2_DSP_LOOP: 105 case SDMA_TRAN_EMI_2_DSP_LOOP:
181 res = script_info.mcu_interrupt_only_addr; 106 res = MCU_INTERRUPT_ONLY_ADDR;
182 break; 107 break;
183 } 108 }
184 break; 109 break;
@@ -189,16 +114,16 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
189 switch (transfer_type) 114 switch (transfer_type)
190 { 115 {
191 case SDMA_TRAN_PER_2_INT: 116 case SDMA_TRAN_PER_2_INT:
192 res = script_info.firi_2_per_addr; 117 res = FIRI_2_PER_ADDR;
193 break; 118 break;
194 case SDMA_TRAN_PER_2_EMI: 119 case SDMA_TRAN_PER_2_EMI:
195 res = script_info.firi_2_mcu_addr; 120 res = FIRI_2_MCU_ADDR;
196 break; 121 break;
197 case SDMA_TRAN_INT_2_PER: 122 case SDMA_TRAN_INT_2_PER:
198 res = script_info.per_2_firi_addr; 123 res = PER_2_FIRI_ADDR;
199 break; 124 break;
200 case SDMA_TRAN_EMI_2_PER: 125 case SDMA_TRAN_EMI_2_PER:
201 res = script_info.mcu_2_firi_addr; 126 res = MCU_2_FIRI_ADDR;
202 break; 127 break;
203 } 128 }
204 break; 129 break;
@@ -209,16 +134,16 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
209 switch (transfer_type) 134 switch (transfer_type)
210 { 135 {
211 case SDMA_TRAN_PER_2_INT: 136 case SDMA_TRAN_PER_2_INT:
212 res = script_info.uart_2_per_addr; 137 res = UART_2_PER_ADDR;
213 break; 138 break;
214 case SDMA_TRAN_PER_2_EMI: 139 case SDMA_TRAN_PER_2_EMI:
215 res = script_info.uart_2_mcu_addr; 140 res = UART_2_MCU_ADDR;
216 break; 141 break;
217 case SDMA_TRAN_INT_2_PER: 142 case SDMA_TRAN_INT_2_PER:
218 res = script_info.per_2_app_addr; 143 res = PER_2_APP_ADDR;
219 break; 144 break;
220 case SDMA_TRAN_EMI_2_PER: 145 case SDMA_TRAN_EMI_2_PER:
221 res = script_info.mcu_2_app_addr; 146 res = MCU_2_APP_ADDR;
222 break; 147 break;
223 } 148 }
224 break; 149 break;
@@ -229,16 +154,16 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
229 switch (transfer_type) 154 switch (transfer_type)
230 { 155 {
231 case SDMA_TRAN_PER_2_INT: 156 case SDMA_TRAN_PER_2_INT:
232 res = script_info.uartsh_2_per_addr; 157 res = UARTSH_2_PER_ADDR;
233 break; 158 break;
234 case SDMA_TRAN_PER_2_EMI: 159 case SDMA_TRAN_PER_2_EMI:
235 res = script_info.uartsh_2_mcu_addr; 160 res = UARTSH_2_MCU_ADDR;
236 break; 161 break;
237 case SDMA_TRAN_INT_2_PER: 162 case SDMA_TRAN_INT_2_PER:
238 res = script_info.per_2_shp_addr; 163 res = PER_2_SHP_ADDR;
239 break; 164 break;
240 case SDMA_TRAN_EMI_2_PER: 165 case SDMA_TRAN_EMI_2_PER:
241 res = script_info.mcu_2_shp_addr; 166 res = MCU_2_SHP_ADDR;
242 break; 167 break;
243 } 168 }
244 break; 169 break;
@@ -248,10 +173,10 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
248 switch (transfer_type) 173 switch (transfer_type)
249 { 174 {
250 case SDMA_TRAN_PER_2_EMI: 175 case SDMA_TRAN_PER_2_EMI:
251 res = script_info.ata_2_mcu_addr; 176 res = ATA_2_MCU_ADDR;
252 break; 177 break;
253 case SDMA_TRAN_EMI_2_PER: 178 case SDMA_TRAN_EMI_2_PER:
254 res = script_info.mcu_2_ata_addr; 179 res = MCU_2_ATA_ADDR;
255 break; 180 break;
256 } 181 }
257 break; 182 break;
@@ -262,16 +187,16 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
262 switch (transfer_type) 187 switch (transfer_type)
263 { 188 {
264 case SDMA_TRAN_PER_2_INT: 189 case SDMA_TRAN_PER_2_INT:
265 res = script_info.app_2_per_addr; 190 res = APP_2_PER_ADDR;
266 break; 191 break;
267 case SDMA_TRAN_PER_2_EMI: 192 case SDMA_TRAN_PER_2_EMI:
268 res = script_info.app_2_mcu_addr; 193 res = APP_2_MCU_ADDR;
269 break; 194 break;
270 case SDMA_TRAN_INT_2_PER: 195 case SDMA_TRAN_INT_2_PER:
271 res = script_info.per_2_app_addr; 196 res = PER_2_APP_ADDR;
272 break; 197 break;
273 case SDMA_TRAN_EMI_2_PER: 198 case SDMA_TRAN_EMI_2_PER:
274 res = script_info.mcu_2_app_addr; 199 res = MCU_2_APP_ADDR;
275 break; 200 break;
276 } 201 }
277 break; 202 break;
@@ -285,16 +210,16 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
285 switch (transfer_type) 210 switch (transfer_type)
286 { 211 {
287 case SDMA_TRAN_PER_2_INT: 212 case SDMA_TRAN_PER_2_INT:
288 res = script_info.shp_2_per_addr; 213 res = SHP_2_PER_ADDR;
289 break; 214 break;
290 case SDMA_TRAN_PER_2_EMI: 215 case SDMA_TRAN_PER_2_EMI:
291 res = script_info.shp_2_mcu_addr; 216 res = SHP_2_MCU_ADDR;
292 break; 217 break;
293 case SDMA_TRAN_INT_2_PER: 218 case SDMA_TRAN_INT_2_PER:
294 res = script_info.per_2_shp_addr; 219 res = PER_2_SHP_ADDR;
295 break; 220 break;
296 case SDMA_TRAN_EMI_2_PER: 221 case SDMA_TRAN_EMI_2_PER:
297 res = script_info.mcu_2_shp_addr; 222 res = MCU_2_SHP_ADDR;
298 break; 223 break;
299 } 224 }
300 break; 225 break;
@@ -303,10 +228,10 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
303 switch (transfer_type) 228 switch (transfer_type)
304 { 229 {
305 case SDMA_TRAN_PER_2_EMI: 230 case SDMA_TRAN_PER_2_EMI:
306 res = script_info.mshc_2_mcu_addr; 231 res = MSHC_2_MCU_ADDR;
307 break; 232 break;
308 case SDMA_TRAN_EMI_2_PER: 233 case SDMA_TRAN_EMI_2_PER:
309 res = script_info.mcu_2_mshc_addr; 234 res = MCU_2_MSHC_ADDR;
310 break; 235 break;
311 } 236 }
312 break; 237 break;
@@ -315,7 +240,7 @@ static unsigned long get_script_pc(unsigned int peripheral_type,
315 switch (transfer_type) 240 switch (transfer_type)
316 { 241 {
317 case SDMA_TRAN_PER_2_EMI: 242 case SDMA_TRAN_PER_2_EMI:
318 res = script_info.dptc_dvfs_addr; 243 res = DPTC_DVFS_ADDR;
319 break; 244 break;
320 } 245 }
321 break; 246 break;
@@ -511,8 +436,6 @@ void INIT_ATTR sdma_init(void)
511 SDMA_RESET |= SDMA_RESET_RESET; 436 SDMA_RESET |= SDMA_RESET_RESET;
512 while (SDMA_RESET & SDMA_RESET_RESET); 437 while (SDMA_RESET & SDMA_RESET_RESET);
513 438
514 init_script_info();
515
516 /* No channel enabled, all priorities 0 */ 439 /* No channel enabled, all priorities 0 */
517 for (i = 0; i < CH_NUM; i++) 440 for (i = 0; i < CH_NUM; i++)
518 { 441 {
@@ -561,9 +484,9 @@ void INIT_ATTR sdma_init(void)
561 set_buffer_descriptor(&c0_buffer_desc.bd, 484 set_buffer_descriptor(&c0_buffer_desc.bd,
562 C0_SETPM, 485 C0_SETPM,
563 BD_DONE | BD_WRAP | BD_EXTD, 486 BD_DONE | BD_WRAP | BD_EXTD,
564 script_info.ram_code_size, 487 RAM_CODE_SIZE,
565 (void *)addr_virt_to_phys(script_info.mcu_start_addr), 488 (void *)addr_virt_to_phys(MCU_START_ADDR),
566 (void *)(unsigned long)script_info.ram_code_start_addr); 489 (void *)RAM_CODE_START_ADDR);
567 490
568 SDMA_HSTART = 1ul; 491 SDMA_HSTART = 1ul;
569 sdma_channel_wait_nonblocking(0); 492 sdma_channel_wait_nonblocking(0);
diff --git a/firmware/target/arm/imx31/sdma_script_code.h b/firmware/target/arm/imx31/sdma_script_code.h
index 9a5f4933dd..82826e0bce 100644
--- a/firmware/target/arm/imx31/sdma_script_code.h
+++ b/firmware/target/arm/imx31/sdma_script_code.h
@@ -24,568 +24,10 @@
24 * Copyright 2004-2008 Freescale Semiconductor, Inc. All Rights Reserved. 24 * Copyright 2004-2008 Freescale Semiconductor, Inc. All Rights Reserved.
25 */ 25 */
26 26
27/* This header contains both versions 1 and 2 of SDMA code */
28
29#ifndef __SDMA_SCRIPT_CODE_H__ 27#ifndef __SDMA_SCRIPT_CODE_H__
30#define __SDMA_SCRIPT_CODE_H__ 28#define __SDMA_SCRIPT_CODE_H__
31/*!
32* Following define start address of start script
33*/
34#define start_ADDR_1 0
35/*!
36* Following define size of start script
37*/
38#define start_SIZE_1 21
39
40/*!
41* Following define start address of core script
42*/
43#define core_ADDR_1 80
44/*!
45* Following define size of core script
46*/
47#define core_SIZE_1 152
48
49/*!
50* Following define start address of common script
51*/
52#define common_ADDR_1 232
53/*!
54* Following define size of common script
55*/
56#define common_SIZE_1 191
57
58/*!
59* Following define start address of burst_copy script
60*/
61#define burst_copy_ADDR_1 423
62/*!
63* Following define size of burst_copy script
64*/
65#define burst_copy_SIZE_1 87
66
67/*!
68* Following define start address of dsp_2_burst script
69*/
70#define dsp_2_burst_ADDR_1 510
71/*!
72* Following define size of dsp_2_burst script
73*/
74#define dsp_2_burst_SIZE_1 24
75
76/*!
77* Following define start address of burst_2_dsp script
78*/
79#define burst_2_dsp_ADDR_1 534
80/*!
81* Following define size of burst_2_dsp script
82*/
83#define burst_2_dsp_SIZE_1 24
84
85/*!
86* Following define start address of dsp_copy script
87*/
88#define dsp_copy_ADDR_1 558
89/*!
90* Following define size of dsp_copy script
91*/
92#define dsp_copy_SIZE_1 86
93
94/*!
95* Following define start address of mcu_2_mcu script
96*/
97#define mcu_2_mcu_ADDR_1 644
98/*!
99* Following define size of mcu_2_mcu script
100*/
101#define mcu_2_mcu_SIZE_1 79
102
103/*!
104* Following define start address of mcu_2_per script
105*/
106#define mcu_2_per_ADDR_1 723
107/*!
108* Following define size of mcu_2_per script
109*/
110#define mcu_2_per_SIZE_1 88
111
112/*!
113* Following define start address of test script
114*/
115#define test_ADDR_1 811
116/*!
117* Following define size of test script
118*/
119#define test_SIZE_1 63
120
121/*!
122* Following define start address of mcu_2_dsp script
123*/
124#define mcu_2_dsp_ADDR_1 874
125/*!
126* Following define size of mcu_2_dsp script
127*/
128#define mcu_2_dsp_SIZE_1 30
129
130/*!
131* Following define start address of mcu_2_dsp_2buf script
132*/
133#define mcu_2_dsp_2buf_ADDR_1 904
134/*!
135* Following define size of mcu_2_dsp_2buf script
136*/
137#define mcu_2_dsp_2buf_SIZE_1 113
138
139/*!
140* Following define start address of dsp_2_mcu script
141*/
142#define dsp_2_mcu_ADDR_1 1017
143/*!
144* Following define size of dsp_2_mcu script
145*/
146#define dsp_2_mcu_SIZE_1 30
147
148/*!
149* Following define start address of dsp_2_mcu_2buf script
150*/
151#define dsp_2_mcu_2buf_ADDR_1 1047
152/*!
153* Following define size of dsp_2_mcu_2buf script
154*/
155#define dsp_2_mcu_2buf_SIZE_1 113
156
157/*!
158* Following define start address of dsp_2_dsp script
159*/
160#define dsp_2_dsp_ADDR_1 1160
161/*!
162* Following define size of dsp_2_dsp script
163*/
164#define dsp_2_dsp_SIZE_1 64
165
166/*!
167* Following define start address of per_2_mcu script
168*/
169#define per_2_mcu_ADDR_1 1224
170/*!
171* Following define size of per_2_mcu script
172*/
173#define per_2_mcu_SIZE_1 121
174
175/*!
176* Following define start address of dsp_2_per_2buf script
177*/
178#define dsp_2_per_2buf_ADDR_1 1345
179/*!
180* Following define size of dsp_2_per_2buf script
181*/
182#define dsp_2_per_2buf_SIZE_1 164
183
184/*!
185* Following define start address of per_2_dsp_2buf script
186*/
187#define per_2_dsp_2buf_ADDR_1 1509
188/*!
189* Following define size of per_2_dsp_2buf script
190*/
191#define per_2_dsp_2buf_SIZE_1 168
192
193/*!
194* Following define start address of per_2_per script
195*/
196#define per_2_per_ADDR_1 1677
197/*!
198* Following define size of per_2_per script
199*/
200#define per_2_per_SIZE_1 67
201
202/*!
203* Following define start address of error_dsp script
204*/
205#define error_dsp_ADDR_1 1744
206/*!
207* Following define size of error_dsp script
208*/
209#define error_dsp_SIZE_1 34
210
211/*!
212* Following define start address of ap_2_ap script
213*/
214#define ap_2_ap_ADDR_1 6144
215/*!
216* Following define size of ap_2_ap script
217*/
218#define ap_2_ap_SIZE_1 294
219 29
220/*! 30/* REV 2 (for i.MX system revision > 1.0) */
221* Following define start address of app_2_mcu script
222*/
223#define app_2_mcu_ADDR_1 6438
224/*!
225* Following define size of app_2_mcu script
226*/
227#define app_2_mcu_SIZE_1 101
228
229/*!
230* Following define start address of ata_2_mcu script
231*/
232#define ata_2_mcu_ADDR_1 6539
233/*!
234* Following define size of ata_2_mcu script
235*/
236#define ata_2_mcu_SIZE_1 110
237
238/*!
239* Following define start address of dptc_dvfs script
240*/
241#define dptc_dvfs_ADDR_1 6649
242/*!
243* Following define size of dptc_dvfs script
244*/
245#define dptc_dvfs_SIZE_1 274
246
247/*!
248* Following define start address of error script
249*/
250#define error_ADDR_1 6923
251/*!
252* Following define size of error script
253*/
254#define error_SIZE_1 73
255
256/*!
257* Following define start address of firi_2_mcu script
258*/
259#define firi_2_mcu_ADDR_1 6996
260/*!
261* Following define size of firi_2_mcu script
262*/
263#define firi_2_mcu_SIZE_1 114
264
265/*!
266* Following define start address of mcu_2_app script
267*/
268#define mcu_2_app_ADDR_1 7110
269/*!
270* Following define size of mcu_2_app script
271*/
272#define mcu_2_app_SIZE_1 127
273
274/*!
275* Following define start address of mcu_2_ata script
276*/
277#define mcu_2_ata_ADDR_1 7237
278/*!
279* Following define size of mcu_2_ata script
280*/
281#define mcu_2_ata_SIZE_1 87
282
283/*!
284* Following define start address of mcu_2_firi script
285*/
286#define mcu_2_firi_ADDR_1 7324
287/*!
288* Following define size of mcu_2_firi script
289*/
290#define mcu_2_firi_SIZE_1 77
291
292/*!
293* Following define start address of mcu_2_mshc script
294*/
295#define mcu_2_mshc_ADDR_1 7401
296/*!
297* Following define size of mcu_2_mshc script
298*/
299#define mcu_2_mshc_SIZE_1 48
300
301/*!
302* Following define start address of mcu_2_shp script
303*/
304#define mcu_2_shp_ADDR_1 7449
305/*!
306* Following define size of mcu_2_shp script
307*/
308#define mcu_2_shp_SIZE_1 123
309
310/*!
311* Following define start address of mshc_2_mcu script
312*/
313#define mshc_2_mcu_ADDR_1 7572
314/*!
315* Following define size of mshc_2_mcu script
316*/
317#define mshc_2_mcu_SIZE_1 60
318
319/*!
320* Following define start address of shp_2_mcu script
321*/
322#define shp_2_mcu_ADDR_1 7632
323/*!
324* Following define size of shp_2_mcu script
325*/
326#define shp_2_mcu_SIZE_1 101
327
328/*!
329* Following define start address of uart_2_mcu script
330*/
331#define uart_2_mcu_ADDR_1 7733
332/*!
333* Following define size of uart_2_mcu script
334*/
335#define uart_2_mcu_SIZE_1 105
336
337/*!
338* Following define start address of uartsh_2_mcu script
339*/
340#define uartsh_2_mcu_ADDR_1 7838
341/*!
342* Following define size of uartsh_2_mcu script
343*/
344#define uartsh_2_mcu_SIZE_1 98
345
346/*!
347* Following define the start address of sdma ram
348*/
349
350#define RAM_CODE_START_ADDR_1 6144
351/*!
352* Following define the size of sdma ram
353*/
354#define RAM_CODE_SIZE_1 1792
355
356/*!
357 * Code download for i.MX system revision = 1.0
358 */
359static __attribute__((aligned(4), section(".sdmacode")))
360 const short sdma_code_1[RAM_CODE_SIZE_1] =
361{
362 0xc0ec, 0x7d59, 0x0970, 0x0111, 0x5111, 0x5ad1, 0x5bd9, 0xc0fe,
363 0x5ce1, 0x7d02, 0x0200, 0x9806, 0x08ff, 0x0011, 0x28ff, 0x00bc,
364 0x05df, 0x7d4b, 0x06df, 0x7d2f, 0x6dc5, 0x6ed5, 0x5ef1, 0x0288,
365 0xd81a, 0x9854, 0x0b04, 0x00d3, 0x7d20, 0x06a5, 0x3e03, 0x3d03,
366 0x03a5, 0x3b03, 0x008b, 0x058b, 0x7802, 0x63d8, 0x0000, 0x7e72,
367 0x63ff, 0x7e70, 0x02a5, 0x008a, 0x4e00, 0x7d01, 0x983d, 0x6dcf,
368 0x6edf, 0x0015, 0x0015, 0x7802, 0x63d8, 0x0000, 0x7e63, 0x63ff,
369 0x7e61, 0x3a03, 0x008a, 0x6dcd, 0x6edd, 0x7801, 0x63d8, 0x7e5a,
370 0x63ff, 0x7e58, 0x0006, 0x6dc5, 0x6e07, 0x5ef1, 0x0288, 0xd8f7,
371 0x7e02, 0x7f04, 0x9854, 0x0007, 0x68cc, 0x6b28, 0x54e1, 0x0089,
372 0xdb13, 0x0188, 0x5ce1, 0x9854, 0x52d1, 0x53d9, 0x54e1, 0xc10d,
373 0x7dad, 0x0200, 0x9800, 0x0200, 0x9800, 0x06df, 0x7d06, 0x6d23,
374 0x6ed5, 0x5ef1, 0x0288, 0xd8cd, 0x9854, 0x5ef1, 0x6e07, 0x6d03,
375 0x0b04, 0x00d3, 0x7d59, 0x06a5, 0x3e03, 0x3d03, 0x4d00, 0x7d09,
376 0x03a5, 0x00a3, 0x0588, 0x008b, 0xd8c9, 0x7ed8, 0x620c, 0x7ed6,
377 0x008d, 0x4e00, 0x7c25, 0x0a20, 0x00da, 0x7c22, 0x6503, 0x3d1f,
378 0x02a5, 0x00a2, 0x0215, 0x0215, 0x6a18, 0x6a28, 0x7fc7, 0x0a20,
379 0x0b08, 0x00da, 0x7c06, 0x6b18, 0x6b28, 0x7fc0, 0x0000, 0x2020,
380 0x9889, 0x0688, 0x0015, 0x0015, 0x6818, 0x6828, 0x7fb7, 0x98c2,
381 0x0007, 0x6a0c, 0x54e1, 0x0089, 0xdb0f, 0x0188, 0x5ce1, 0x9854,
382 0x0b04, 0x00d3, 0x7d21, 0x0389, 0x1b12, 0x048b, 0x0688, 0x0015,
383 0x0015, 0x0588, 0x038c, 0x0a08, 0x05da, 0x008d, 0x7c01, 0x008a,
384 0x05a0, 0x7803, 0x620b, 0x5a03, 0x1b01, 0x7e98, 0x008b, 0x00a4,
385 0x038c, 0x7803, 0x5203, 0x6a0b, 0x1b01, 0x6a28, 0x7f8f, 0x0000,
386 0x4d00, 0x7ce8, 0x008e, 0x3803, 0xd8c9, 0x7e88, 0x620c, 0x7e86,
387 0x9854, 0x7802, 0x6209, 0x6a29, 0x0006, 0x3e03, 0x4e00, 0x7d11,
388 0x0b04, 0x03a6, 0x02db, 0x7d01, 0x038a, 0x02a3, 0x048a, 0x008b,
389 0x7802, 0x6329, 0x6bc8, 0x7ebc, 0x63c8, 0x7ebc, 0x008c, 0x4800,
390 0x7d15, 0x0488, 0x0015, 0x0015, 0x6edf, 0x7803, 0x632b, 0x6bc8,
391 0x0000, 0x7eae, 0x63c8, 0x7eae, 0x008c, 0x3803, 0x6edd, 0x7803,
392 0x6329, 0x6bc8, 0x0000, 0x7ea4, 0x63c8, 0x7ea4, 0x0006, 0x3d03,
393 0x4d00, 0x7d0e, 0x0b04, 0x03a5, 0x02db, 0x7d01, 0x038a, 0x02a3,
394 0x048a, 0x008b, 0x7802, 0x63c8, 0x6b09, 0x7e1e, 0x7f1e, 0x008c,
395 0x0488, 0x0015, 0x0015, 0x6dcf, 0x0288, 0x008a, 0x0d08, 0x02dd,
396 0x7c01, 0x008d, 0x7802, 0x63c8, 0x6b0b, 0x7e0e, 0x6b28, 0x7f0d,
397 0x0000, 0x02dd, 0x7c02, 0x2208, 0x990d, 0x008c, 0x3803, 0x65c0,
398 0x6dc5, 0x7802, 0x63c8, 0x6b09, 0x6b28, 0x0006, 0x0870, 0x0011,
399 0x5010, 0xc0ec, 0x7d5e, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8,
400 0x7d02, 0x0200, 0x992c, 0x6ec3, 0x6d07, 0x5df0, 0x0dff, 0x0511,
401 0x1dff, 0x05bc, 0x4d00, 0x7d44, 0x0b70, 0x0311, 0x522b, 0x5313,
402 0x02b9, 0x4a00, 0x7c04, 0x6a28, 0x7f3a, 0x0400, 0x993c, 0x008f,
403 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x0a03, 0x0212, 0x02bc, 0x0210,
404 0x4a00, 0x7d1c, 0x4a02, 0x7d20, 0x4a01, 0x7d23, 0x0b70, 0x0311,
405 0x53eb, 0x62c8, 0x7e24, 0x0360, 0x7d02, 0x0210, 0x0212, 0x6a09,
406 0x7f1e, 0x0212, 0x6a09, 0x7f1b, 0x0212, 0x6a09, 0x7f18, 0x2003,
407 0x4800, 0x7cef, 0x0b70, 0x0311, 0x5313, 0x997d, 0x0015, 0x0015,
408 0x7802, 0x62c8, 0x6a0b, 0x997c, 0x0015, 0x7802, 0x62c8, 0x6a0a,
409 0x997c, 0x7802, 0x62c8, 0x6a09, 0x7c02, 0x0000, 0x993a, 0xdb13,
410 0x6a28, 0x7ffd, 0x008b, 0x52c3, 0x53cb, 0xc10d, 0x7da5, 0x0200,
411 0x992c, 0x0200, 0x9929, 0xc19d, 0xc0ec, 0x7d69, 0x0c70, 0x0411,
412 0x5414, 0x5ac4, 0x028c, 0x58da, 0x5efa, 0xc0fe, 0x56fa, 0x7d02,
413 0x0200, 0x9994, 0x6d07, 0x5bca, 0x5cd2, 0x0bff, 0x0311, 0x1bff,
414 0x04bb, 0x0415, 0x53da, 0x4c00, 0x7d47, 0x0a70, 0x0211, 0x552a,
415 0x5212, 0x008d, 0x00bb, 0x4800, 0x7c07, 0x05b9, 0x4d00, 0x7c13,
416 0x6928, 0x7f2d, 0x0400, 0x99a5, 0x008f, 0x0015, 0x04d8, 0x7d01,
417 0x008c, 0x04a0, 0x0015, 0x7802, 0x55c6, 0x6d0b, 0x7e29, 0x6d28,
418 0x7f1e, 0x0000, 0x99a3, 0x1e20, 0x5506, 0x2620, 0x008d, 0x0560,
419 0x7c08, 0x065f, 0x55c6, 0x063f, 0x7e1b, 0x6d0a, 0x7f10, 0x4c00,
420 0x7d1b, 0x04d8, 0x7d02, 0x008c, 0x0020, 0x04a0, 0x0015, 0x7802,
421 0x55c6, 0x6d0b, 0x7e0d, 0x6d28, 0x7f02, 0x0000, 0x99ec, 0x0007,
422 0x680c, 0x6d0c, 0x6507, 0x6d07, 0x6d2b, 0x6d28, 0x0007, 0x680c,
423 0x0007, 0x54d2, 0x0454, 0x99ef, 0x6928, 0x7ff1, 0x54d2, 0x008a,
424 0x52c0, 0x53c8, 0xc10d, 0x0288, 0x7d9f, 0x0200, 0x9994, 0x0200,
425 0x998c, 0xc0ec, 0x7d72, 0x0800, 0x0970, 0x0111, 0x5111, 0x5ac1,
426 0x5bc9, 0x028e, 0xc0fe, 0x068a, 0x7c6a, 0x5dd9, 0x5ce1, 0x0bff,
427 0x0311, 0x1bff, 0x03bc, 0x5bd1, 0x1a5c, 0x6ac3, 0x63c8, 0x0363,
428 0x7c05, 0x036f, 0x7d27, 0x0374, 0x7c7a, 0x9a71, 0xdb04, 0x3c06,
429 0x4c00, 0x7df7, 0x028f, 0x1a04, 0x6a23, 0x620b, 0x6f23, 0x301f,
430 0x00aa, 0x0462, 0x7c04, 0x4a00, 0x7d0b, 0x2001, 0x9a30, 0x048a,
431 0x620b, 0x2201, 0x1c01, 0x1801, 0x02dc, 0x7d02, 0x301f, 0x00aa,
432 0x048f, 0x1c04, 0x6c07, 0x0488, 0x3c1f, 0x6c2b, 0x0045, 0x028e,
433 0x1a5c, 0x9a11, 0x058f, 0x1d0c, 0x6d23, 0x650b, 0x007d, 0x7c01,
434 0x1d08, 0x007c, 0x7c01, 0x1d04, 0x6d23, 0x650b, 0x0488, 0x3c1f,
435 0x0417, 0x0417, 0x0417, 0x0417, 0x059c, 0x6d23, 0x028e, 0x1a34,
436 0x6ad7, 0x0488, 0x0804, 0x7802, 0x650b, 0x6dc8, 0x008c, 0x1a28,
437 0x6ad7, 0x63c8, 0x034c, 0x6bc8, 0x54d1, 0x4c00, 0x7d06, 0x0065,
438 0x7c02, 0x0101, 0x0025, 0x0400, 0x9a0d, 0x52c1, 0x53c9, 0x54e1,
439 0x0453, 0xc10d, 0x7d95, 0x0200, 0x9a00, 0x0200, 0x99f9, 0x0200,
440 0x9a00, 0x55d9, 0x6d07, 0x54d1, 0x058a, 0x2508, 0x6dc7, 0x0373,
441 0x7c03, 0x65c8, 0x6d0b, 0x2408, 0x0372, 0x7c04, 0x65c8, 0x6d0b,
442 0x2408, 0x9a86, 0x6cce, 0x65c8, 0x6d0a, 0x2404, 0x6d28, 0x6507,
443 0x5dd9, 0x5cd1, 0x6ad7, 0x6ae3, 0x63c8, 0x0334, 0x6bc8, 0x0370,
444 0x7ca9, 0x0c60, 0x0411, 0x04bb, 0x4c00, 0x7da4, 0x0410, 0x1c30,
445 0x0410, 0x04bb, 0x046d, 0x7d0a, 0x047d, 0x7c03, 0x047c, 0x7c01,
446 0x9a3a, 0x003b, 0x003a, 0x0039, 0x0058, 0x9ab5, 0x047d, 0x7d03,
447 0x047c, 0x7d01, 0x9a3a, 0x005b, 0xdaf9, 0x1d18, 0x6d23, 0x650b,
448 0x0510, 0x003a, 0x0039, 0x0038, 0x00ad, 0xdb04, 0x0c30, 0x0410,
449 0x04bb, 0x003c, 0x003d, 0x00ac, 0xdaf9, 0x007b, 0x7c04, 0x003d,
450 0x003c, 0x1d0c, 0x9ad6, 0x048f, 0x1c14, 0x6c23, 0x640b, 0x4401,
451 0x7d04, 0x005d, 0x005c, 0x1d0c, 0x9ad6, 0x0310, 0x3b30, 0x4b30,
452 0x7d01, 0x1b10, 0x0310, 0x003d, 0x003c, 0x00ab, 0x6ad7, 0x63c8,
453 0x6d23, 0x650b, 0x0560, 0x7d03, 0x005e, 0xdaed, 0x9a3a, 0x003e,
454 0x0c80, 0x0410, 0x0394, 0xdaed, 0x640b, 0x037f, 0x7d02, 0x1a14,
455 0x9aea, 0x1a0c, 0x6ad7, 0x6cc8, 0x9a3a, 0x0c7f, 0x0410, 0x03b4,
456 0x04b8, 0x03ac, 0x640b, 0x6bc8, 0x028e, 0x1a04, 0x6ad7, 0x6cc8,
457 0x0006, 0x058f, 0x1d08, 0x6d23, 0x650b, 0x007d, 0x7c01, 0x1d38,
458 0x007c, 0x7c01, 0x1d1c, 0x0006, 0x048b, 0x042c, 0x0454, 0x042b,
459 0x6ad7, 0x6cc8, 0x0006, 0x0007, 0x684c, 0x6144, 0x9b1c, 0x0007,
460 0x68cc, 0x61d0, 0x9b1c, 0x0007, 0x680c, 0x680c, 0x6107, 0x6907,
461 0x692b, 0x6928, 0x0007, 0x680c, 0x0d70, 0x0511, 0x5515, 0x55f5,
462 0x01a5, 0x0dff, 0x0512, 0x1dff, 0x0512, 0x04bd, 0x0499, 0x0454,
463 0x0006, 0x08ff, 0x0011, 0x28ff, 0x0006, 0x038c, 0x0eff, 0x0611,
464 0x2eff, 0x03b6, 0x0006, 0x53d6, 0x0398, 0x5bd6, 0x53ee, 0x0398,
465 0x5bee, 0x0006, 0x52de, 0x53e6, 0x54ee, 0x0498, 0x0454, 0x0006,
466 0x50f6, 0x52c6, 0x53ce, 0x54d6, 0x0498, 0x0454, 0x0006, 0x6207,
467 0x0b70, 0x0311, 0x5013, 0x55f0, 0x02a5, 0x0bff, 0x0312, 0x1bff,
468 0x0312, 0x04bb, 0x049a, 0x0006, 0x1e10, 0x0870, 0x0011, 0x5010,
469 0xc0ec, 0x7d39, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02,
470 0x0200, 0x9b5b, 0x6d07, 0x5df0, 0x0dff, 0x0511, 0x1dff, 0x05bc,
471 0x4d00, 0x7d17, 0x6ec3, 0x62c8, 0x7e28, 0x0264, 0x7d08, 0x0b70,
472 0x0311, 0x522b, 0x02b9, 0x4a00, 0x7c18, 0x0400, 0x9b6a, 0x0212,
473 0x3aff, 0x008a, 0x05d8, 0x7d01, 0x008d, 0x0a10, 0x6ed3, 0x6ac8,
474 0xdba5, 0x6a28, 0x7f17, 0x0b70, 0x0311, 0x5013, 0xdbbd, 0x52c0,
475 0x53c8, 0xc10d, 0x7dd0, 0x0200, 0x9b5b, 0x008f, 0x00d5, 0x7d01,
476 0x008d, 0xdba5, 0x9b68, 0x0200, 0x9b58, 0x0007, 0x68cc, 0x6a28,
477 0x7f01, 0x9ba3, 0x0007, 0x6a0c, 0x6a0c, 0x6207, 0x6a07, 0x6a2b,
478 0x6a28, 0x0007, 0x680c, 0x0454, 0x9b81, 0x05a0, 0x1e08, 0x6ec3,
479 0x0388, 0x3b03, 0x0015, 0x0015, 0x7802, 0x62c8, 0x6a0b, 0x7ee5,
480 0x6a28, 0x7fe8, 0x0000, 0x6ec1, 0x008b, 0x7802, 0x62c8, 0x6a09,
481 0x7edc, 0x6a28, 0x7fdf, 0x2608, 0x0006, 0x55f0, 0x6207, 0x02a5,
482 0x0dff, 0x0511, 0x1dff, 0x04b5, 0x049a, 0x0006, 0x0870, 0x0011,
483 0x5010, 0xc0ec, 0x7d78, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8,
484 0x7d02, 0x0200, 0x9bcc, 0x6d03, 0x6ed3, 0x0dff, 0x0511, 0x1dff,
485 0x05bc, 0x5df8, 0x4d00, 0x7d5e, 0x0b70, 0x0311, 0x522b, 0x5313,
486 0x02b9, 0x4a00, 0x7c04, 0x62ff, 0x7e3f, 0x0400, 0x9bdc, 0x008f,
487 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x5ddb, 0x0d03, 0x0512, 0x05bc,
488 0x0510, 0x5dd3, 0x4d00, 0x7d27, 0x4d02, 0x7d20, 0x4d01, 0x7d1a,
489 0x0b70, 0x0311, 0x53eb, 0x0360, 0x7d05, 0x6509, 0x7e25, 0x620a,
490 0x7e23, 0x9c06, 0x620a, 0x7e20, 0x6509, 0x7e1e, 0x0512, 0x0512,
491 0x02ad, 0x6ac8, 0x7f19, 0x2003, 0x4800, 0x7ced, 0x0b70, 0x0311,
492 0x5313, 0x9c21, 0x7802, 0x6209, 0x6ac8, 0x9c20, 0x0015, 0x7802,
493 0x620a, 0x6ac8, 0x9c20, 0x0015, 0x0015, 0x7802, 0x620b, 0x6ac8,
494 0x7c03, 0x0000, 0x55db, 0x9bda, 0x0007, 0x68cc, 0x680c, 0x55d3,
495 0x4d00, 0x7d03, 0x4d02, 0x7d02, 0x9c2f, 0x0017, 0x0017, 0x55db,
496 0x009d, 0x55fb, 0x05a0, 0x08ff, 0x0011, 0x18ff, 0x0010, 0x04b8,
497 0x04ad, 0x0454, 0x62ff, 0x7ee8, 0x008b, 0x52c0, 0x53c8, 0xc10d,
498 0x7d8b, 0x0200, 0x9bcc, 0x0200, 0x9bc9, 0xc19d, 0xc0ec, 0x7d52,
499 0x0c70, 0x0411, 0x5414, 0x5ac4, 0x028c, 0x58da, 0x5efa, 0xc0fe,
500 0x56fa, 0x7d02, 0x0200, 0x9c4e, 0x6d03, 0x5bca, 0x5cd2, 0x0bff,
501 0x0311, 0x1bff, 0x04bb, 0x0415, 0x53da, 0x0a70, 0x0211, 0x4c00,
502 0x7d28, 0x552a, 0x05bb, 0x4d00, 0x7c02, 0x0400, 0x9c61, 0x4c01,
503 0x7d0f, 0x008f, 0x0015, 0x04d8, 0x7d01, 0x008c, 0x0020, 0x04a0,
504 0x0015, 0x7802, 0x650b, 0x5d06, 0x0000, 0x7e0c, 0x7f0d, 0x9c5f,
505 0x650a, 0x7e08, 0x008d, 0x0011, 0x0010, 0x05a8, 0x065f, 0x5d06,
506 0x063f, 0x7f02, 0x0007, 0x680c, 0x0007, 0x5012, 0x54d0, 0x0454,
507 0x9c8b, 0x5012, 0x54d0, 0x0473, 0x7c06, 0x552a, 0x05b9, 0x4d00,
508 0x7c02, 0x0400, 0x9c8d, 0x52c0, 0x53c8, 0xc10d, 0x0288, 0x7db6,
509 0x0200, 0x9c4e, 0x0200, 0x9c46, 0x0870, 0x0011, 0x5010, 0xc0ec,
510 0x7d46, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200,
511 0x9ca2, 0x0b70, 0x0311, 0x6ed3, 0x6d03, 0x0dff, 0x0511, 0x1dff,
512 0x05bc, 0x4d00, 0x7d2b, 0x522b, 0x02b9, 0x4a00, 0x7c04, 0x62c8,
513 0x7e1f, 0x0400, 0x9cb3, 0x008f, 0x00d5, 0x7d01, 0x008d, 0x05a0,
514 0x0060, 0x7c05, 0x6edd, 0x6209, 0x7e16, 0x6ac8, 0x7f11, 0x0015,
515 0x0060, 0x7c05, 0x6ede, 0x620a, 0x7e0e, 0x6ac8, 0x7f09, 0x6edf,
516 0x0015, 0x7802, 0x620b, 0x6ac8, 0x0000, 0x7e05, 0x7f01, 0x9cb1,
517 0x0007, 0x68cc, 0x9cdd, 0x0007, 0x6a0c, 0x0454, 0x62c8, 0x7ef8,
518 0x5013, 0x52c0, 0x53c8, 0xc10d, 0x7dbd, 0x0200, 0x9ca2, 0x0200,
519 0x9c9f, 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d29, 0x5010, 0x5ac0,
520 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9cf0, 0x0870, 0x0011,
521 0x6d03, 0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d12, 0x5228,
522 0x02b9, 0x4a00, 0x7c02, 0x0400, 0x9cff, 0x620b, 0x7e06, 0x5a06,
523 0x7f06, 0x0000, 0x2504, 0x7d05, 0x9cff, 0x0007, 0x680c, 0x0007,
524 0x0454, 0x5010, 0x52c0, 0xc10d, 0x7ddb, 0x0200, 0x9cf0, 0x0200,
525 0x9cec, 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d74, 0x5010, 0x5ac0,
526 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9d20, 0x6d03,
527 0x0d03, 0x0512, 0x05bc, 0x0510, 0x5dd0, 0x0dff, 0x0511, 0x1dff,
528 0x05bc, 0x5df8, 0x4d00, 0x7d57, 0x0a70, 0x0211, 0x532a, 0x5212,
529 0x03b9, 0x4b00, 0x7c02, 0x0400, 0x9d34, 0x008f, 0x05d8, 0x7d01,
530 0x008d, 0x05a0, 0x5dda, 0x55d2, 0x4d00, 0x7d27, 0x4d02, 0x7d20,
531 0x4d01, 0x7d1a, 0x0a70, 0x0211, 0x52ea, 0x0260, 0x7d05, 0x6509,
532 0x7e25, 0x630a, 0x7e23, 0x9d58, 0x630a, 0x7e20, 0x6509, 0x7e1e,
533 0x0512, 0x0512, 0x03ad, 0x5b06, 0x7f19, 0x2003, 0x4800, 0x7ced,
534 0x0a70, 0x0211, 0x5212, 0x9d73, 0x7802, 0x6309, 0x5b06, 0x9d72,
535 0x0015, 0x7802, 0x630a, 0x5b06, 0x9d72, 0x0015, 0x0015, 0x7802,
536 0x630b, 0x5b06, 0x7c03, 0x55da, 0x0000, 0x9d32, 0x0007, 0x680c,
537 0x55d2, 0x4d00, 0x7d03, 0x4d02, 0x7d02, 0x9d80, 0x0017, 0x0017,
538 0x55da, 0x009d, 0x55fa, 0x05a0, 0x08ff, 0x0011, 0x18ff, 0x0010,
539 0x04b8, 0x04ad, 0x0454, 0x008a, 0x52c0, 0x53c8, 0xc10d, 0x7d90,
540 0x0200, 0x9d20, 0x0200, 0x9d1c, 0xc19d, 0x0870, 0x0011, 0xc0ec,
541 0x7d35, 0x5010, 0x5ac0, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200,
542 0x9d9b, 0x0870, 0x0011, 0x6d07, 0x0dff, 0x0511, 0x1dff, 0x05bc,
543 0x4d00, 0x7d1c, 0x5228, 0x02b9, 0x4a00, 0x7c04, 0x6928, 0x7f0b,
544 0x0400, 0x9daa, 0x5206, 0x7e10, 0x6a0b, 0x6928, 0x7f04, 0x0000,
545 0x2504, 0x7d0c, 0x9daa, 0x0007, 0x680c, 0x680c, 0x6207, 0x6a07,
546 0x6a2b, 0x6a28, 0x0007, 0x680c, 0x0007, 0x0454, 0x6928, 0x7ff3,
547 0x5010, 0x52c0, 0xc10d, 0x7dcf, 0x0200, 0x9d9b, 0x0200, 0x9d97,
548 0xc19d, 0x0870, 0x0011, 0xc0ec, 0x7d5e, 0x5010, 0x5ac0, 0x5bc8,
549 0x5ef8, 0xc0fe, 0x56f8, 0x7d02, 0x0200, 0x9dd7, 0x6d07, 0x5df0,
550 0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d44, 0x0a70, 0x0211,
551 0x532a, 0x5212, 0x03b9, 0x4b00, 0x7c04, 0x6a28, 0x7f3a, 0x0400,
552 0x9de6, 0x008f, 0x05d8, 0x7d01, 0x008d, 0x05a0, 0x0b03, 0x0312,
553 0x03bc, 0x0310, 0x4b00, 0x7d1c, 0x4b02, 0x7d20, 0x4b01, 0x7d23,
554 0x0a70, 0x0211, 0x52ea, 0x5306, 0x7e24, 0x0260, 0x7d02, 0x0310,
555 0x0312, 0x6b09, 0x7f1e, 0x0312, 0x6b09, 0x7f1b, 0x0312, 0x6b09,
556 0x7f18, 0x2003, 0x4800, 0x7cef, 0x0a70, 0x0211, 0x5212, 0x9e27,
557 0x0015, 0x0015, 0x7802, 0x5306, 0x6b0b, 0x9e26, 0x0015, 0x7802,
558 0x5306, 0x6b0a, 0x9e26, 0x7802, 0x5306, 0x6b09, 0x7c02, 0x0000,
559 0x9de4, 0xdb13, 0x6928, 0x7ffd, 0x008a, 0x52c0, 0x53c8, 0xc10d,
560 0x7da6, 0x0200, 0x9dd7, 0x0200, 0x9dd3, 0x0870, 0x0011, 0x5010,
561 0xc0ec, 0x7d5b, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe, 0x56f8, 0x7d02,
562 0x0200, 0x9e3b, 0x0b70, 0x0311, 0x6ec3, 0x6d07, 0x5df0, 0x0dff,
563 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d3d, 0x522b, 0x02b9, 0x4a00,
564 0x7c04, 0x6a28, 0x7f33, 0x0400, 0x9e4d, 0x028e, 0x1a94, 0x6ac3,
565 0x62c8, 0x0269, 0x7d1b, 0x1e94, 0x6ec3, 0x6ed3, 0x62c8, 0x0248,
566 0x6ac8, 0x2694, 0x6ec3, 0x62c8, 0x026e, 0x7d31, 0x6a09, 0x7f1e,
567 0x2501, 0x4d00, 0x7d1f, 0x028e, 0x1a98, 0x6ac3, 0x62c8, 0x6ec3,
568 0x0260, 0x7df1, 0x6a28, 0x7f12, 0xdb47, 0x9e8c, 0x6ee3, 0x008f,
569 0x2001, 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x62c8, 0x026e, 0x7d17,
570 0x6a09, 0x7f04, 0x2001, 0x7cf9, 0x0000, 0x9e4b, 0x0289, 0xdb13,
571 0x018a, 0x9e9b, 0x6a28, 0x7ffa, 0x0b70, 0x0311, 0x5013, 0x52c0,
572 0x53c8, 0xc10d, 0x7da8, 0x0200, 0x9e3b, 0x0200, 0x9e38, 0x6a28,
573 0x7fed, 0xdb47, 0x9e9b, 0x0458, 0x0454, 0x9e8c, 0xc19d, 0x0870,
574 0x0011, 0xc0ec, 0x7d54, 0x5010, 0x5ac0, 0x5bc8, 0x5ef8, 0xc0fe,
575 0x56f8, 0x7d02, 0x0200, 0x9ea5, 0x0b70, 0x0311, 0x6d07, 0x5df0,
576 0x0dff, 0x0511, 0x1dff, 0x05bc, 0x4d00, 0x7d36, 0x522b, 0x02b9,
577 0x4a00, 0x7c04, 0x6928, 0x7f2c, 0x0400, 0x9eb6, 0x028e, 0x1a94,
578 0x5202, 0x0269, 0x7d16, 0x1e94, 0x5206, 0x0248, 0x5a06, 0x2694,
579 0x5206, 0x026e, 0x7d2e, 0x6a09, 0x7f1b, 0x2501, 0x4d00, 0x7d1c,
580 0x028e, 0x1a98, 0x5202, 0x0260, 0x7df3, 0x6a28, 0x7f11, 0xdb47,
581 0x9eee, 0x008f, 0x2001, 0x00d5, 0x7d01, 0x008d, 0x05a0, 0x5206,
582 0x026e, 0x7d17, 0x6a09, 0x7f04, 0x2001, 0x7cf9, 0x0000, 0x9eb4,
583 0x0289, 0xdb13, 0x018a, 0x9efd, 0x6928, 0x7ffa, 0x0b70, 0x0311,
584 0x5013, 0x52c0, 0x53c8, 0xc10d, 0x7db0, 0x0200, 0x9ea5, 0x0200,
585 0x9ea1, 0x6a28, 0x7fed, 0xdb47, 0x9efd, 0x0458, 0x0454, 0x9eee
586};
587
588/* REV 2 */
589/*! 31/*!
590* Following define start address of signature script 32* Following define start address of signature script
591*/ 33*/
@@ -850,7 +292,7 @@ static __attribute__((aligned(4), section(".sdmacode")))
850#define RAM_CODE_SIZE_2 1292 292#define RAM_CODE_SIZE_2 1292
851 293
852/*! 294/*!
853 * Code download for i.MX system revision > 1.0 295 * Code download
854 */ 296 */
855static __attribute__((aligned(4), section(".sdmacode"))) 297static __attribute__((aligned(4), section(".sdmacode")))
856 const short sdma_code_2[RAM_CODE_SIZE_2] = 298 const short sdma_code_2[RAM_CODE_SIZE_2] =
@@ -1019,44 +461,44 @@ static __attribute__((aligned(4), section(".sdmacode")))
1019 0x9d09, 0x0458, 0x0454, 0x9cfa 461 0x9d09, 0x0458, 0x0454, 0x9cfa
1020}; 462};
1021 463
464
1022/*! 465/*!
1023 * Structure containing script addresses. 466 * SDMA script code info
1024 */ 467 */
1025struct sdma_script_start_addrs 468
1026{ 469/* script addresses in SDMA halfword space */
1027 /* SDMA code script info - in halfword SDMA memory space */ 470#define AP_2_AP_ADDR ap_2_ap_ADDR_2
1028 unsigned short ap_2_ap_addr; 471#define AP_2_BP_ADDR ap_2_bp_ADDR_2
1029 unsigned short ap_2_bp_addr; 472#define APP_2_MCU_ADDR app_2_mcu_patched_ADDR_2
1030 unsigned short bp_2_ap_addr; 473#define APP_2_PER_ADDR (-1)
1031 unsigned short loopback_on_dsp_side_addr; 474#define ATA_2_MCU_ADDR ata_2_mcu_ADDR_2
1032 unsigned short mcu_interrupt_only_addr; 475#define BP_2_AP_ADDR bp_2_ap_ADDR_2
1033 unsigned short firi_2_per_addr; 476#define DPTC_DVFS_ADDR (-1)
1034 unsigned short firi_2_mcu_addr; 477#define FIRI_2_MCU_ADDR firi_2_mcu_ADDR_2
1035 unsigned short per_2_firi_addr; 478#define FIRI_2_PER_ADDR (-1)
1036 unsigned short mcu_2_firi_addr; 479#define LOOPBACK_ON_DSP_SIDE_ADDR (-1)
1037 unsigned short uart_2_per_addr; 480#define MCU_2_APP_ADDR mcu_2_app_patched_ADDR_2
1038 unsigned short uart_2_mcu_addr; 481#define MCU_2_ATA_ADDR mcu_2_ata_ADDR_2
1039 unsigned short per_2_app_addr; 482#define MCU_2_FIRI_ADDR mcu_2_firi_ADDR_2
1040 unsigned short mcu_2_app_addr; 483#define MCU_2_MSHC_ADDR (-1)
1041 unsigned short uartsh_2_per_addr; 484#define MCU_2_SHP_ADDR mcu_2_shp_patched_ADDR_2
1042 unsigned short uartsh_2_mcu_addr; 485#define MCU_INTERRUPT_ONLY_ADDR (-1)
1043 unsigned short per_2_shp_addr; 486#define MSHC_2_MCU_ADDR (-1)
1044 unsigned short mcu_2_shp_addr; 487#define PER_2_APP_ADDR (-1)
1045 unsigned short ata_2_mcu_addr; 488#define PER_2_FIRI_ADDR (-1)
1046 unsigned short mcu_2_ata_addr; 489#define PER_2_SHP_ADDR per_2_shp_ADDR_2
1047 unsigned short app_2_per_addr; 490#define SHP_2_MCU_ADDR shp_2_mcu_patched_ADDR_2
1048 unsigned short app_2_mcu_addr; 491#define SHP_2_PER_ADDR shp_2_per_ADDR_2
1049 unsigned short shp_2_per_addr; 492#define UART_2_MCU_ADDR uart_2_mcu_patched_ADDR_2
1050 unsigned short shp_2_mcu_addr; 493#define UART_2_PER_ADDR (-1)
1051 unsigned short mshc_2_mcu_addr; 494#define UARTSH_2_MCU_ADDR uartsh_2_mcu_patched_ADDR_2
1052 unsigned short mcu_2_mshc_addr; 495#define UARTSH_2_PER_ADDR (-1)
1053 unsigned short dptc_dvfs_addr; 496
1054 /* SDMA script code info */ 497/* address where ram code starts (in SDMA halfword space) */
1055 /* address where ram code starts (in SDMA halfword space) */ 498#define RAM_CODE_START_ADDR RAM_CODE_START_ADDR_2
1056 unsigned short ram_code_start_addr; 499/* size of the ram code (in halfwords) */
1057 /* size of the ram code (in halfwords) */ 500#define RAM_CODE_SIZE RAM_CODE_SIZE_2
1058 unsigned short ram_code_size; 501/* RAM image address on AP */
1059 /* RAM image address on AP */ 502#define MCU_START_ADDR ((unsigned long)sdma_code_2)
1060 unsigned long mcu_start_addr; 503
1061};
1062#endif /*__SDMA_SCRIPT_CODE_H__ */ 504#endif /*__SDMA_SCRIPT_CODE_H__ */